Glossary

Finding terms

To search for a glossary term, enter the term in the text field of the Index tab.

To search for a term in the full text, enter the term in the text field of the Search tab, and press Enter or the pushbutton List Topics.

Displaying terms

To display a term highlighted in the list box, double-click on it or press the pushbutton Display.


-25402: Error creating/granting system table SYSLOADER.CODEPAGE <code_page>; using codepage file - SAP Documentation

Background documentation -25402: Error creating/granting system table SYSLOADER.CODEPAGE <code_page>; using codepage file

Explanation

You have executed the SET CODEPAGE command. The SYSLOADER.CODEPAGE system table could not be created, or rights to read data from the table could not be granted.

User Response

The Loader reads the CODEPAGE information directly from the CODEPAGE file. For this reason no user action is required.


SAP Library - Messages

Start Level 1 Node: Messages Messages End Level 1 Node: Messages
Start Level 2 Node: Number Ranges Number Ranges End Level 2 Node: Number Ranges
Start Level 2 Node: From -1 to -699 From -1 to -699 End Level 2 Node: From -1 to -699
Start Level 3 Node: -1: Duplicate key in index -1: Duplicate key in index End Level 3 Node: -1: Duplicate key in index
Start Level 3 Node: -8: Execution failed, parse again -8: Execution failed, parse again End Level 3 Node: -8: Execution failed, parse again
Start Level 3 Node: -20: Duplicate key -20: Duplicate key End Level 3 Node: -20: Duplicate key
Start Level 3 Node: -25: Duplicate secondary key -25: Duplicate secondary key End Level 3 Node: -25: Duplicate secondary key
Start Level 3 Node: -30: Integrity violation -30: Integrity violation End Level 3 Node: -30: Integrity violation
Start Level 3 Node: -32: View violation -32: View violation End Level 3 Node: -32: View violation
Start Level 3 Node: -35: Referential integrity violated -35: Referential integrity violated End Level 3 Node: -35: Referential integrity violated
Start Level 3 Node: -36: Foreign key integrity violated -36: Foreign key integrity violated End Level 3 Node: -36: Foreign key integrity violated
Start Level 3 Node: -40: Lock collision -40: Lock collision End Level 3 Node: -40: Lock collision
Start Level 3 Node: -50: Lock request timeout -50: Lock request timeout End Level 3 Node: -50: Lock request timeout
Start Level 3 Node: -51: Lock request timeout -51: Lock request timeout End Level 3 Node: -51: Lock request timeout
Start Level 3 Node: -54: Lock collision -54: Lock collision End Level 3 Node: -54: Lock collision
Start Level 3 Node: -60: Work rolled back -60: Work rolled back End Level 3 Node: -60: Work rolled back
Start Level 3 Node: -65: Work rolled back -65: Work rolled back End Level 3 Node: -65: Work rolled back
Start Level 3 Node: -70: Session inactivity timeout (Work rolled back) -70: Session inactivity timeout (Work rolled back) End Level 3 Node: -70: Session inactivity timeout (Work rolled back)
Start Level 3 Node: -71: Session terminated by shutdown (Work rolled back) -71: Session terminated by shutdown (Work rolled back) End Level 3 Node: -71: Session terminated by shutdown (Work rolled back)
Start Level 3 Node: -75: Too many SQL statements (Work rolled back) -75: Too many SQL statements (Work rolled back) End Level 3 Node: -75: Too many SQL statements (Work rolled back)
Start Level 3 Node: -101: SQL statement not available in this DB mode -101: SQL statement not available in this DB mode End Level 3 Node: -101: SQL statement not available in this DB mode
Start Level 3 Node: -102: SQL statement canceled -102: SQL statement canceled End Level 3 Node: -102: SQL statement canceled
Start Level 3 Node: -103: SQL statement not available for this application -103: SQL statement not available for this application End Level 3 Node: -103: SQL statement not available for this application
Start Level 3 Node: -104: DBM command impossible at this time -104: DBM command impossible at this time End Level 3 Node: -104: DBM command impossible at this time
Start Level 3 Node: -106: Table unloaded or content deleted -106: Table unloaded or content deleted End Level 3 Node: -106: Table unloaded or content deleted
Start Level 3 Node: -107: SQL statement not allowed for this instance -107: SQL statement not allowed for this instance End Level 3 Node: -107: SQL statement not allowed for this instance
Start Level 3 Node: -108: Table or index dropped or content deleted -108: Table or index dropped or content deleted End Level 3 Node: -108: Table or index dropped or content deleted
Start Level 3 Node: -111: Incompatible incremental backup -111: Incompatible incremental backup End Level 3 Node: -111: Incompatible incremental backup
Start Level 3 Node: -115: Table is read only -115: Table is read only End Level 3 Node: -115: Table is read only
Start Level 3 Node: -123: No more log to save -123: No more log to save End Level 3 Node: -123: No more log to save
Start Level 3 Node: -126: Data backup missing (backup history lost) -126: Data backup missing (backup history lost) End Level 3 Node: -126: Data backup missing (backup history lost)
Start Level 3 Node: -127: Log backup is not possible because log writing has been sw -127: Log backup is not possible because log writing has been sw End Level 3 Node: -127: Log backup is not possible because log writing has been sw
Start Level 3 Node: -128: Log backup is not possible because the log overwrite mode -128: Log backup is not possible because the log overwrite mode End Level 3 Node: -128: Log backup is not possible because the log overwrite mode
Start Level 3 Node: -530: Referential integrity violated -530: Referential integrity violated End Level 3 Node: -530: Referential integrity violated
Start Level 3 Node: -602: System error -602: System error End Level 3 Node: -602: System error
Start Level 2 Node: From -700 to -899 From -700 to -899 End Level 2 Node: From -700 to -899
Start Level 3 Node: -702: Missing variable address in SQLDA -702: Missing variable address in SQLDA End Level 3 Node: -702: Missing variable address in SQLDA
Start Level 3 Node: -703: Duplicate FETCH statement for same select in program -703: Duplicate FETCH statement for same select in program End Level 3 Node: -703: Duplicate FETCH statement for same select in program
Start Level 3 Node: -706: SQL statement too long (buffer overflow) -706: SQL statement too long (buffer overflow) End Level 3 Node: -706: SQL statement too long (buffer overflow)
Start Level 3 Node: -707: Invalid CONNECT statement syntax -707: Invalid CONNECT statement syntax End Level 3 Node: -707: Invalid CONNECT statement syntax
Start Level 3 Node: -708: SERVERDB system not available -708: SERVERDB system not available End Level 3 Node: -708: SERVERDB system not available
Start Level 3 Node: -709: Connect failed, check SERVERDB -709: Connect failed, check SERVERDB End Level 3 Node: -709: Connect failed, check SERVERDB
Start Level 3 Node: -710: Missing select PARSID -710: Missing select PARSID End Level 3 Node: -710: Missing select PARSID
Start Level 3 Node: -711: Implicit CONNECT: missing user or SERVERDB -711: Implicit CONNECT: missing user or SERVERDB End Level 3 Node: -711: Implicit CONNECT: missing user or SERVERDB
Start Level 3 Node: -712: Too many parameters, SQLMAX too small -712: Too many parameters, SQLMAX too small End Level 3 Node: -712: Too many parameters, SQLMAX too small
Start Level 3 Node: -715: Missing username or password for connect -715: Missing username or password for connect End Level 3 Node: -715: Missing username or password for connect
Start Level 3 Node: -719: Unknown LOCALSYSUSER.SYSPROFILE table -719: Unknown LOCALSYSUSER.SYSPROFILE table End Level 3 Node: -719: Unknown LOCALSYSUSER.SYSPROFILE table
Start Level 3 Node: -720: SQLCODE <no> comes from SYSPROFILE command -720: SQLCODE <no> comes from SYSPROFILE command End Level 3 Node: -720: SQLCODE <no> comes from SYSPROFILE command
Start Level 3 Node: -721: Macro not initiated, no SQLCHECK -721: Macro not initiated, no SQLCHECK End Level 3 Node: -721: Macro not initiated, no SQLCHECK
Start Level 3 Node: -724: Duplicate substructure name -724: Duplicate substructure name End Level 3 Node: -724: Duplicate substructure name
Start Level 3 Node: -729: Source code may be truncated -729: Source code may be truncated End Level 3 Node: -729: Source code may be truncated
Start Level 3 Node: -730: Nested comment not closed -730: Nested comment not closed End Level 3 Node: -730: Nested comment not closed
Start Level 3 Node: -731: Component name too long -731: Component name too long End Level 3 Node: -731: Component name too long
Start Level 3 Node: -732: Index of component out of -732: Index of component out of End Level 3 Node: -732: Index of component out of
Start Level 3 Node: -733: Variable is declared as a pointer -733: Variable is declared as a pointer End Level 3 Node: -733: Variable is declared as a pointer
Start Level 3 Node: -734: Pointer variable not allowed here -734: Pointer variable not allowed here End Level 3 Node: -734: Pointer variable not allowed here
Start Level 3 Node: -735: No syntax check for CONNECT command -735: No syntax check for CONNECT command End Level 3 Node: -735: No syntax check for CONNECT command
Start Level 3 Node: -740: Array size mismatch -740: Array size mismatch End Level 3 Node: -740: Array size mismatch
Start Level 3 Node: -743: Input string too long -743: Input string too long End Level 3 Node: -743: Input string too long
Start Level 3 Node: -750: FFETCH or ARRAY-FETCH and FETCH mix not allowed -750: FFETCH or ARRAY-FETCH and FETCH mix not allowed End Level 3 Node: -750: FFETCH or ARRAY-FETCH and FETCH mix not allowed
Start Level 3 Node: -751: Numeric input parameter overflow -751: Numeric input parameter overflow End Level 3 Node: -751: Numeric input parameter overflow
Start Level 3 Node: -752: Session already connected -752: Session already connected End Level 3 Node: -752: Session already connected
Start Level 3 Node: -753: Output parameter with CONST type -753: Output parameter with CONST type End Level 3 Node: -753: Output parameter with CONST type
Start Level 3 Node: -756: Different SQLMODEs not allowed -756: Different SQLMODEs not allowed End Level 3 Node: -756: Different SQLMODEs not allowed
Start Level 3 Node: -759: Include file produced by user -759: Include file produced by user End Level 3 Node: -759: Include file produced by user
Start Level 3 Node: -758: Include file exists on disk -758: Include file exists on disk End Level 3 Node: -758: Include file exists on disk
Start Level 3 Node: -760: Memory allocation failed -760: Memory allocation failed End Level 3 Node: -760: Memory allocation failed
Start Level 3 Node: -762: EXEC ORACLE command has been deleted -762: EXEC ORACLE command has been deleted End Level 3 Node: -762: EXEC ORACLE command has been deleted
Start Level 3 Node: -763: Variable not allowed as ARRAY -763: Variable not allowed as ARRAY End Level 3 Node: -763: Variable not allowed as ARRAY
Start Level 3 Node: -767: Unterminated C string -767: Unterminated C string End Level 3 Node: -767: Unterminated C string
Start Level 3 Node: -768: Invalid escape value -768: Invalid escape value End Level 3 Node: -768: Invalid escape value
Start Level 3 Node: -769: Pointer component not allowed -769: Pointer component not allowed End Level 3 Node: -769: Pointer component not allowed
Start Level 3 Node: -770: Macro in FETCH set SQLOPT="-B 0" -770: Macro in FETCH set SQLOPT="-B 0" End Level 3 Node: -770: Macro in FETCH set SQLOPT="-B 0"
Start Level 3 Node: -771: LONG column exists in table definition -771: LONG column exists in table definition End Level 3 Node: -771: LONG column exists in table definition
Start Level 3 Node: -772: Multibyte char set not allowed -772: Multibyte char set not allowed End Level 3 Node: -772: Multibyte char set not allowed
Start Level 3 Node: -773: Datafile open error -773: Datafile open error End Level 3 Node: -773: Datafile open error
Start Level 3 Node: -774: Datafile write error -774: Datafile write error End Level 3 Node: -774: Datafile write error
Start Level 3 Node: -775: Datafile read error -775: Datafile read error End Level 3 Node: -775: Datafile read error
Start Level 3 Node: -776: Datafile close error -776: Datafile close error End Level 3 Node: -776: Datafile close error
Start Level 3 Node: -777: Conversion from UNICODE impossible -777: Conversion from UNICODE impossible End Level 3 Node: -777: Conversion from UNICODE impossible
Start Level 3 Node: -778: Conversion to UNICODE impossible -778: Conversion to UNICODE impossible End Level 3 Node: -778: Conversion to UNICODE impossible
Start Level 3 Node: -801: Input parameter cannot be NULL value -801: Input parameter cannot be NULL value End Level 3 Node: -801: Input parameter cannot be NULL value
Start Level 3 Node: -802: Invalid numeric input parameter value -802: Invalid numeric input parameter value End Level 3 Node: -802: Invalid numeric input parameter value
Start Level 3 Node: -804: Parameter list too long -804: Parameter list too long End Level 3 Node: -804: Parameter list too long
Start Level 3 Node: -805: Program must be precompiled -805: Program must be precompiled End Level 3 Node: -805: Program must be precompiled
Start Level 3 Node: -806: DB session number not allowed -806: DB session number not allowed End Level 3 Node: -806: DB session number not allowed
Start Level 3 Node: -807: Connection down, session released -807: Connection down, session released End Level 3 Node: -807: Connection down, session released
Start Level 3 Node: -808: Not yet implemented -808: Not yet implemented End Level 3 Node: -808: Not yet implemented
Start Level 3 Node: -809: Missing indicator variable, output parameter with NULL val -809: Missing indicator variable, output parameter with NULL val End Level 3 Node: -809: Missing indicator variable, output parameter with NULL val
Start Level 3 Node: -811: Numeric output parameter overflow -811: Numeric output parameter overflow End Level 3 Node: -811: Numeric output parameter overflow
Start Level 3 Node: -812: Parameter list too short -812: Parameter list too short End Level 3 Node: -812: Parameter list too short
Start Level 3 Node: -813: SERVERDB must be restarted -813: SERVERDB must be restarted End Level 3 Node: -813: SERVERDB must be restarted
Start Level 3 Node: -814: Trace file close error -814: Trace file close error End Level 3 Node: -814: Trace file close error
Start Level 3 Node: -815: Trace file open error -815: Trace file open error End Level 3 Node: -815: Trace file open error
Start Level 3 Node: -816: Trace file write error -816: Trace file write error End Level 3 Node: -816: Trace file write error
Start Level 3 Node: -817: Incompatible data types -817: Incompatible data types End Level 3 Node: -817: Incompatible data types
Start Level 3 Node: -818: Missing macro parameter initialization -818: Missing macro parameter initialization End Level 3 Node: -818: Missing macro parameter initialization
Start Level 3 Node: -819: Parameter in SQL statement not allowed -819: Parameter in SQL statement not allowed End Level 3 Node: -819: Parameter in SQL statement not allowed
Start Level 3 Node: -820: Invalid declare statement -820: Invalid declare statement End Level 3 Node: -820: Invalid declare statement
Start Level 3 Node: -822: Invalid constant definition -822: Invalid constant definition End Level 3 Node: -822: Invalid constant definition
Start Level 3 Node: -823: Integer too large, greater than 32767 -823: Integer too large, greater than 32767 End Level 3 Node: -823: Integer too large, greater than 32767
Start Level 3 Node: -824: Statement in conflict with COMPATIBLE option -824: Statement in conflict with COMPATIBLE option End Level 3 Node: -824: Statement in conflict with COMPATIBLE option
Start Level 3 Node: -825: Duplicate field name in record -825: Duplicate field name in record End Level 3 Node: -825: Duplicate field name in record
Start Level 3 Node: -826: Duplicate statement name -826: Duplicate statement name End Level 3 Node: -826: Duplicate statement name
Start Level 3 Node: -827: Duplicate type definition -827: Duplicate type definition End Level 3 Node: -827: Duplicate type definition
Start Level 3 Node: -828: Duplicate variable name -828: Duplicate variable name End Level 3 Node: -828: Duplicate variable name
Start Level 3 Node: -829: File close error -829: File close error End Level 3 Node: -829: File close error
Start Level 3 Node: -830: File open error -830: File open error End Level 3 Node: -830: File open error
Start Level 3 Node: -831: File read error -831: File read error End Level 3 Node: -831: File read error
Start Level 3 Node: -832: File write error -832: File write error End Level 3 Node: -832: File write error
Start Level 3 Node: -833: Illegal INCLUDE position -833: Illegal INCLUDE position End Level 3 Node: -833: Illegal INCLUDE position
Start Level 3 Node: -834: INCLUDEs must not be nested -834: INCLUDEs must not be nested End Level 3 Node: -834: INCLUDEs must not be nested
Start Level 3 Node: -835: INCLUDE file open error -835: INCLUDE file open error End Level 3 Node: -835: INCLUDE file open error
Start Level 3 Node: -836: Invalid C preprocessor command -836: Invalid C preprocessor command End Level 3 Node: -836: Invalid C preprocessor command
Start Level 3 Node: -837: Data definition not allowed -837: Data definition not allowed End Level 3 Node: -837: Data definition not allowed
Start Level 3 Node: -838: Invalid declarator -838: Invalid declarator End Level 3 Node: -838: Invalid declarator
Start Level 3 Node: -839: Invalid macro value -839: Invalid macro value End Level 3 Node: -839: Invalid macro value
Start Level 3 Node: -840: Invalid numeric macro value -840: Invalid numeric macro value End Level 3 Node: -840: Invalid numeric macro value
Start Level 3 Node: -841: Invalid precompiler option -841: Invalid precompiler option End Level 3 Node: -841: Invalid precompiler option
Start Level 3 Node: -842: Parameter and indicator do not match -842: Parameter and indicator do not match End Level 3 Node: -842: Parameter and indicator do not match
Start Level 3 Node: -843: Invalid parameter name -843: Invalid parameter name End Level 3 Node: -843: Invalid parameter name
Start Level 3 Node: -844: Invalid record name -844: Invalid record name End Level 3 Node: -844: Invalid record name
Start Level 3 Node: -845: Invalid SQL statement -845: Invalid SQL statement End Level 3 Node: -845: Invalid SQL statement
Start Level 3 Node: -846: Invalid statement in section -846: Invalid statement in section End Level 3 Node: -846: Invalid statement in section
Start Level 3 Node: -847: Invalid type definition -847: Invalid type definition End Level 3 Node: -847: Invalid type definition
Start Level 3 Node: -848: Invalid unsigned integer -848: Invalid unsigned integer End Level 3 Node: -848: Invalid unsigned integer
Start Level 3 Node: -849: Invalid data definition -849: Invalid data definition End Level 3 Node: -849: Invalid data definition
Start Level 3 Node: -850: Statement termination expected -850: Statement termination expected End Level 3 Node: -850: Statement termination expected
Start Level 3 Node: -851: Missing input file name -851: Missing input file name End Level 3 Node: -851: Missing input file name
Start Level 3 Node: -852: Missing program file -852: Missing program file End Level 3 Node: -852: Missing program file
Start Level 3 Node: -853: Precompiler syntax check only -853: Precompiler syntax check only End Level 3 Node: -853: Precompiler syntax check only
Start Level 3 Node: -854: Parameters must be question marks -854: Parameters must be question marks End Level 3 Node: -854: Parameters must be question marks
Start Level 3 Node: -855: SQL variable must be an array -855: SQL variable must be an array End Level 3 Node: -855: SQL variable must be an array
Start Level 3 Node: -856: Invalid loop parameter value -856: Invalid loop parameter value End Level 3 Node: -856: Invalid loop parameter value
Start Level 3 Node: -857: Missing SERVERDB -857: Missing SERVERDB End Level 3 Node: -857: Missing SERVERDB
Start Level 3 Node: -858: Storage class not allowed -858: Storage class not allowed End Level 3 Node: -858: Storage class not allowed
Start Level 3 Node: -859: Number of columns < number_of_parameters -859: Number of columns < number_of_parameters End Level 3 Node: -859: Number of columns < number_of_parameters
Start Level 3 Node: -860: Too many constants declared -860: Too many constants declared End Level 3 Node: -860: Too many constants declared
Start Level 3 Node: -870: Too many type definitions -870: Too many type definitions End Level 3 Node: -870: Too many type definitions
Start Level 3 Node: -871: Too many variable definitions -871: Too many variable definitions End Level 3 Node: -871: Too many variable definitions
Start Level 3 Node: -872: Number of columns > number of parameters -872: Number of columns > number of parameters End Level 3 Node: -872: Number of columns > number of parameters
Start Level 3 Node: -873: Unknown constant name -873: Unknown constant name End Level 3 Node: -873: Unknown constant name
Start Level 3 Node: -874: Unknown cursor name -874: Unknown cursor name End Level 3 Node: -874: Unknown cursor name
Start Level 3 Node: -876: Unknown macro number -876: Unknown macro number End Level 3 Node: -876: Unknown macro number
Start Level 3 Node: -877: Unknown parameter name -877: Unknown parameter name End Level 3 Node: -877: Unknown parameter name
Start Level 3 Node: -878: Unknown record name -878: Unknown record name End Level 3 Node: -878: Unknown record name
Start Level 3 Node: -879: Unknown precompiler statement -879: Unknown precompiler statement End Level 3 Node: -879: Unknown precompiler statement
Start Level 3 Node: -880: Unknown statement name -880: Unknown statement name End Level 3 Node: -880: Unknown statement name
Start Level 3 Node: -881: Unknown type name -881: Unknown type name End Level 3 Node: -881: Unknown type name
Start Level 3 Node: -882: Missing user name for connect -882: Missing user name for connect End Level 3 Node: -882: Missing user name for connect
Start Level 3 Node: -883: Invalid runtime options -883: Invalid runtime options End Level 3 Node: -883: Invalid runtime options
Start Level 3 Node: -884: Missing indicator variable -884: Missing indicator variable End Level 3 Node: -884: Missing indicator variable
Start Level 3 Node: -885: Variable may be truncated -885: Variable may be truncated End Level 3 Node: -885: Variable may be truncated
Start Level 3 Node: -886: DECLARE SECTION BEGIN or END missing -886: DECLARE SECTION BEGIN or END missing End Level 3 Node: -886: DECLARE SECTION BEGIN or END missing
Start Level 3 Node: -887: Too long WHENEVER action -887: Too long WHENEVER action End Level 3 Node: -887: Too long WHENEVER action
Start Level 3 Node: -889: Input line longer than 512 characters -889: Input line longer than 512 characters End Level 3 Node: -889: Input line longer than 512 characters
Start Level 3 Node: -890: Input line longer than right margin -890: Input line longer than right margin End Level 3 Node: -890: Input line longer than right margin
Start Level 3 Node: -892: Variable may be overflow -892: Variable may be overflow End Level 3 Node: -892: Variable may be overflow
Start Level 3 Node: -893: Too many hostvariables -893: Too many hostvariables End Level 3 Node: -893: Too many hostvariables
Start Level 3 Node: -894: Trace parameter structure not allowed -894: Trace parameter structure not allowed End Level 3 Node: -894: Trace parameter structure not allowed
Start Level 3 Node: -895: Whole table may be deleted or updated -895: Whole table may be deleted or updated End Level 3 Node: -895: Whole table may be deleted or updated
Start Level 3 Node: -899: Error unknown -899: Error unknown End Level 3 Node: -899: Error unknown
Start Level 2 Node: From -900 to -999 From -900 to -999 End Level 2 Node: From -900 to -999
Start Level 3 Node: -900: Data area full -900: Data area full End Level 3 Node: -900: Data area full
Start Level 3 Node: -901: Log full -901: Log full End Level 3 Node: -901: Log full
Start Level 3 Node: -902: I/O error -902: I/O error End Level 3 Node: -902: I/O error
Start Level 3 Node: -903: Hostfile I/O error -903: Hostfile I/O error End Level 3 Node: -903: Hostfile I/O error
Start Level 3 Node: -904: Space for result tables exhausted -904: Space for result tables exhausted End Level 3 Node: -904: Space for result tables exhausted
Start Level 3 Node: -907: Space for user session exhausted -907: Space for user session exhausted End Level 3 Node: -907: Space for user session exhausted
Start Level 3 Node: -910: COSTLIMIT for this user exhausted -910: COSTLIMIT for this user exhausted End Level 3 Node: -910: COSTLIMIT for this user exhausted
Start Level 3 Node: -911: Work rolled back -911: Work rolled back End Level 3 Node: -911: Work rolled back
Start Level 3 Node: -913: Lock request timeout -913: Lock request timeout End Level 3 Node: -913: Lock request timeout
Start Level 3 Node: -914: New volume not accessible -914: New volume not accessible End Level 3 Node: -914: New volume not accessible
Start Level 3 Node: -915: No more memory -915: No more memory End Level 3 Node: -915: No more memory
Start Level 3 Node: -917: Save/restore write process crash - I/O error -917: Save/restore write process crash - I/O error End Level 3 Node: -917: Save/restore write process crash - I/O error
Start Level 3 Node: -918: Stack overflow -918: Stack overflow End Level 3 Node: -918: Stack overflow
Start Level 3 Node: -925: Communication failure -925: Communication failure End Level 3 Node: -925: Communication failure
Start Level 3 Node: -942: Unknown table name -942: Unknown table name End Level 3 Node: -942: Unknown table name
Start Level 3 Node: -955: Duplicate name -955: Duplicate name End Level 3 Node: -955: Duplicate name
Start Level 2 Node: From -1000 to -1999 From -1000 to -1999 End Level 2 Node: From -1000 to -1999
Start Level 3 Node: -1000: Too many lock requests -1000: Too many lock requests End Level 3 Node: -1000: Too many lock requests
Start Level 3 Node: -1001: Too many lock objects specified -1001: Too many lock objects specified End Level 3 Node: -1001: Too many lock objects specified
Start Level 3 Node: -1002: Too many columns -1002: Too many columns End Level 3 Node: -1002: Too many columns
Start Level 3 Node: -1003: Too many buffers requested -1003: Too many buffers requested End Level 3 Node: -1003: Too many buffers requested
Start Level 3 Node: -1004: Too many correlated columns -1004: Too many correlated columns End Level 3 Node: -1004: Too many correlated columns
Start Level 3 Node: -1005: Too many monadic operators -1005: Too many monadic operators End Level 3 Node: -1005: Too many monadic operators
Start Level 3 Node: -1006: Too many variables -1006: Too many variables End Level 3 Node: -1006: Too many variables
Start Level 3 Node: -1007: Parameter list too long -1007: Parameter list too long End Level 3 Node: -1007: Parameter list too long
Start Level 3 Node: -1008: Too many or too few host variables for output -1008: Too many or too few host variables for output End Level 3 Node: -1008: Too many or too few host variables for output
Start Level 3 Node: -1009: Too many named indexes for this table -1009: Too many named indexes for this table End Level 3 Node: -1009: Too many named indexes for this table
Start Level 3 Node: -1010: Too many volumes -1010: Too many volumes End Level 3 Node: -1010: Too many volumes
Start Level 3 Node: -1011: Too many correlated tables -1011: Too many correlated tables End Level 3 Node: -1011: Too many correlated tables
Start Level 3 Node: -1012: Too many referential constraint definitions for this tabl -1012: Too many referential constraint definitions for this tabl End Level 3 Node: -1012: Too many referential constraint definitions for this tabl
Start Level 3 Node: -1013: Too many order columns -1013: Too many order columns End Level 3 Node: -1013: Too many order columns
Start Level 3 Node: -1014: Too many source tables -1014: Too many source tables End Level 3 Node: -1014: Too many source tables
Start Level 3 Node: -1015: Too many values -1015: Too many values End Level 3 Node: -1015: Too many values
Start Level 3 Node: -1017: Too many joins -1017: Too many joins End Level 3 Node: -1017: Too many joins
Start Level 3 Node: -1023: Too many nested subtransactions -1023: Too many nested subtransactions End Level 3 Node: -1023: Too many nested subtransactions
Start Level 3 Node: -1025: Too many asynchron requests -1025: Too many asynchron requests End Level 3 Node: -1025: Too many asynchron requests
Start Level 3 Node: -1026: Too many differences between old and new view definition -1026: Too many differences between old and new view definition End Level 3 Node: -1026: Too many differences between old and new view definition
Start Level 3 Node: -1101: Too complicated SQL statement (Too many recursions) -1101: Too complicated SQL statement (Too many recursions) End Level 3 Node: -1101: Too complicated SQL statement (Too many recursions)
Start Level 3 Node: -1102: Too complicated SQL statement (Too many subqueries) -1102: Too complicated SQL statement (Too many subqueries) End Level 3 Node: -1102: Too complicated SQL statement (Too many subqueries)
Start Level 3 Node: -1103: Too complicated SQL statement -1103: Too complicated SQL statement End Level 3 Node: -1103: Too complicated SQL statement
Start Level 3 Node: -1104: Too complicated SQL statement (KB-stack overflow) -1104: Too complicated SQL statement (KB-stack overflow) End Level 3 Node: -1104: Too complicated SQL statement (KB-stack overflow)
Start Level 3 Node: -1105: Too complicated SQL statement (Too much data) -1105: Too complicated SQL statement (Too much data) End Level 3 Node: -1105: Too complicated SQL statement (Too much data)
Start Level 3 Node: -1106: Too complicated SQL statement (Too much strategy data) -1106: Too complicated SQL statement (Too much strategy data) End Level 3 Node: -1106: Too complicated SQL statement (Too much strategy data)
Start Level 3 Node: -1107: Too complicated SQL statement (Too many internal commands -1107: Too complicated SQL statement (Too many internal commands End Level 3 Node: -1107: Too complicated SQL statement (Too many internal commands
Start Level 3 Node: -1108: Too complicated SQL statement (Correlated row too long) -1108: Too complicated SQL statement (Correlated row too long) End Level 3 Node: -1108: Too complicated SQL statement (Correlated row too long)
Start Level 3 Node: -1110: View definition too long -1110: View definition too long End Level 3 Node: -1110: View definition too long
Start Level 3 Node: -1111: Too many savepoints -1111: Too many savepoints End Level 3 Node: -1111: Too many savepoints
Start Level 3 Node: -1112: Constraint too complicated -1112: Constraint too complicated End Level 3 Node: -1112: Constraint too complicated
Start Level 3 Node: -1113: Too many nested function calls -1113: Too many nested function calls End Level 3 Node: -1113: Too many nested function calls
Start Level 3 Node: -1114: Communication packet too small -1114: Communication packet too small End Level 3 Node: -1114: Communication packet too small
Start Level 3 Node: -1115: Too many intern columns -1115: Too many intern columns End Level 3 Node: -1115: Too many intern columns
Start Level 3 Node: -1116: Too long trigger parameters -1116: Too long trigger parameters End Level 3 Node: -1116: Too long trigger parameters
Start Level 3 Node: -1117: Too complicated trigger qualification -1117: Too complicated trigger qualification End Level 3 Node: -1117: Too complicated trigger qualification
Start Level 3 Node: -1119: Too many constraints for this table -1119: Too many constraints for this table End Level 3 Node: -1119: Too many constraints for this table
Start Level 3 Node: -1120: Too many statements in definition -1120: Too many statements in definition End Level 3 Node: -1120: Too many statements in definition
Start Level 3 Node: -1200: Too few values -1200: Too few values End Level 3 Node: -1200: Too few values
Start Level 3 Node: -1201: Too few columns -1201: Too few columns End Level 3 Node: -1201: Too few columns
Start Level 3 Node: -1400: Input parameter cannot be NULL value -1400: Input parameter cannot be NULL value End Level 3 Node: -1400: Input parameter cannot be NULL value
Start Level 3 Node: -1402: Integrity violation -1402: Integrity violation End Level 3 Node: -1402: Integrity violation
Start Level 3 Node: 1403: Row not found 1403: Row not found End Level 3 Node: 1403: Row not found
Start Level 3 Node: -1405: Missing indicator variable, output parameter with NULL va -1405: Missing indicator variable, output parameter with NULL va End Level 3 Node: -1405: Missing indicator variable, output parameter with NULL va
Start Level 3 Node: -1406: Specify the indicator variable with the parameter. -1406: Specify the indicator variable with the parameter. End Level 3 Node: -1406: Specify the indicator variable with the parameter.
Start Level 3 Node: -1452: Duplicate secondary key -1452: Duplicate secondary key End Level 3 Node: -1452: Duplicate secondary key
Start Level 3 Node: -1556: Data space full -1556: Data space full End Level 3 Node: -1556: Data space full
Start Level 3 Node: -1755: SQL statement will drop further objects (use CASCADE) -1755: SQL statement will drop further objects (use CASCADE) End Level 3 Node: -1755: SQL statement will drop further objects (use CASCADE)
Start Level 2 Node: From -2000 to -2999 From -2000 to -2999 End Level 2 Node: From -2000 to -2999
Start Level 3 Node: -2000: Row too long -2000: Row too long End Level 3 Node: -2000: Row too long
Start Level 3 Node: -2001: Key too long -2001: Key too long End Level 3 Node: -2001: Key too long
Start Level 3 Node: -2002: One output column too long -2002: One output column too long End Level 3 Node: -2002: One output column too long
Start Level 3 Node: -2003: Output columns too long -2003: Output columns too long End Level 3 Node: -2003: Output columns too long
Start Level 3 Node: -2004: Numeric constant too long -2004: Numeric constant too long End Level 3 Node: -2004: Numeric constant too long
Start Level 3 Node: -2008: Data area too small -2008: Data area too small End Level 3 Node: -2008: Data area too small
Start Level 3 Node: -2009: Join columns too long -2009: Join columns too long End Level 3 Node: -2009: Join columns too long
Start Level 3 Node: -2010: Assignment impossible, char value too long -2010: Assignment impossible, char value too long End Level 3 Node: -2010: Assignment impossible, char value too long
Start Level 3 Node: -2012: View column list too long -2012: View column list too long End Level 3 Node: -2012: View column list too long
Start Level 3 Node: -2013: Select column list too long -2013: Select column list too long End Level 3 Node: -2013: Select column list too long
Start Level 3 Node: -2014: Identifier too long -2014: Identifier too long End Level 3 Node: -2014: Identifier too long
Start Level 3 Node: -2020: Data buffer too small -2020: Data buffer too small End Level 3 Node: -2020: Data buffer too small
Start Level 3 Node: -2025: Invalid number of backup devices -2025: Invalid number of backup devices End Level 3 Node: -2025: Invalid number of backup devices
Start Level 3 Node: -2026: Invalid label -2026: Invalid label End Level 3 Node: -2026: Invalid label
Start Level 3 Node: -2027: Space for converted value too small -2027: Space for converted value too small End Level 3 Node: -2027: Space for converted value too small
Start Level 3 Node: -2028: Sequence <sequence_name> exhausted -2028: Sequence <sequence_name> exhausted End Level 3 Node: -2028: Sequence <sequence_name> exhausted
Start Level 3 Node: -2029: <sequence_name>.CURRVAL is not yet defined in this sessio -2029: <sequence_name>.CURRVAL is not yet defined in this sessio End Level 3 Node: -2029: <sequence_name>.CURRVAL is not yet defined in this sessio
Start Level 2 Node: From -3000 to -3999 From -3000 to -3999 End Level 2 Node: From -3000 to -3999
Start Level 3 Node: -3000: Invalid host file content -3000: Invalid host file content End Level 3 Node: -3000: Invalid host file content
Start Level 3 Node: -3002: Invalid datatype -3002: Invalid datatype End Level 3 Node: -3002: Invalid datatype
Start Level 3 Node: -3003: Invalid user name -3003: Invalid user name End Level 3 Node: -3003: Invalid user name
Start Level 3 Node: -3004: Invalid host file sequence -3004: Invalid host file sequence End Level 3 Node: -3004: Invalid host file sequence
Start Level 3 Node: -3005: Invalid SQL statement -3005: Invalid SQL statement End Level 3 Node: -3005: Invalid SQL statement
Start Level 3 Node: -3007: Invalid sequence for DML and DDL statements -3007: Invalid sequence for DML and DDL statements End Level 3 Node: -3007: Invalid sequence for DML and DDL statements
Start Level 3 Node: -3008: Invalid keyword or missing delimiter -3008: Invalid keyword or missing delimiter End Level 3 Node: -3008: Invalid keyword or missing delimiter
Start Level 3 Node: -3009: Invalid table name -3009: Invalid table name End Level 3 Node: -3009: Invalid table name
Start Level 3 Node: -3011: Invalid column name -3011: Invalid column name End Level 3 Node: -3011: Invalid column name
Start Level 3 Node: -3014: Invalid end of SQL statement -3014: Invalid end of SQL statement End Level 3 Node: -3014: Invalid end of SQL statement
Start Level 3 Node: -3016: Invalid numeric constant -3016: Invalid numeric constant End Level 3 Node: -3016: Invalid numeric constant
Start Level 3 Node: -3017: Invalid unsigned integer -3017: Invalid unsigned integer End Level 3 Node: -3017: Invalid unsigned integer
Start Level 3 Node: -3018: Invalid numeric parameter -3018: Invalid numeric parameter End Level 3 Node: -3018: Invalid numeric parameter
Start Level 3 Node: -3019: Invalid exponent -3019: Invalid exponent End Level 3 Node: -3019: Invalid exponent
Start Level 3 Node: -3020: Invalid length for this data type -3020: Invalid length for this data type End Level 3 Node: -3020: Invalid length for this data type
Start Level 3 Node: -3021: Invalid mixture of functions and columns -3021: Invalid mixture of functions and columns End Level 3 Node: -3021: Invalid mixture of functions and columns
Start Level 3 Node: -3024: Invalid numeric expression -3024: Invalid numeric expression End Level 3 Node: -3024: Invalid numeric expression
Start Level 3 Node: -3030: Invalid SESSION TIMEOUT -3030: Invalid SESSION TIMEOUT End Level 3 Node: -3030: Invalid SESSION TIMEOUT
Start Level 3 Node: -3035: Invalid date time format -3035: Invalid date time format End Level 3 Node: -3035: Invalid date time format
Start Level 3 Node: -3037: Invalid volume name -3037: Invalid volume name End Level 3 Node: -3037: Invalid volume name
Start Level 3 Node: -3038: Invalid volume size -3038: Invalid volume size End Level 3 Node: -3038: Invalid volume size
Start Level 3 Node: -3046: Invalid char position in string function -3046: Invalid char position in string function End Level 3 Node: -3046: Invalid char position in string function
Start Level 3 Node: -3047: Invalid table for RESTORE CATALOG -3047: Invalid table for RESTORE CATALOG End Level 3 Node: -3047: Invalid table for RESTORE CATALOG
Start Level 3 Node: -3048: Invalid date format -3048: Invalid date format End Level 3 Node: -3048: Invalid date format
Start Level 3 Node: -3049: Invalid time format -3049: Invalid time format End Level 3 Node: -3049: Invalid time format
Start Level 3 Node: -3050: Invalid timestamp format -3050: Invalid timestamp format End Level 3 Node: -3050: Invalid timestamp format
Start Level 3 Node: -3054: Invalid block size -3054: Invalid block size End Level 3 Node: -3054: Invalid block size
Start Level 3 Node: -3059: Invalid day of week -3059: Invalid day of week End Level 3 Node: -3059: Invalid day of week
Start Level 3 Node: -3061: Invalid escape value -3061: Invalid escape value End Level 3 Node: -3061: Invalid escape value
Start Level 3 Node: -3062: Invalid month -3062: Invalid month End Level 3 Node: -3062: Invalid month
Start Level 3 Node: -3063: Invalid format code -3063: Invalid format code End Level 3 Node: -3063: Invalid format code
Start Level 3 Node: -3064: Date input value out of range -3064: Date input value out of range End Level 3 Node: -3064: Date input value out of range
Start Level 3 Node: -3065: Invalid date input value -3065: Invalid date input value End Level 3 Node: -3065: Invalid date input value
Start Level 3 Node: -3066: Date input value inconsistent -3066: Date input value inconsistent End Level 3 Node: -3066: Date input value inconsistent
Start Level 3 Node: -3067: Invalid timezone -3067: Invalid timezone End Level 3 Node: -3067: Invalid timezone
Start Level 3 Node: -3068: Mismatch of parameter configuration between backup and in -3068: Mismatch of parameter configuration between backup and in End Level 3 Node: -3068: Mismatch of parameter configuration between backup and in
Start Level 3 Node: -3069: Bad xparam page in backup -3069: Bad xparam page in backup End Level 3 Node: -3069: Bad xparam page in backup
Start Level 3 Node: -3071: Invalid datasource name -3071: Invalid datasource name End Level 3 Node: -3071: Invalid datasource name
Start Level 3 Node: -3072: Invalid value for EXECUTE on datasource -3072: Invalid value for EXECUTE on datasource End Level 3 Node: -3072: Invalid value for EXECUTE on datasource
Start Level 3 Node: -3073: Invalid value for TYPE on datasource -3073: Invalid value for TYPE on datasource End Level 3 Node: -3073: Invalid value for TYPE on datasource
Start Level 3 Node: -3074: Statement not possible for external tables -3074: Statement not possible for external tables End Level 3 Node: -3074: Statement not possible for external tables
Start Level 3 Node: -3102: Invalid subtrans structure -3102: Invalid subtrans structure End Level 3 Node: -3102: Invalid subtrans structure
Start Level 3 Node: -3103: Invalid sequence definition -3103: Invalid sequence definition End Level 3 Node: -3103: Invalid sequence definition
Start Level 3 Node: -3995: Invalid pattern -3995: Invalid pattern End Level 3 Node: -3995: Invalid pattern
Start Level 3 Node: -3998: Wrong password -3998: Wrong password End Level 3 Node: -3998: Wrong password
Start Level 3 Node: -3999: Invalid parameter -3999: Invalid parameter End Level 3 Node: -3999: Invalid parameter
Start Level 2 Node: From -4000 to -4999 From -4000 to -4999 End Level 2 Node: From -4000 to -4999
Start Level 3 Node: -4000: Unknown result table -4000: Unknown result table End Level 3 Node: -4000: Unknown result table
Start Level 3 Node: -4001: Unknown user name/password combination in operational sta -4001: Unknown user name/password combination in operational sta End Level 3 Node: -4001: Unknown user name/password combination in operational sta
Start Level 3 Node: -4002: Unknown password -4002: Unknown password End Level 3 Node: -4002: Unknown password
Start Level 3 Node: -4003: Unknown user name -4003: Unknown user name End Level 3 Node: -4003: Unknown user name
Start Level 3 Node: -4004: Unknown table name -4004: Unknown table name End Level 3 Node: -4004: Unknown table name
Start Level 3 Node: -4005: Unknown column name -4005: Unknown column name End Level 3 Node: -4005: Unknown column name
Start Level 3 Node: -4006: Unknown domain name -4006: Unknown domain name End Level 3 Node: -4006: Unknown domain name
Start Level 3 Node: -4007: Unknown synonym name -4007: Unknown synonym name End Level 3 Node: -4007: Unknown synonym name
Start Level 3 Node: -4008: Unknown user name/password combination -4008: Unknown user name/password combination End Level 3 Node: -4008: Unknown user name/password combination
Start Level 3 Node: -4009: Unknown referential constraint name -4009: Unknown referential constraint name End Level 3 Node: -4009: Unknown referential constraint name
Start Level 3 Node: -4010: Unknown MAPCHAR SET name -4010: Unknown MAPCHAR SET name End Level 3 Node: -4010: Unknown MAPCHAR SET name
Start Level 3 Node: -4011: Unknown index name -4011: Unknown index name End Level 3 Node: -4011: Unknown index name
Start Level 3 Node: -4013: Unknown user group name -4013: Unknown user group name End Level 3 Node: -4013: Unknown user group name
Start Level 3 Node: -4014: Unknown SERVERDB name -4014: Unknown SERVERDB name End Level 3 Node: -4014: Unknown SERVERDB name
Start Level 3 Node: -4016: Unknown procedure name -4016: Unknown procedure name End Level 3 Node: -4016: Unknown procedure name
Start Level 3 Node: -4017: Unknown constraint -4017: Unknown constraint End Level 3 Node: -4017: Unknown constraint
Start Level 3 Node: -4018: Unknown default -4018: Unknown default End Level 3 Node: -4018: Unknown default
Start Level 3 Node: -4019: Unknown trigger name -4019: Unknown trigger name End Level 3 Node: -4019: Unknown trigger name
Start Level 3 Node: -4020: Unknown sequence name -4020: Unknown sequence name End Level 3 Node: -4020: Unknown sequence name
Start Level 3 Node: -4023: Unknown function name -4023: Unknown function name End Level 3 Node: -4023: Unknown function name
Start Level 3 Node: -4024: Unknown name -4024: Unknown name End Level 3 Node: -4024: Unknown name
Start Level 3 Node: -4025: Unknown or not loaded character set -4025: Unknown or not loaded character set End Level 3 Node: -4025: Unknown or not loaded character set
Start Level 3 Node: -4027: Unknown session -4027: Unknown session End Level 3 Node: -4027: Unknown session
Start Level 3 Node: -4030: Unknown schema -4030: Unknown schema End Level 3 Node: -4030: Unknown schema
Start Level 3 Node: -4031: Unknown datasource -4031: Unknown datasource End Level 3 Node: -4031: Unknown datasource
Start Level 3 Node: -4032: Unknown remote table -4032: Unknown remote table End Level 3 Node: -4032: Unknown remote table
Start Level 3 Node: -4033: Unknown remote column -4033: Unknown remote column End Level 3 Node: -4033: Unknown remote column
Start Level 2 Node: From -5000 to -5999 From -5000 to -5999 End Level 2 Node: From -5000 to -5999
Start Level 3 Node: -5001: Missing privilege -5001: Missing privilege End Level 3 Node: -5001: Missing privilege
Start Level 3 Node: -5003: Missing key specification -5003: Missing key specification End Level 3 Node: -5003: Missing key specification
Start Level 3 Node: -5004: Missing constant -5004: Missing constant End Level 3 Node: -5004: Missing constant
Start Level 3 Node: -5005: Missing non-NULL value -5005: Missing non-NULL value End Level 3 Node: -5005: Missing non-NULL value
Start Level 3 Node: -5006: Missing identifier -5006: Missing identifier End Level 3 Node: -5006: Missing identifier
Start Level 3 Node: -5007: Missing numeric constant -5007: Missing numeric constant End Level 3 Node: -5007: Missing numeric constant
Start Level 3 Node: -5008: Missing string constant -5008: Missing string constant End Level 3 Node: -5008: Missing string constant
Start Level 3 Node: -5009: Missing integer -5009: Missing integer End Level 3 Node: -5009: Missing integer
Start Level 3 Node: -5010: Missing value specification -5010: Missing value specification End Level 3 Node: -5010: Missing value specification
Start Level 3 Node: -5012: Missing definite table name -5012: Missing definite table name End Level 3 Node: -5012: Missing definite table name
Start Level 3 Node: -5013: Missing update column -5013: Missing update column End Level 3 Node: -5013: Missing update column
Start Level 3 Node: -5014: Missing definite column name -5014: Missing definite column name End Level 3 Node: -5014: Missing definite column name
Start Level 3 Node: -5015: Missing keyword -5015: Missing keyword End Level 3 Node: -5015: Missing keyword
Start Level 3 Node: -5016: Missing delimiter -5016: Missing delimiter End Level 3 Node: -5016: Missing delimiter
Start Level 2 Node: From -6000 to -6999 From -6000 to -6999 End Level 2 Node: From -6000 to -6999
Start Level 3 Node: -6000: Duplicate table name -6000: Duplicate table name End Level 3 Node: -6000: Duplicate table name
Start Level 3 Node: -6001: Duplicate column name -6001: Duplicate column name End Level 3 Node: -6001: Duplicate column name
Start Level 3 Node: -6002: Duplicate privilege -6002: Duplicate privilege End Level 3 Node: -6002: Duplicate privilege
Start Level 3 Node: -6003: Duplicate result table name -6003: Duplicate result table name End Level 3 Node: -6003: Duplicate result table name
Start Level 3 Node: -6006: Duplicate name -6006: Duplicate name End Level 3 Node: -6006: Duplicate name
Start Level 3 Node: -6008: Duplicate index name -6008: Duplicate index name End Level 3 Node: -6008: Duplicate index name
Start Level 3 Node: -6011: Duplicate constraint -6011: Duplicate constraint End Level 3 Node: -6011: Duplicate constraint
Start Level 3 Node: -6012: Duplicate default -6012: Duplicate default End Level 3 Node: -6012: Duplicate default
Start Level 3 Node: -6013: Duplicate trigger definition -6013: Duplicate trigger definition End Level 3 Node: -6013: Duplicate trigger definition
Start Level 3 Node: -6014: Duplicate value -6014: Duplicate value End Level 3 Node: -6014: Duplicate value
Start Level 3 Node: -6016: Duplicate format code -6016: Duplicate format code End Level 3 Node: -6016: Duplicate format code
Start Level 3 Node: -6018: Duplicate datasource name -6018: Duplicate datasource name End Level 3 Node: -6018: Duplicate datasource name
Start Level 2 Node: From -7000 to -7999 From -7000 to -7999 End Level 2 Node: From -7000 to -7999
Start Level 3 Node: -7002: KEY not allowed -7002: KEY not allowed End Level 3 Node: -7002: KEY not allowed
Start Level 3 Node: -7003: NOT NULL not allowed -7003: NOT NULL not allowed End Level 3 Node: -7003: NOT NULL not allowed
Start Level 3 Node: -7004: DEFAULT not allowed -7004: DEFAULT not allowed End Level 3 Node: -7004: DEFAULT not allowed
Start Level 3 Node: -7005: Lower bound greater than upper bound not allowed -7005: Lower bound greater than upper bound not allowed End Level 3 Node: -7005: Lower bound greater than upper bound not allowed
Start Level 3 Node: -7006: Reserved identifier not allowed -7006: Reserved identifier not allowed End Level 3 Node: -7006: Reserved identifier not allowed
Start Level 3 Node: -7007: Key column not allowed -7007: Key column not allowed End Level 3 Node: -7007: Key column not allowed
Start Level 3 Node: -7008: Updates of this table not allowed -7008: Updates of this table not allowed End Level 3 Node: -7008: Updates of this table not allowed
Start Level 3 Node: -7009: NULL value in key column not allowed -7009: NULL value in key column not allowed End Level 3 Node: -7009: NULL value in key column not allowed
Start Level 3 Node: -7011: Correlated subquery not allowed -7011: Correlated subquery not allowed End Level 3 Node: -7011: Correlated subquery not allowed
Start Level 3 Node: -7012: More than one update row not allowed -7012: More than one update row not allowed End Level 3 Node: -7012: More than one update row not allowed
Start Level 3 Node: -7015: More than one result row not allowed -7015: More than one result row not allowed End Level 3 Node: -7015: More than one result row not allowed
Start Level 3 Node: -7016: Parameter spec not allowed in this context -7016: Parameter spec not allowed in this context End Level 3 Node: -7016: Parameter spec not allowed in this context
Start Level 3 Node: -7017: User not allowed -7017: User not allowed End Level 3 Node: -7017: User not allowed
Start Level 3 Node: -7018: Variable not allowed in view definition -7018: Variable not allowed in view definition End Level 3 Node: -7018: Variable not allowed in view definition
Start Level 3 Node: -7019: Feature not allowed in view definition -7019: Feature not allowed in view definition End Level 3 Node: -7019: Feature not allowed in view definition
Start Level 3 Node: -7021: View column derived from function not allowed -7021: View column derived from function not allowed End Level 3 Node: -7021: View column derived from function not allowed
Start Level 3 Node: -7022: Columns from more than one table not allowed -7022: Columns from more than one table not allowed End Level 3 Node: -7022: Columns from more than one table not allowed
Start Level 3 Node: -7023: Dropping of all columns not allowed -7023: Dropping of all columns not allowed End Level 3 Node: -7023: Dropping of all columns not allowed
Start Level 3 Node: -7024: Alter column not allowed, constraint violation -7024: Alter column not allowed, constraint violation End Level 3 Node: -7024: Alter column not allowed, constraint violation
Start Level 3 Node: -7026: SQL statement not allowed without previous FETCH -7026: SQL statement not allowed without previous FETCH End Level 3 Node: -7026: SQL statement not allowed without previous FETCH
Start Level 3 Node: -7029: Function not allowed for this data type -7029: Function not allowed for this data type End Level 3 Node: -7029: Function not allowed for this data type
Start Level 3 Node: -7032: SQL statement not allowed for column of data type LOB -7032: SQL statement not allowed for column of data type LOB End Level 3 Node: -7032: SQL statement not allowed for column of data type LOB
Start Level 3 Node: -7035: DEFAULT specification not allowed for this column -7035: DEFAULT specification not allowed for this column End Level 3 Node: -7035: DEFAULT specification not allowed for this column
Start Level 3 Node: -7036: ROWNO- specification not allowed in this context -7036: ROWNO- specification not allowed in this context End Level 3 Node: -7036: ROWNO- specification not allowed in this context
Start Level 3 Node: -7037: NULL value for NOT NULL column not allowed -7037: NULL value for NOT NULL column not allowed End Level 3 Node: -7037: NULL value for NOT NULL column not allowed
Start Level 3 Node: -7038: Foreign key column not allowed -7038: Foreign key column not allowed End Level 3 Node: -7038: Foreign key column not allowed
Start Level 3 Node: -7039: Cycle in referential constraint definition not allowed -7039: Cycle in referential constraint definition not allowed End Level 3 Node: -7039: Cycle in referential constraint definition not allowed
Start Level 3 Node: -7040: Referential constraint not allowed -7040: Referential constraint not allowed End Level 3 Node: -7040: Referential constraint not allowed
Start Level 3 Node: -7041: Result table name not allowed -7041: Result table name not allowed End Level 3 Node: -7041: Result table name not allowed
Start Level 3 Node: -7042: Key update not allowed -7042: Key update not allowed End Level 3 Node: -7042: Key update not allowed
Start Level 3 Node: -7043: Group member not allowed -7043: Group member not allowed End Level 3 Node: -7043: Group member not allowed
Start Level 3 Node: -7045: Parameter spec not allowed -7045: Parameter spec not allowed End Level 3 Node: -7045: Parameter spec not allowed
Start Level 3 Node: -7046: Column with length greater than 254 not allowed -7046: Column with length greater than 254 not allowed End Level 3 Node: -7046: Column with length greater than 254 not allowed
Start Level 3 Node: -7048: DROP/ALTER USER not allowed while user is connected -7048: DROP/ALTER USER not allowed while user is connected End Level 3 Node: -7048: DROP/ALTER USER not allowed while user is connected
Start Level 3 Node: -7050: Fastload with indexed table not allowed -7050: Fastload with indexed table not allowed End Level 3 Node: -7050: Fastload with indexed table not allowed
Start Level 3 Node: -7051: Read only view WITH CHECK OPTION not allowed -7051: Read only view WITH CHECK OPTION not allowed End Level 3 Node: -7051: Read only view WITH CHECK OPTION not allowed
Start Level 3 Node: -7055: Column(s) already indexed -7055: Column(s) already indexed End Level 3 Node: -7055: Column(s) already indexed
Start Level 3 Node: -7056: Subquery not allowed -7056: Subquery not allowed End Level 3 Node: -7056: Subquery not allowed
Start Level 3 Node: -7057: View definition contradicts new table definition -7057: View definition contradicts new table definition End Level 3 Node: -7057: View definition contradicts new table definition
Start Level 3 Node: -7058: Correlated subquery with select in from clause not allowe -7058: Correlated subquery with select in from clause not allowe End Level 3 Node: -7058: Correlated subquery with select in from clause not allowe
Start Level 3 Node: -7061: LOCK ROW for this table not allowed -7061: LOCK ROW for this table not allowed End Level 3 Node: -7061: LOCK ROW for this table not allowed
Start Level 3 Node: -7062: Open subtransaction not allowed, use SQL mode ORACLE -7062: Open subtransaction not allowed, use SQL mode ORACLE End Level 3 Node: -7062: Open subtransaction not allowed, use SQL mode ORACLE
Start Level 3 Node: -7063: Temp table not allowed -7063: Temp table not allowed End Level 3 Node: -7063: Temp table not allowed
Start Level 3 Node: -7064: Feature not allowed in temp table definition -7064: Feature not allowed in temp table definition End Level 3 Node: -7064: Feature not allowed in temp table definition
Start Level 3 Node: -7065: SUBTRANS COMMIT/ROLLBACK not allowed without SUBTRANS BEG -7065: SUBTRANS COMMIT/ROLLBACK not allowed without SUBTRANS BEG End Level 3 Node: -7065: SUBTRANS COMMIT/ROLLBACK not allowed without SUBTRANS BEG
Start Level 3 Node: -7066: Unique index referenced by foreign key not allowed -7066: Unique index referenced by foreign key not allowed End Level 3 Node: -7066: Unique index referenced by foreign key not allowed
Start Level 3 Node: -7067: Update without repeated read not allowed -7067: Update without repeated read not allowed End Level 3 Node: -7067: Update without repeated read not allowed
Start Level 3 Node: -7068: Outer Join not allowed in this context -7068: Outer Join not allowed in this context End Level 3 Node: -7068: Outer Join not allowed in this context
Start Level 3 Node: -7069: Outer join with bushy trees not allowed -7069: Outer join with bushy trees not allowed End Level 3 Node: -7069: Outer join with bushy trees not allowed
Start Level 3 Node: -7071: AUTOSAVE LOG must be stopped -7071: AUTOSAVE LOG must be stopped End Level 3 Node: -7071: AUTOSAVE LOG must be stopped
Start Level 3 Node: -7072: More than one column with default SERIAL not allowed -7072: More than one column with default SERIAL not allowed End Level 3 Node: -7072: More than one column with default SERIAL not allowed
Start Level 3 Node: -7073: Internal recreate failed with <name1>, <name2> -7073: Internal recreate failed with <name1>, <name2> End Level 3 Node: -7073: Internal recreate failed with <name1>, <name2>
Start Level 3 Node: -7074: Cycle in granted roles not allowed -7074: Cycle in granted roles not allowed End Level 3 Node: -7074: Cycle in granted roles not allowed
Start Level 3 Node: -7075: Current save skipped, next is ready to take on this tape -7075: Current save skipped, next is ready to take on this tape End Level 3 Node: -7075: Current save skipped, next is ready to take on this tape
Start Level 3 Node: -7076: No more data to read from tape -7076: No more data to read from tape End Level 3 Node: -7076: No more data to read from tape
Start Level 3 Node: -7077: Synonym not allowed -7077: Synonym not allowed End Level 3 Node: -7077: Synonym not allowed
Start Level 3 Node: -7078: No backup is running -7078: No backup is running End Level 3 Node: -7078: No backup is running
Start Level 3 Node: -7079: A backup is already running -7079: A backup is already running End Level 3 Node: -7079: A backup is already running
Start Level 3 Node: -7080: Query in statement not allowed -7080: Query in statement not allowed End Level 3 Node: -7080: Query in statement not allowed
Start Level 3 Node: -7082: SQL statement not allowed for this table type -7082: SQL statement not allowed for this table type End Level 3 Node: -7082: SQL statement not allowed for this table type
Start Level 3 Node: -7084: Parameter change not allowed -7084: Parameter change not allowed End Level 3 Node: -7084: Parameter change not allowed
Start Level 3 Node: -7085: Function not allowed for this cursor -7085: Function not allowed for this cursor End Level 3 Node: -7085: Function not allowed for this cursor
Start Level 3 Node: -7086: Schema not allowed -7086: Schema not allowed End Level 3 Node: -7086: Schema not allowed
Start Level 3 Node: -7500: DCOM HRESULT -7500: DCOM HRESULT End Level 3 Node: -7500: DCOM HRESULT
Start Level 3 Node: -7501: ProgramaticId not found -7501: ProgramaticId not found End Level 3 Node: -7501: ProgramaticId not found
Start Level 3 Node: -7503: Constructor not found -7503: Constructor not found End Level 3 Node: -7503: Constructor not found
Start Level 3 Node: -7506: Parameter type not supported -7506: Parameter type not supported End Level 3 Node: -7506: Parameter type not supported
Start Level 3 Node: -7900: Different block sizes -7900: Different block sizes End Level 3 Node: -7900: Different block sizes
Start Level 2 Node: From -8000 to -9799 From -8000 to -9799 End Level 2 Node: From -8000 to -9799
Start Level 3 Node: -8000: SERVERDB must be restarted -8000: SERVERDB must be restarted End Level 3 Node: -8000: SERVERDB must be restarted
Start Level 3 Node: -8001: User must be connected -8001: User must be connected End Level 3 Node: -8001: User must be connected
Start Level 3 Node: -8002: User already connected to this user task -8002: User already connected to this user task End Level 3 Node: -8002: User already connected to this user task
Start Level 3 Node: -8003: Log and data must be compatible -8003: Log and data must be compatible End Level 3 Node: -8003: Log and data must be compatible
Start Level 3 Node: -8004: Constant must be compatible with column type and length -8004: Constant must be compatible with column type and length End Level 3 Node: -8004: Constant must be compatible with column type and length
Start Level 3 Node: -8005: Value expression must be parameter name -8005: Value expression must be parameter name End Level 3 Node: -8005: Value expression must be parameter name
Start Level 3 Node: -8006: Data types must be compatible -8006: Data types must be compatible End Level 3 Node: -8006: Data types must be compatible
Start Level 3 Node: -8007: Column must be key column -8007: Column must be key column End Level 3 Node: -8007: Column must be key column
Start Level 3 Node: -8009: DEFAULT value must be in constraint specification -8009: DEFAULT value must be in constraint specification End Level 3 Node: -8009: DEFAULT value must be in constraint specification
Start Level 3 Node: -8010: Table name must be in from list -8010: Table name must be in from list End Level 3 Node: -8010: Table name must be in from list
Start Level 3 Node: -8013: Order column must be output column -8013: Order column must be output column End Level 3 Node: -8013: Order column must be output column
Start Level 3 Node: -8014: Result table must be FOR REUSE -8014: Result table must be FOR REUSE End Level 3 Node: -8014: Result table must be FOR REUSE
Start Level 3 Node: -8015: Table must be a base table -8015: Table must be a base table End Level 3 Node: -8015: Table must be a base table
Start Level 3 Node: -8016: Table must be a view table -8016: Table must be a view table End Level 3 Node: -8016: Table must be a view table
Start Level 3 Node: -8017: Column must be group column -8017: Column must be group column End Level 3 Node: -8017: Column must be group column
Start Level 3 Node: -8018: Index name must be unique -8018: Index name must be unique End Level 3 Node: -8018: Index name must be unique
Start Level 3 Node: -8020: Next volume required -8020: Next volume required End Level 3 Node: -8020: Next volume required
Start Level 3 Node: -8021: Column must have DEFAULT specification -8021: Column must have DEFAULT specification End Level 3 Node: -8021: Column must have DEFAULT specification
Start Level 3 Node: -8022: User already connected -8022: User already connected End Level 3 Node: -8022: User already connected
Start Level 3 Node: -8023: COSTLIMIT must be greater than COSTWARNING -8023: COSTLIMIT must be greater than COSTWARNING End Level 3 Node: -8023: COSTLIMIT must be greater than COSTWARNING
Start Level 3 Node: -8024: RESTORE CATALOG failed -8024: RESTORE CATALOG failed End Level 3 Node: -8024: RESTORE CATALOG failed
Start Level 3 Node: -8025: Table must be temp table -8025: Table must be temp table End Level 3 Node: -8025: Table must be temp table
Start Level 3 Node: -8026: Connect disabled for this user -8026: Connect disabled for this user End Level 3 Node: -8026: Connect disabled for this user
Start Level 3 Node: -8028: UNION columns must be compatible -8028: UNION columns must be compatible End Level 3 Node: -8028: UNION columns must be compatible
Start Level 3 Node: -8030: Column must be indexed -8030: Column must be indexed End Level 3 Node: -8030: Column must be indexed
Start Level 3 Node: -8031: Schema must be specified -8031: Schema must be specified End Level 3 Node: -8031: Schema must be specified
Start Level 3 Node: -8033: Incomplete log segment -8033: Incomplete log segment End Level 3 Node: -8033: Incomplete log segment
Start Level 3 Node: -8034: Order column must be number -8034: Order column must be number End Level 3 Node: -8034: Order column must be number
Start Level 3 Node: -8035: Foreign key must exist -8035: Foreign key must exist End Level 3 Node: -8035: Foreign key must exist
Start Level 3 Node: -8037: DB procedure must be recompiled -8037: DB procedure must be recompiled End Level 3 Node: -8037: DB procedure must be recompiled
Start Level 3 Node: -8038: Prepared statement not prepared -8038: Prepared statement not prepared End Level 3 Node: -8038: Prepared statement not prepared
Start Level 3 Node: -8040: Key does not exist -8040: Key does not exist End Level 3 Node: -8040: Key does not exist
Start Level 3 Node: -8044: Conversion for character set value impossible -8044: Conversion for character set value impossible End Level 3 Node: -8044: Conversion for character set value impossible
Start Level 3 Node: -8045: Conversion to UNICODE impossible -8045: Conversion to UNICODE impossible End Level 3 Node: -8045: Conversion to UNICODE impossible
Start Level 3 Node: -8046: Conversion from UNICODE impossible -8046: Conversion from UNICODE impossible End Level 3 Node: -8046: Conversion from UNICODE impossible
Start Level 3 Node: -8047: Password required -8047: Password required End Level 3 Node: -8047: Password required
Start Level 3 Node: -8048: Version of component must be compatible with kernel versi -8048: Version of component must be compatible with kernel versi End Level 3 Node: -8048: Version of component must be compatible with kernel versi
Start Level 3 Node: -8050: Migration error -8050: Migration error End Level 3 Node: -8050: Migration error
Start Level 3 Node: -8051: No snapshot available -8051: No snapshot available End Level 3 Node: -8051: No snapshot available
Start Level 3 Node: -8052: Trigger dropped during migration; check view migrationerr -8052: Trigger dropped during migration; check view migrationerr End Level 3 Node: -8052: Trigger dropped during migration; check view migrationerr
Start Level 3 Node: -8053: Software version is too old for version of persistent dat -8053: Software version is too old for version of persistent dat End Level 3 Node: -8053: Software version is too old for version of persistent dat
Start Level 3 Node: -8054: Contradictory options -8054: Contradictory options End Level 3 Node: -8054: Contradictory options
Start Level 3 Node: -8055 Trigger failed -8055 Trigger failed End Level 3 Node: -8055 Trigger failed
Start Level 3 Node: -8056: Snapshot ID not found -8056: Snapshot ID not found End Level 3 Node: -8056: Snapshot ID not found
Start Level 3 Node: -8057: Too many snapshots -8057: Too many snapshots End Level 3 Node: -8057: Too many snapshots
Start Level 3 Node: -8064: Conversion from remote datatype is not possible -8064: Conversion from remote datatype is not possible End Level 3 Node: -8064: Conversion from remote datatype is not possible
Start Level 3 Node: -8888: SERVERDB not accessible -8888: SERVERDB not accessible End Level 3 Node: -8888: SERVERDB not accessible
Start Level 3 Node: -9000: SYSTEM ERROR: NOT YET IMPLEMENTED -9000: SYSTEM ERROR: NOT YET IMPLEMENTED End Level 3 Node: -9000: SYSTEM ERROR: NOT YET IMPLEMENTED
Start Level 3 Node: -9001 to -9799: System error -9001 to -9799: System error End Level 3 Node: -9001 to -9799: System error
Start Level 2 Node: From -10000 to -10999 From -10000 to -10999 End Level 2 Node: From -10000 to -10999
Start Level 3 Node: -10001: System error: <description> -10001: System error: <description> End Level 3 Node: -10001: System error: <description>
Start Level 3 Node: -10003: Feature not supported for kernel version <version> -10003: Feature not supported for kernel version <version> End Level 3 Node: -10003: Feature not supported for kernel version <version>
Start Level 3 Node: -10100: Invalid value for option <option> of SQLDBC_ConnectPrope -10100: Invalid value for option <option> of SQLDBC_ConnectPrope End Level 3 Node: -10100: Invalid value for option <option> of SQLDBC_ConnectPrope
Start Level 3 Node: -10101: Invalid value for ISOLATIONLEVEL (<description>) -10101: Invalid value for ISOLATIONLEVEL (<description>) End Level 3 Node: -10101: Invalid value for ISOLATIONLEVEL (<description>)
Start Level 3 Node: -10102: Invalid value for PACKETCOUNT (<description>) -10102: Invalid value for PACKETCOUNT (<description>) End Level 3 Node: -10102: Invalid value for PACKETCOUNT (<description>)
Start Level 3 Node: -10103: Invalid value for STATEMENTCACHESIZE (<description>) -10103: Invalid value for STATEMENTCACHESIZE (<description>) End Level 3 Node: -10103: Invalid value for STATEMENTCACHESIZE (<description>)
Start Level 3 Node: -10104: Invalid value for KEY -10104: Invalid value for KEY End Level 3 Node: -10104: Invalid value for KEY
Start Level 3 Node: -10105: Codepage not supported (<name>) -10105: Codepage not supported (<name>) End Level 3 Node: -10105: Codepage not supported (<name>)
Start Level 3 Node: -10200: Function sequence error (data for execution expected) -10200: Function sequence error (data for execution expected) End Level 3 Node: -10200: Function sequence error (data for execution expected)
Start Level 3 Node: -10201: Function sequence error (no data for execution expected) -10201: Function sequence error (no data for execution expected) End Level 3 Node: -10201: Function sequence error (no data for execution expected)
Start Level 3 Node: -10202: Function sequence error (operation was aborted by discon -10202: Function sequence error (operation was aborted by discon End Level 3 Node: -10202: Function sequence error (operation was aborted by discon
Start Level 3 Node: -10210: Invalid command state (no prepared SQL command) -10210: Invalid command state (no prepared SQL command) End Level 3 Node: -10210: Invalid command state (no prepared SQL command)
Start Level 3 Node: -10220: Calling addBatch is not allowed for PreparedStatement / -10220: Calling addBatch is not allowed for PreparedStatement / End Level 3 Node: -10220: Calling addBatch is not allowed for PreparedStatement /
Start Level 3 Node: -10221: Command info too long -10221: Command info too long End Level 3 Node: -10221: Command info too long
Start Level 3 Node: -10300: Invalid parameter index [<number>] -10300: Invalid parameter index [<number>] End Level 3 Node: -10300: Invalid parameter index [<number>]
Start Level 3 Node: -10301: Invalid host type (<name>) for parameter (<number>) -10301: Invalid host type (<name>) for parameter (<number>) End Level 3 Node: -10301: Invalid host type (<name>) for parameter (<number>)
Start Level 3 Node: -10304: Parameter/Column (<number>) not found -10304: Parameter/Column (<number>) not found End Level 3 Node: -10304: Parameter/Column (<number>) not found
Start Level 3 Node: -10305: Parameter <number> contains null pointer -10305: Parameter <number> contains null pointer End Level 3 Node: -10305: Parameter <number> contains null pointer
Start Level 3 Node: -10306: Negative buffer length for parameter (<number>) used -10306: Negative buffer length for parameter (<number>) used End Level 3 Node: -10306: Negative buffer length for parameter (<number>) used
Start Level 3 Node: -10307: Invalid length or indicator value for parameter (<number -10307: Invalid length or indicator value for parameter (<number End Level 3 Node: -10307: Invalid length or indicator value for parameter (<number
Start Level 3 Node: -10308: Non-character and non-binary data for parameter (<number -10308: Non-character and non-binary data for parameter (<number End Level 3 Node: -10308: Non-character and non-binary data for parameter (<number
Start Level 3 Node: -10310: Invalid column index (<number>) -10310: Invalid column index (<number>) End Level 3 Node: -10310: Invalid column index (<number>)
Start Level 3 Node: -10312: Attempt to concatenate to a NULL or DEFAULT value for pa -10312: Attempt to concatenate to a NULL or DEFAULT value for pa End Level 3 Node: -10312: Attempt to concatenate to a NULL or DEFAULT value for pa
Start Level 3 Node: -10313: Requested parameter (<number>) was already processed -10313: Requested parameter (<number>) was already processed End Level 3 Node: -10313: Requested parameter (<number>) was already processed
Start Level 3 Node: -10314: Invalid parameter processing sequence, process non-LOB d -10314: Invalid parameter processing sequence, process non-LOB d End Level 3 Node: -10314: Invalid parameter processing sequence, process non-LOB d
Start Level 3 Node: -10315: Invalid start position (<number>) -10315: Invalid start position (<number>) End Level 3 Node: -10315: Invalid start position (<number>)
Start Level 3 Node: -10316: DATA AT EXECUTE for parameter (<number>) not allowed (co -10316: DATA AT EXECUTE for parameter (<number>) not allowed (co End Level 3 Node: -10316: DATA AT EXECUTE for parameter (<number>) not allowed (co
Start Level 3 Node: -10317: LOB type for parameter (<number>) not allowed (conflicts -10317: LOB type for parameter (<number>) not allowed (conflicts End Level 3 Node: -10317: LOB type for parameter (<number>) not allowed (conflicts
Start Level 3 Node: -10318: Invalid LOB object -10318: Invalid LOB object End Level 3 Node: -10318: Invalid LOB object
Start Level 3 Node: -10319: Could not read/write LOB for parameter/column (<number>) -10319: Could not read/write LOB for parameter/column (<number>) End Level 3 Node: -10319: Could not read/write LOB for parameter/column (<number>)
Start Level 3 Node: -10320: LOB already closed for parameter/column (<number>) -10320: LOB already closed for parameter/column (<number>) End Level 3 Node: -10320: LOB already closed for parameter/column (<number>)
Start Level 3 Node: -10321: LOB invalidated by a previous error for parameter/column -10321: LOB invalidated by a previous error for parameter/column End Level 3 Node: -10321: LOB invalidated by a previous error for parameter/column
Start Level 3 Node: -10322: Could not insert LOB. Parameter/column (<number>) has a -10322: Could not insert LOB. Parameter/column (<number>) has a End Level 3 Node: -10322: Could not insert LOB. Parameter/column (<number>) has a
Start Level 3 Node: -10323: Non-character and non-binary data for parameter/column ( -10323: Non-character and non-binary data for parameter/column ( End Level 3 Node: -10323: Non-character and non-binary data for parameter/column (
Start Level 3 Node: -10324: Stream with id (<number>) not found -10324: Stream with id (<number>) not found End Level 3 Node: -10324: Stream with id (<number>) not found
Start Level 3 Node: -10325: Stream parameter (<number>) is not an input|output param -10325: Stream parameter (<number>) is not an input|output param End Level 3 Node: -10325: Stream parameter (<number>) is not an input|output param
Start Level 3 Node: -10326: No data found for stream (<number>) -10326: No data found for stream (<number>) End Level 3 Node: -10326: No data found for stream (<number>)
Start Level 3 Node: -10327: Invalid use of null pointer in stream parameter field of -10327: Invalid use of null pointer in stream parameter field of End Level 3 Node: -10327: Invalid use of null pointer in stream parameter field of
Start Level 3 Node: -10328: Mismatch of number of stream members for parameter (<num -10328: Mismatch of number of stream members for parameter (<num End Level 3 Node: -10328: Mismatch of number of stream members for parameter (<num
Start Level 3 Node: -10329: Invalid serial value requested, must be first or last va -10329: Invalid serial value requested, must be first or last va End Level 3 Node: -10329: Invalid serial value requested, must be first or last va
Start Level 3 Node: -10330: Multiple stream output sequence error -10330: Multiple stream output sequence error End Level 3 Node: -10330: Multiple stream output sequence error
Start Level 3 Node: -10331: Input stream callback buffer overflow for table id (<num -10331: Input stream callback buffer overflow for table id (<num End Level 3 Node: -10331: Input stream callback buffer overflow for table id (<num
Start Level 3 Node: -10332: No callback function supplied for stream parameter (<num -10332: No callback function supplied for stream parameter (<num End Level 3 Node: -10332: No callback function supplied for stream parameter (<num
Start Level 3 Node: -10400: Conversion looses significant digits for parameter/colum -10400: Conversion looses significant digits for parameter/colum End Level 3 Node: -10400: Conversion looses significant digits for parameter/colum
Start Level 3 Node: -10401: Conversion of parameter/column (<number>) would truncate -10401: Conversion of parameter/column (<number>) would truncate End Level 3 Node: -10401: Conversion of parameter/column (<number>) would truncate
Start Level 3 Node: -10404: Conversion not supported for parameter/column (<number>) -10404: Conversion not supported for parameter/column (<number>) End Level 3 Node: -10404: Conversion not supported for parameter/column (<number>)
Start Level 3 Node: -10405: Cannot convert UCS2 data to ASCII -10405: Cannot convert UCS2 data to ASCII End Level 3 Node: -10405: Cannot convert UCS2 data to ASCII
Start Level 3 Node: -10406: Invalid data length for UCS2 data for parameter/column ( -10406: Invalid data length for UCS2 data for parameter/column ( End Level 3 Node: -10406: Invalid data length for UCS2 data for parameter/column (
Start Level 3 Node: -10407: Corrupted UTF8 data for parameter/column (<number>) -10407: Corrupted UTF8 data for parameter/column (<number>) End Level 3 Node: -10407: Corrupted UTF8 data for parameter/column (<number>)
Start Level 3 Node: -10408: Character conversion failed -10408: Character conversion failed End Level 3 Node: -10408: Character conversion failed
Start Level 3 Node: -10410: Date/time format is not supported for parameter/column ( -10410: Date/time format is not supported for parameter/column ( End Level 3 Node: -10410: Date/time format is not supported for parameter/column (
Start Level 3 Node: -10411: Illegal DATE value for parameter/column (<number>) -10411: Illegal DATE value for parameter/column (<number>) End Level 3 Node: -10411: Illegal DATE value for parameter/column (<number>)
Start Level 3 Node: -10412: Illegal TIME value for parameter/column (<number>) -10412: Illegal TIME value for parameter/column (<number>) End Level 3 Node: -10412: Illegal TIME value for parameter/column (<number>)
Start Level 3 Node: -10413: Illegal TIMESTAMP value for parameter/column (<number>) -10413: Illegal TIMESTAMP value for parameter/column (<number>) End Level 3 Node: -10413: Illegal TIMESTAMP value for parameter/column (<number>)
Start Level 3 Node: -10414: Conversion from binary value to string is not supported -10414: Conversion from binary value to string is not supported End Level 3 Node: -10414: Conversion from binary value to string is not supported
Start Level 3 Node: -10500: Result set is closed -10500: Result set is closed End Level 3 Node: -10500: Result set is closed
Start Level 3 Node: -10501: Invalid position in result set: before first row -10501: Invalid position in result set: before first row End Level 3 Node: -10501: Invalid position in result set: before first row
Start Level 3 Node: -10502: Invalid position in result set: after last row -10502: Invalid position in result set: after last row End Level 3 Node: -10502: Invalid position in result set: after last row
Start Level 3 Node: -10503: The operation is not allowed for result set type FORWARD -10503: The operation is not allowed for result set type FORWARD End Level 3 Node: -10503: The operation is not allowed for result set type FORWARD
Start Level 3 Node: -10504: Invalid position (<row_number>) for row set -10504: Invalid position (<row_number>) for row set End Level 3 Node: -10504: Invalid position (<row_number>) for row set
Start Level 3 Node: -10505: Result set type is UPDATABLE but row set type is READ_ON -10505: Result set type is UPDATABLE but row set type is READ_ON End Level 3 Node: -10505: Result set type is UPDATABLE but row set type is READ_ON
Start Level 3 Node: -10506: Result set type is READ_ONLY but row set type is UPDATAB -10506: Result set type is READ_ONLY but row set type is UPDATAB End Level 3 Node: -10506: Result set type is READ_ONLY but row set type is UPDATAB
Start Level 3 Node: -10507: Internal error: No metadata available for row set operat -10507: Internal error: No metadata available for row set operat End Level 3 Node: -10507: Internal error: No metadata available for row set operat
Start Level 3 Node: -10508: Invalid encoding of column name for column (<number>) fo -10508: Invalid encoding of column name for column (<number>) fo End Level 3 Node: -10508: Invalid encoding of column name for column (<number>) fo
Start Level 3 Node: -10509: The statement was not executed with updatable cursor con -10509: The statement was not executed with updatable cursor con End Level 3 Node: -10509: The statement was not executed with updatable cursor con
Start Level 3 Node: -10601: SQL command is the empty string -10601: SQL command is the empty string End Level 3 Node: -10601: SQL command is the empty string
Start Level 3 Node: -10602: SQL command contains UNICODE character -10602: SQL command contains UNICODE character End Level 3 Node: -10602: SQL command contains UNICODE character
Start Level 3 Node: -10603: SQL command would generate a result set -10603: SQL command would generate a result set End Level 3 Node: -10603: SQL command would generate a result set
Start Level 3 Node: -10604: SQL command contains output parameters -10604: SQL command contains output parameters End Level 3 Node: -10604: SQL command contains output parameters
Start Level 3 Node: -10605: Illegal schema modification, parameters/columns have cha -10605: Illegal schema modification, parameters/columns have cha End Level 3 Node: -10605: Illegal schema modification, parameters/columns have cha
Start Level 3 Node: -10706: Statement too long -10706: Statement too long End Level 3 Node: -10706: Statement too long
Start Level 3 Node: -10709: Connection failed (<description>) -10709: Connection failed (<description>) End Level 3 Node: -10709: Connection failed (<description>)
Start Level 3 Node: -10715: Missing user name for connection | Missing password for -10715: Missing user name for connection | Missing password for End Level 3 Node: -10715: Missing user name for connection | Missing password for
Start Level 3 Node: -10757: XUSER error (<description>) -10757: XUSER error (<description>) End Level 3 Node: -10757: XUSER error (<description>)
Start Level 3 Node: -10802: Invalid numeric value for parameter/column (<number>) -10802: Invalid numeric value for parameter/column (<number>) End Level 3 Node: -10802: Invalid numeric value for parameter/column (<number>)
Start Level 3 Node: -10803: Allocation of shared memory failed (<description>) -10803: Allocation of shared memory failed (<description>) End Level 3 Node: -10803: Allocation of shared memory failed (<description>)
Start Level 3 Node: -10807: Connection down: [<description>] -10807: Connection down: [<description>] End Level 3 Node: -10807: Connection down: [<description>]
Start Level 3 Node: -10808: Feature <feature> not implemented yet in module: <module -10808: Feature <feature> not implemented yet in module: <module End Level 3 Node: -10808: Feature <feature> not implemented yet in module: <module
Start Level 3 Node: -10810: Session already in use -10810: Session already in use End Level 3 Node: -10810: Session already in use
Start Level 3 Node: -10811: Numeric overflow for parameter/column (<number>) -10811: Numeric overflow for parameter/column (<number>) End Level 3 Node: -10811: Numeric overflow for parameter/column (<number>)
Start Level 3 Node: -10821: Session not connected -10821: Session not connected End Level 3 Node: -10821: Session not connected
Start Level 3 Node: -10856: Invalid row array size 0 -10856: Invalid row array size 0 End Level 3 Node: -10856: Invalid row array size 0
Start Level 3 Node: -10857: Missing database name for connection -10857: Missing database name for connection End Level 3 Node: -10857: Missing database name for connection
Start Level 3 Node: -10861: Invalid use of null pointer for stream handle in paramet -10861: Invalid use of null pointer for stream handle in paramet End Level 3 Node: -10861: Invalid use of null pointer for stream handle in paramet
Start Level 3 Node: -10862: Stream parameter (<number>) error in read|write procedur -10862: Stream parameter (<number>) error in read|write procedur End Level 3 Node: -10862: Stream parameter (<number>) error in read|write procedur
Start Level 3 Node: -10899: Unknown error -10899: Unknown error End Level 3 Node: -10899: Unknown error
Start Level 3 Node: -10901: No space left in request packet -10901: No space left in request packet End Level 3 Node: -10901: No space left in request packet
Start Level 3 Node: -10902: Invalid request packet structure -10902: Invalid request packet structure End Level 3 Node: -10902: Invalid request packet structure
Start Level 3 Node: -10903: Internal Error: LONGDATA part expected -10903: Internal Error: LONGDATA part expected End Level 3 Node: -10903: Internal Error: LONGDATA part expected
Start Level 3 Node: -10904: Internal error: Expected result count -10904: Internal error: Expected result count End Level 3 Node: -10904: Internal error: Expected result count
Start Level 3 Node: -10905: Invalid reply packet structure -10905: Invalid reply packet structure End Level 3 Node: -10905: Invalid reply packet structure
Start Level 3 Node: -10906: Internal Error: Entry for valindex (<number>) not found -10906: Internal Error: Entry for valindex (<number>) not found End Level 3 Node: -10906: Internal Error: Entry for valindex (<number>) not found
Start Level 3 Node: -10907: Internal Error: LOB descriptor has error flag set -10907: Internal Error: LOB descriptor has error flag set End Level 3 Node: -10907: Internal Error: LOB descriptor has error flag set
Start Level 2 Node: From -11000 to -11099 From -11000 to -11099 End Level 2 Node: From -11000 to -11099
Start Level 2 Node: From -11100 to -11199 From -11100 to -11199 End Level 2 Node: From -11100 to -11199
Start Level 3 Node: -11100: Unknown error -11100: Unknown error End Level 3 Node: -11100: Unknown error
Start Level 3 Node: -11101: Initialization failed [<description>]. -11101: Initialization failed [<description>]. End Level 3 Node: -11101: Initialization failed [<description>].
Start Level 3 Node: -11104: Session not connected. -11104: Session not connected. End Level 3 Node: -11104: Session not connected.
Start Level 3 Node: -11105: Cannot get column name for column <number>. -11105: Cannot get column name for column <number>. End Level 3 Node: -11105: Cannot get column name for column <number>.
Start Level 3 Node: -11106: No result set found. -11106: No result set found. End Level 3 Node: -11106: No result set found.
Start Level 3 Node: -11107: Statement not prepared. -11107: Statement not prepared. End Level 3 Node: -11107: Statement not prepared.
Start Level 3 Node: -11108: Invalid parameter index <number>. -11108: Invalid parameter index <number>. End Level 3 Node: -11108: Invalid parameter index <number>.
Start Level 3 Node: -11109: Column/Parameter <number> truncated. -11109: Column/Parameter <number> truncated. End Level 3 Node: -11109: Column/Parameter <number> truncated.
Start Level 3 Node: -11111: Parameter/Column (<number>) not bound. -11111: Parameter/Column (<number>) not bound. End Level 3 Node: -11111: Parameter/Column (<number>) not bound.
Start Level 3 Node: -11113: Number of parameters does not match number of result col -11113: Number of parameters does not match number of result col End Level 3 Node: -11113: Number of parameters does not match number of result col
Start Level 3 Node: -11115: Syntax error. Expected: <description>. -11115: Syntax error. Expected: <description>. End Level 3 Node: -11115: Syntax error. Expected: <description>.
Start Level 3 Node: -11116: Wrong parameter type. Expected: <description> -11116: Wrong parameter type. Expected: <description> End Level 3 Node: -11116: Wrong parameter type. Expected: <description>
Start Level 2 Node: From -11200 to -11399 From -11200 to -11399 End Level 2 Node: From -11200 to -11399
Start Level 2 Node: From -22000 to -22999 From -22000 to -22999 End Level 2 Node: From -22000 to -22999
Start Level 3 Node: -22000: Null values not allowed on more than one LOB column -22000: Null values not allowed on more than one LOB column End Level 3 Node: -22000: Null values not allowed on more than one LOB column
Start Level 3 Node: -22005: Connection timeout occurred. Session reconnected -22005: Connection timeout occurred. Session reconnected End Level 3 Node: -22005: Connection timeout occurred. Session reconnected
Start Level 2 Node: From -23000 to -23999 From -23000 to -23999 End Level 2 Node: From -23000 to -23999
Start Level 3 Node: -23050: Unknown error -23050: Unknown error End Level 3 Node: -23050: Unknown error
Start Level 3 Node: -23051: Could not load system tables for SQL Studio -23051: Could not load system tables for SQL Studio End Level 3 Node: -23051: Could not load system tables for SQL Studio
Start Level 3 Node: -23052: Could not save object data -23052: Could not save object data End Level 3 Node: -23052: Could not save object data
Start Level 3 Node: -23054: Maximum numbers of windows reached -23054: Maximum numbers of windows reached End Level 3 Node: -23054: Maximum numbers of windows reached
Start Level 3 Node: -23055: Connection failed -23055: Connection failed End Level 3 Node: -23055: Connection failed
Start Level 3 Node: -23056: User is exclusive -23056: User is exclusive End Level 3 Node: -23056: User is exclusive
Start Level 3 Node: -23057: Reconnect failed -23057: Reconnect failed End Level 3 Node: -23057: Reconnect failed
Start Level 3 Node: -23058: No database connection -23058: No database connection End Level 3 Node: -23058: No database connection
Start Level 3 Node: -23059: You do not have the permission to modify this object -23059: You do not have the permission to modify this object End Level 3 Node: -23059: You do not have the permission to modify this object
Start Level 3 Node: -23060: You do not have the permission to delete this object -23060: You do not have the permission to delete this object End Level 3 Node: -23060: You do not have the permission to delete this object
Start Level 3 Node: -23061: Cannot analyze error -23061: Cannot analyze error End Level 3 Node: -23061: Cannot analyze error
Start Level 3 Node: -23062: Could not open connection -23062: Could not open connection End Level 3 Node: -23062: Could not open connection
Start Level 3 Node: -23063: Could not create Global Com Object -23063: Could not create Global Com Object End Level 3 Node: -23063: Could not create Global Com Object
Start Level 3 Node: -23064: Import failed -23064: Import failed End Level 3 Node: -23064: Import failed
Start Level 3 Node: -23070: Cannot open object created by newer SQL Studio Version -23070: Cannot open object created by newer SQL Studio Version End Level 3 Node: -23070: Cannot open object created by newer SQL Studio Version
Start Level 3 Node: -23071: Convert object created by older SQL Studio Version -23071: Convert object created by older SQL Studio Version End Level 3 Node: -23071: Convert object created by older SQL Studio Version
Start Level 3 Node: -23072: Representation of null value too long -23072: Representation of null value too long End Level 3 Node: -23072: Representation of null value too long
Start Level 3 Node: -23100: OLE Error! Please restart SQL Studio -23100: OLE Error! Please restart SQL Studio End Level 3 Node: -23100: OLE Error! Please restart SQL Studio
Start Level 3 Node: -23101: Data in clipboard truncated -23101: Data in clipboard truncated End Level 3 Node: -23101: Data in clipboard truncated
Start Level 3 Node: -23102: Failed to create DBC Pool -23102: Failed to create DBC Pool End Level 3 Node: -23102: Failed to create DBC Pool
Start Level 3 Node: -23103: Failed to create DBC Handle -23103: Failed to create DBC Handle End Level 3 Node: -23103: Failed to create DBC Handle
Start Level 3 Node: -23104: Could not load table definition -23104: Could not load table definition End Level 3 Node: -23104: Could not load table definition
Start Level 3 Node: -23200: No data sources -23200: No data sources End Level 3 Node: -23200: No data sources
Start Level 3 Node: -23201: No ODBC driver -23201: No ODBC driver End Level 3 Node: -23201: No ODBC driver
Start Level 3 Node: -23202: Could not load object description -23202: Could not load object description End Level 3 Node: -23202: Could not load object description
Start Level 3 Node: -23203: Cannot show tables of users, wrong database version! -23203: Cannot show tables of users, wrong database version! End Level 3 Node: -23203: Cannot show tables of users, wrong database version!
Start Level 2 Node: From -24000 to -24999 From -24000 to -24999 End Level 2 Node: From -24000 to -24999
Start Level 3 Node: -24905: ERR_NOEBIDLIST: no information on external backup IDs av -24905: ERR_NOEBIDLIST: no information on external backup IDs av End Level 3 Node: -24905: ERR_NOEBIDLIST: no information on external backup IDs av
Start Level 3 Node: -24906: ERR_EBFDIRTY: invalid format of external backup history -24906: ERR_EBFDIRTY: invalid format of external backup history End Level 3 Node: -24906: ERR_EBFDIRTY: invalid format of external backup history
Start Level 3 Node: -24907: ERR_DBAWRONG - wrong SYSDBA -24907: ERR_DBAWRONG - wrong SYSDBA End Level 3 Node: -24907: ERR_DBAWRONG - wrong SYSDBA
Start Level 3 Node: -24909: ERR_DBAUNKNOWN - SYSDBA unknown -24909: ERR_DBAUNKNOWN - SYSDBA unknown End Level 3 Node: -24909: ERR_DBAUNKNOWN - SYSDBA unknown
Start Level 3 Node: -24910: ERR_PARAMVER - wrong version of param help file (cserv.p -24910: ERR_PARAMVER - wrong version of param help file (cserv.p End Level 3 Node: -24910: ERR_PARAMVER - wrong version of param help file (cserv.p
Start Level 3 Node: -24911: ERR_INVDBNAME - database name <database_name> is reserve -24911: ERR_INVDBNAME - database name <database_name> is reserve End Level 3 Node: -24911: ERR_INVDBNAME - database name <database_name> is reserve
Start Level 3 Node: -24912: ERR_WRONGINST - DBM server instroot is <inst_path> -24912: ERR_WRONGINST - DBM server instroot is <inst_path> End Level 3 Node: -24912: ERR_WRONGINST - DBM server instroot is <inst_path>
Start Level 3 Node: -24913: ERR_SERVICEDB - can not register service kernel for <ins -24913: ERR_SERVICEDB - can not register service kernel for <ins End Level 3 Node: -24913: ERR_SERVICEDB - can not register service kernel for <ins
Start Level 3 Node: -24914: ERR_KEYEXISTS - installation key <key> exists -24914: ERR_KEYEXISTS - installation key <key> exists End Level 3 Node: -24914: ERR_KEYEXISTS - installation key <key> exists
Start Level 3 Node: -24915: ERR_NOADDD - configuration update not allowed (param fil -24915: ERR_NOADDD - configuration update not allowed (param fil End Level 3 Node: -24915: ERR_NOADDD - configuration update not allowed (param fil
Start Level 3 Node: -24916: ERR_MAXVOLCNT - max volume count exceeded -24916: ERR_MAXVOLCNT - max volume count exceeded End Level 3 Node: -24916: ERR_MAXVOLCNT - max volume count exceeded
Start Level 3 Node: -24917: ERR_MAXDATA - max data size exceeded -24917: ERR_MAXDATA - max data size exceeded End Level 3 Node: -24917: ERR_MAXDATA - max data size exceeded
Start Level 3 Node: -24918: ERR_MISSMIRR - missing data for mirror volume -24918: ERR_MISSMIRR - missing data for mirror volume End Level 3 Node: -24918: ERR_MISSMIRR - missing data for mirror volume
Start Level 3 Node: -24919: ERR_CLEANUP: cannot free all operational resources after -24919: ERR_CLEANUP: cannot free all operational resources after End Level 3 Node: -24919: ERR_CLEANUP: cannot free all operational resources after
Start Level 3 Node: -24920: ERR_BACKUPOP: backup operation was unsuccessful -24920: ERR_BACKUPOP: backup operation was unsuccessful End Level 3 Node: -24920: ERR_BACKUPOP: backup operation was unsuccessful
Start Level 3 Node: -24921: ERR_POSTOP: error while finishing backup operation -24921: ERR_POSTOP: error while finishing backup operation End Level 3 Node: -24921: ERR_POSTOP: error while finishing backup operation
Start Level 3 Node: -24922: ERR_OPCHK: cannot check state of backup operation -24922: ERR_OPCHK: cannot check state of backup operation End Level 3 Node: -24922: ERR_OPCHK: cannot check state of backup operation
Start Level 3 Node: -24923: ERR_TOOLREQ: error while starting external backup tool -24923: ERR_TOOLREQ: error while starting external backup tool End Level 3 Node: -24923: ERR_TOOLREQ: error while starting external backup tool
Start Level 3 Node: -24924: ERR_DBREQ: cannot start database kernel request -24924: ERR_DBREQ: cannot start database kernel request End Level 3 Node: -24924: ERR_DBREQ: cannot start database kernel request
Start Level 3 Node: -24925: ERR_PREPARE: preparation of backup operation failed -24925: ERR_PREPARE: preparation of backup operation failed End Level 3 Node: -24925: ERR_PREPARE: preparation of backup operation failed
Start Level 3 Node: -24926: ERR_MEDIUMCHK: medium cannot be used with this external -24926: ERR_MEDIUMCHK: medium cannot be used with this external End Level 3 Node: -24926: ERR_MEDIUMCHK: medium cannot be used with this external
Start Level 3 Node: -24927: ERR_TOOLCHK: external backup tool not found -24927: ERR_TOOLCHK: external backup tool not found End Level 3 Node: -24927: ERR_TOOLCHK: external backup tool not found
Start Level 3 Node: -24928: ERR_NOREPLY - no reply available -24928: ERR_NOREPLY - no reply available End Level 3 Node: -24928: ERR_NOREPLY - no reply available
Start Level 3 Node: -24929: ERR_USRFRM - invalid user record format -24929: ERR_USRFRM - invalid user record format End Level 3 Node: -24929: ERR_USRFRM - invalid user record format
Start Level 3 Node: -24930: ERR_XPVALUESET - parameter value not in value set -24930: ERR_XPVALUESET - parameter value not in value set End Level 3 Node: -24930: ERR_XPVALUESET - parameter value not in value set
Start Level 3 Node: -24931: ERR_XPMIN - parameter value smaller than minimum allowed -24931: ERR_XPMIN - parameter value smaller than minimum allowed End Level 3 Node: -24931: ERR_XPMIN - parameter value smaller than minimum allowed
Start Level 3 Node: -24932: ERR_XPMIN - parameter value smaller than minimum allowed -24932: ERR_XPMIN - parameter value smaller than minimum allowed End Level 3 Node: -24932: ERR_XPMIN - parameter value smaller than minimum allowed
Start Level 3 Node: -24933: ERR_NOSERVICESESSION - no service kernel available -24933: ERR_NOSERVICESESSION - no service kernel available End Level 3 Node: -24933: ERR_NOSERVICESESSION - no service kernel available
Start Level 3 Node: -24934: ERR_VERSION - incompatible versions (param and kernel) -24934: ERR_VERSION - incompatible versions (param and kernel) End Level 3 Node: -24934: ERR_VERSION - incompatible versions (param and kernel)
Start Level 3 Node: -24935: ERR_NOUSERS - no users found -24935: ERR_NOUSERS - no users found End Level 3 Node: -24935: ERR_NOUSERS - no users found
Start Level 3 Node: -24936: ERR_DBNORUN - database is not running -24936: ERR_DBNORUN - database is not running End Level 3 Node: -24936: ERR_DBNORUN - database is not running
Start Level 3 Node: -24937: ERR_MISSRIGHT - no server rights for this command -24937: ERR_MISSRIGHT - no server rights for this command End Level 3 Node: -24937: ERR_MISSRIGHT - no server rights for this command
Start Level 3 Node: -24938: ERR_NOENTRY - no entry found -24938: ERR_NOENTRY - no entry found End Level 3 Node: -24938: ERR_NOENTRY - no entry found
Start Level 3 Node: -24939: ERR_LASTREG - cannot delete last registration of instanc -24939: ERR_LASTREG - cannot delete last registration of instanc End Level 3 Node: -24939: ERR_LASTREG - cannot delete last registration of instanc
Start Level 3 Node: -24940: ERR_NEEDSYSLOGON - system logon required -24940: ERR_NEEDSYSLOGON - system logon required End Level 3 Node: -24940: ERR_NEEDSYSLOGON - system logon required
Start Level 3 Node: -24941: ERR_NEEDLOGON - DBM server logon required -24941: ERR_NEEDLOGON - DBM server logon required End Level 3 Node: -24941: ERR_NEEDLOGON - DBM server logon required
Start Level 3 Node: -24942: ERR_USRDELSDBA - cannot delete sysdba -24942: ERR_USRDELSDBA - cannot delete sysdba End Level 3 Node: -24942: ERR_USRDELSDBA - cannot delete sysdba
Start Level 3 Node: -24943: ERR_USRDELDBM - cannot delete DBM operator -24943: ERR_USRDELDBM - cannot delete DBM operator End Level 3 Node: -24943: ERR_USRDELDBM - cannot delete DBM operator
Start Level 3 Node: -24944: ERR_USRDELSELF - cannot delete current user -24944: ERR_USRDELSELF - cannot delete current user End Level 3 Node: -24944: ERR_USRDELSELF - cannot delete current user
Start Level 3 Node: -24945: ERR_TOFEWPARAM - too few parameters -24945: ERR_TOFEWPARAM - too few parameters End Level 3 Node: -24945: ERR_TOFEWPARAM - too few parameters
Start Level 3 Node: -24946: ERR_TOMANYPARAM - too many parameters -24946: ERR_TOMANYPARAM - too many parameters End Level 3 Node: -24946: ERR_TOMANYPARAM - too many parameters
Start Level 3 Node: -24947: ERR_DBNAME - do not use dbname -24947: ERR_DBNAME - do not use dbname End Level 3 Node: -24947: ERR_DBNAME - do not use dbname
Start Level 3 Node: -24948: ERR_NODBNAME - database name required -24948: ERR_NODBNAME - database name required End Level 3 Node: -24948: ERR_NODBNAME - database name required
Start Level 3 Node: -24949: ERR_USREXISTS - user entry already exists -24949: ERR_USREXISTS - user entry already exists End Level 3 Node: -24949: ERR_USREXISTS - user entry already exists
Start Level 3 Node: -24950: ERR_USRFAIL - user authorization failed -24950: ERR_USRFAIL - user authorization failed End Level 3 Node: -24950: ERR_USRFAIL - user authorization failed
Start Level 3 Node: -24951: ERR_USRREAD - could not read user data -24951: ERR_USRREAD - could not read user data End Level 3 Node: -24951: ERR_USRREAD - could not read user data
Start Level 3 Node: -24952: ERR_USRSAVE - could not save user data -24952: ERR_USRSAVE - could not save user data End Level 3 Node: -24952: ERR_USRSAVE - could not save user data
Start Level 3 Node: -24953: ERR_DBEXIST - database instance already exists -24953: ERR_DBEXIST - database instance already exists End Level 3 Node: -24953: ERR_DBEXIST - database instance already exists
Start Level 3 Node: -24954: ERR_BANOAUTOMED - no autolog medium found in media list -24954: ERR_BANOAUTOMED - no autolog medium found in media list End Level 3 Node: -24954: ERR_BANOAUTOMED - no autolog medium found in media list
Start Level 3 Node: -24955: ERR_BANOSAVETYPE - backup type not defined -24955: ERR_BANOSAVETYPE - backup type not defined End Level 3 Node: -24955: ERR_BANOSAVETYPE - backup type not defined
Start Level 3 Node: -24956: ERR_BASAVETYPECON - backup type conflicts with medium de -24956: ERR_BASAVETYPECON - backup type conflicts with medium de End Level 3 Node: -24956: ERR_BASAVETYPECON - backup type conflicts with medium de
Start Level 3 Node: -24957: ERR_NOUSER - required user not set -24957: ERR_NOUSER - required user not set End Level 3 Node: -24957: ERR_NOUSER - required user not set
Start Level 3 Node: -24958: ERR_BAOVERWRITE - file already exists, cannot overwrite -24958: ERR_BAOVERWRITE - file already exists, cannot overwrite End Level 3 Node: -24958: ERR_BAOVERWRITE - file already exists, cannot overwrite
Start Level 3 Node: -24959: ERR_XPOVERFLOW - value out of margin -24959: ERR_XPOVERFLOW - value out of margin End Level 3 Node: -24959: ERR_XPOVERFLOW - value out of margin
Start Level 3 Node: -24960: ERR_DBRUN - database is running -24960: ERR_DBRUN - database is running End Level 3 Node: -24960: ERR_DBRUN - database is running
Start Level 3 Node: -24961: ERR_STATE - cannot determine current db state -24961: ERR_STATE - cannot determine current db state End Level 3 Node: -24961: ERR_STATE - cannot determine current db state
Start Level 3 Node: -24962: ERR_VOLTYPE - wrong volume type -24962: ERR_VOLTYPE - wrong volume type End Level 3 Node: -24962: ERR_VOLTYPE - wrong volume type
Start Level 3 Node: -24963: ERR_VOLCHECK - error while checking volume -24963: ERR_VOLCHECK - error while checking volume End Level 3 Node: -24963: ERR_VOLCHECK - error while checking volume
Start Level 3 Node: -24964: ERR_EXECUTE - error in program execution -24964: ERR_EXECUTE - error in program execution End Level 3 Node: -24964: ERR_EXECUTE - error in program execution
Start Level 3 Node: -24965: ERR_SYSLOGON - logon to system failed -24965: ERR_SYSLOGON - logon to system failed End Level 3 Node: -24965: ERR_SYSLOGON - logon to system failed
Start Level 3 Node: -24966: ERR_LOGON - logon to DBM server failed -24966: ERR_LOGON - logon to DBM server failed End Level 3 Node: -24966: ERR_LOGON - logon to DBM server failed
Start Level 3 Node: -24967: ERR_SYSTEM - system call error -24967: ERR_SYSTEM - system call error End Level 3 Node: -24967: ERR_SYSTEM - system call error
Start Level 3 Node: -24968: ERR_XPREADONLY - parameter is read only -24968: ERR_XPREADONLY - parameter is read only End Level 3 Node: -24968: ERR_XPREADONLY - parameter is read only
Start Level 3 Node: -24969: ERR_XPDIRTY - param file is dirty -24969: ERR_XPDIRTY - param file is dirty End Level 3 Node: -24969: ERR_XPDIRTY - param file is dirty
Start Level 3 Node: -24970: ERR_XPNOMODIFY - parameter must not be modified -24970: ERR_XPNOMODIFY - parameter must not be modified End Level 3 Node: -24970: ERR_XPNOMODIFY - parameter must not be modified
Start Level 3 Node: -24971: ERR_XPNOCHECK - no running parameter check -24971: ERR_XPNOCHECK - no running parameter check End Level 3 Node: -24971: ERR_XPNOCHECK - no running parameter check
Start Level 3 Node: -24972: ERR_XPINVCONF - invalid value -24972: ERR_XPINVCONF - invalid value End Level 3 Node: -24972: ERR_XPINVCONF - invalid value
Start Level 3 Node: -24973: ERR_XPCHECK - param check failure/request -24973: ERR_XPCHECK - param check failure/request End Level 3 Node: -24973: ERR_XPCHECK - param check failure/request
Start Level 3 Node: -24974: ERR_XPSESSION - param session active -24974: ERR_XPSESSION - param session active End Level 3 Node: -24974: ERR_XPSESSION - param session active
Start Level 3 Node: -24975: ERR_NOXPSESSION - param session inactive -24975: ERR_NOXPSESSION - param session inactive End Level 3 Node: -24975: ERR_NOXPSESSION - param session inactive
Start Level 3 Node: -24976: ERR_PARAMEXIST - param file of database already exists -24976: ERR_PARAMEXIST - param file of database already exists End Level 3 Node: -24976: ERR_PARAMEXIST - param file of database already exists
Start Level 3 Node: -24977: ERR_COMMAND - unknown command <command> -24977: ERR_COMMAND - unknown command <command> End Level 3 Node: -24977: ERR_COMMAND - unknown command <command>
Start Level 3 Node: -24978: ERR_XPSYNTAX - xparam syntax error -24978: ERR_XPSYNTAX - xparam syntax error End Level 3 Node: -24978: ERR_XPSYNTAX - xparam syntax error
Start Level 3 Node: -24979: ERR_XPNOTFOUND - parameter not found -24979: ERR_XPNOTFOUND - parameter not found End Level 3 Node: -24979: ERR_XPNOTFOUND - parameter not found
Start Level 3 Node: -24980: ERR_NOHELP - xparam help file not found -24980: ERR_NOHELP - xparam help file not found End Level 3 Node: -24980: ERR_NOHELP - xparam help file not found
Start Level 3 Node: -24981: ERR_HIENTRYNOTFOUND - backup history entry not found -24981: ERR_HIENTRYNOTFOUND - backup history entry not found End Level 3 Node: -24981: ERR_HIENTRYNOTFOUND - backup history entry not found
Start Level 3 Node: -24982: ERR_NOHISTORY - backup history file not found -24982: ERR_NOHISTORY - backup history file not found End Level 3 Node: -24982: ERR_NOHISTORY - backup history file not found
Start Level 3 Node: -24983: ERR_BANOVALIDTYPE - invalid backup type -24983: ERR_BANOVALIDTYPE - invalid backup type End Level 3 Node: -24983: ERR_BANOVALIDTYPE - invalid backup type
Start Level 3 Node: -24984: ERR_MENOVALID - invalid medium definition -24984: ERR_MENOVALID - invalid medium definition End Level 3 Node: -24984: ERR_MENOVALID - invalid medium definition
Start Level 3 Node: -24985: ERR_MENOTFOUND - medium not found -24985: ERR_MENOTFOUND - medium not found End Level 3 Node: -24985: ERR_MENOTFOUND - medium not found
Start Level 3 Node: -24986: ERR_NOMEDIA - media file not found -24986: ERR_NOMEDIA - media file not found End Level 3 Node: -24986: ERR_NOMEDIA - media file not found
Start Level 3 Node: -24987: ERR_TOSMALL - packet size too small for answer -24987: ERR_TOSMALL - packet size too small for answer End Level 3 Node: -24987: ERR_TOSMALL - packet size too small for answer
Start Level 3 Node: -24988: ERR_SQL - sql error -24988: ERR_SQL - sql error End Level 3 Node: -24988: ERR_SQL - sql error
Start Level 3 Node: -24989: ERR_NOHISTORYSESSION - no backup history session availab -24989: ERR_NOHISTORYSESSION - no backup history session availab End Level 3 Node: -24989: ERR_NOHISTORYSESSION - no backup history session availab
Start Level 3 Node: -24990: ERR_ NOBACKUPSESSION - no backup session available -24990: ERR_ NOBACKUPSESSION - no backup session available End Level 3 Node: -24990: ERR_ NOBACKUPSESSION - no backup session available
Start Level 3 Node: -24993: ERR_RTEEXT - runtime environment error -24993: ERR_RTEEXT - runtime environment error End Level 3 Node: -24993: ERR_RTEEXT - runtime environment error
Start Level 3 Node: -24994: ERR_RTE - runtime environment error -24994: ERR_RTE - runtime environment error End Level 3 Node: -24994: ERR_RTE - runtime environment error
Start Level 3 Node: -24995: ERR_MEM - memory allocation error -24995: ERR_MEM - memory allocation error End Level 3 Node: -24995: ERR_MEM - memory allocation error
Start Level 3 Node: -24996: ERR_PARAM - wrong parameters -24996: ERR_PARAM - wrong parameters End Level 3 Node: -24996: ERR_PARAM - wrong parameters
Start Level 3 Node: -24997: ERR_FILE - file handling error -24997: ERR_FILE - file handling error End Level 3 Node: -24997: ERR_FILE - file handling error
Start Level 3 Node: -24998: ERR_NOTIMPL - sorry, command not yet implemented -24998: ERR_NOTIMPL - sorry, command not yet implemented End Level 3 Node: -24998: ERR_NOTIMPL - sorry, command not yet implemented
Start Level 3 Node: -24999: ERR - common error -24999: ERR - common error End Level 3 Node: -24999: ERR - common error
Start Level 2 Node: From -25000 to -25999 From -25000 to -25999 End Level 2 Node: From -25000 to -25999
Start Level 3 Node: -25002: No database connection possible - missing database name; -25002: No database connection possible - missing database name; End Level 3 Node: -25002: No database connection possible - missing database name;
Start Level 3 Node: -25003: Getting hostname of database host failed: <error_code> = -25003: Getting hostname of database host failed: <error_code> = End Level 3 Node: -25003: Getting hostname of database host failed: <error_code> =
Start Level 3 Node: -25004: A connection to the database could not be established: < -25004: A connection to the database could not be established: < End Level 3 Node: -25004: A connection to the database could not be established: <
Start Level 3 Node: -25005: User (<user_name>) logon to database failed: <error_text -25005: User (<user_name>) logon to database failed: <error_text End Level 3 Node: -25005: User (<user_name>) logon to database failed: <error_text
Start Level 3 Node: -25006: Connect with userkey '<user_key>' failed: <error_text> -25006: Connect with userkey '<user_key>' failed: <error_text> End Level 3 Node: -25006: Connect with userkey '<user_key>' failed: <error_text>
Start Level 3 Node: -25007: No connection to server db '<database_name>' established -25007: No connection to server db '<database_name>' established End Level 3 Node: -25007: No connection to server db '<database_name>' established
Start Level 3 Node: -25008: Logon failure; previous user's (<user_name>) connection -25008: Logon failure; previous user's (<user_name>) connection End Level 3 Node: -25008: Logon failure; previous user's (<user_name>) connection
Start Level 3 Node: -25009: Failure in db communication (<type>): <return_code> = <e -25009: Failure in db communication (<type>): <return_code> = <e End Level 3 Node: -25009: Failure in db communication (<type>): <return_code> = <e
Start Level 3 Node: -25010: <SQL_error_text> -25010: <SQL_error_text> End Level 3 Node: -25010: <SQL_error_text>
Start Level 3 Node: -25011: Error executing internal SQL statement '<statement>' : ' -25011: Error executing internal SQL statement '<statement>' : ' End Level 3 Node: -25011: Error executing internal SQL statement '<statement>' : '
Start Level 3 Node: -25012: No user connection to server db established -25012: No user connection to server db established End Level 3 Node: -25012: No user connection to server db established
Start Level 3 Node: -25018: Error changing log file owner to current user '<user_nam -25018: Error changing log file owner to current user '<user_nam End Level 3 Node: -25018: Error changing log file owner to current user '<user_nam
Start Level 3 Node: -25019: Error opening server log file '<log_file_name>' (<error_ -25019: Error opening server log file '<log_file_name>' (<error_ End Level 3 Node: -25019: Error opening server log file '<log_file_name>' (<error_
Start Level 3 Node: -25020: No more memory available -25020: No more memory available End Level 3 Node: -25020: No more memory available
Start Level 3 Node: -25021: Error switching connected user to <user_name> : <error_t -25021: Error switching connected user to <user_name> : <error_t End Level 3 Node: -25021: Error switching connected user to <user_name> : <error_t
Start Level 3 Node: -25022: Received cancel request; stopping execution -25022: Received cancel request; stopping execution End Level 3 Node: -25022: Received cancel request; stopping execution
Start Level 3 Node: -25024: Error switching current schema to <schema_name> ; <error -25024: Error switching current schema to <schema_name> ; <error End Level 3 Node: -25024: Error switching current schema to <schema_name> ; <error
Start Level 3 Node: -25109: Command not implemented -25109: Command not implemented End Level 3 Node: -25109: Command not implemented
Start Level 3 Node: -25201: Column '<column_name>' - INTEGER field: 1, 2 or 4 bytes -25201: Column '<column_name>' - INTEGER field: 1, 2 or 4 bytes End Level 3 Node: -25201: Column '<column_name>' - INTEGER field: 1, 2 or 4 bytes
Start Level 3 Node: -25202: Column '<column_name>' - REAL field: 4 or 8 bytes long ( -25202: Column '<column_name>' - REAL field: 4 or 8 bytes long ( End Level 3 Node: -25202: Column '<column_name>' - REAL field: 4 or 8 bytes long (
Start Level 3 Node: -25203: Column '<column_name>' - DECIMAL field: 20 bytes maximum -25203: Column '<column_name>' - DECIMAL field: 20 bytes maximum End Level 3 Node: -25203: Column '<column_name>' - DECIMAL field: 20 bytes maximum
Start Level 3 Node: -25204: Column '<column_name>' - ZONED field: 20 bytes maximum ( -25204: Column '<column_name>' - ZONED field: 20 bytes maximum ( End Level 3 Node: -25204: Column '<column_name>' - ZONED field: 20 bytes maximum (
Start Level 3 Node: -25205: Declare USAGE between 50% and 100% -25205: Declare USAGE between 50% and 100% End Level 3 Node: -25205: Declare USAGE between 50% and 100%
Start Level 3 Node: -25206: USAGE value of '0 rows' not allowed -25206: USAGE value of '0 rows' not allowed End Level 3 Node: -25206: USAGE value of '0 rows' not allowed
Start Level 3 Node: -25207: USAGE value of row(s) too high; maximum number of record -25207: USAGE value of row(s) too high; maximum number of record End Level 3 Node: -25207: USAGE value of row(s) too high; maximum number of record
Start Level 3 Node: -25208: Invalid position specification (negative values not allo -25208: Invalid position specification (negative values not allo End Level 3 Node: -25208: Invalid position specification (negative values not allo
Start Level 3 Node: -25209: Invalid FRACTION specification (neg. vals not allowed) -25209: Invalid FRACTION specification (neg. vals not allowed) End Level 3 Node: -25209: Invalid FRACTION specification (neg. vals not allowed)
Start Level 3 Node: -25210: Invalid SCALE spec. Scale range: -127 <= SCALE <= 127 -25210: Invalid SCALE spec. Scale range: -127 <= SCALE <= 127 End Level 3 Node: -25210: Invalid SCALE spec. Scale range: -127 <= SCALE <= 127
Start Level 3 Node: -25211: Invalid ROUND specification (0 <= ROUND_value <= 18) -25211: Invalid ROUND specification (0 <= ROUND_value <= 18) End Level 3 Node: -25211: Invalid ROUND specification (0 <= ROUND_value <= 18)
Start Level 3 Node: -25212: Invalid TRUNC specification (0 <= TRUNC_value <= 18) -25212: Invalid TRUNC specification (0 <= TRUNC_value <= 18) End Level 3 Node: -25212: Invalid TRUNC specification (0 <= TRUNC_value <= 18)
Start Level 3 Node: -25213: Invalid file format specification: given formats rule ea -25213: Invalid file format specification: given formats rule ea End Level 3 Node: -25213: Invalid file format specification: given formats rule ea
Start Level 3 Node: -25214: The specification of a separator/delimiter is not allowe -25214: The specification of a separator/delimiter is not allowe End Level 3 Node: -25214: The specification of a separator/delimiter is not allowe
Start Level 3 Node: -25216: File option FWV required -25216: File option FWV required End Level 3 Node: -25216: File option FWV required
Start Level 3 Node: -25217: End position for column <column_name> lower than start p -25217: End position for column <column_name> lower than start p End Level 3 Node: -25217: End position for column <column_name> lower than start p
Start Level 3 Node: -25218: No column specified but file format is FWV -25218: No column specified but file format is FWV End Level 3 Node: -25218: No column specified but file format is FWV
Start Level 3 Node: -25219: Columns have to be specified in left-to-right order (pos -25219: Columns have to be specified in left-to-right order (pos End Level 3 Node: -25219: Columns have to be specified in left-to-right order (pos
Start Level 3 Node: -25220: Wrong separator/delimiter specification -25220: Wrong separator/delimiter specification End Level 3 Node: -25220: Wrong separator/delimiter specification
Start Level 3 Node: -25221: Wrong decimal specification -25221: Wrong decimal specification End Level 3 Node: -25221: Wrong decimal specification
Start Level 3 Node: -25222: Wrong Boolean specification -25222: Wrong Boolean specification End Level 3 Node: -25222: Wrong Boolean specification
Start Level 3 Node: -25223: Wrong null specification -25223: Wrong null specification End Level 3 Node: -25223: Wrong null specification
Start Level 3 Node: -25225: Wrong number specification -25225: Wrong number specification End Level 3 Node: -25225: Wrong number specification
Start Level 3 Node: -25226: A maximum of 1024 columns can be specified for one table -25226: A maximum of 1024 columns can be specified for one table End Level 3 Node: -25226: A maximum of 1024 columns can be specified for one table
Start Level 3 Node: -25227: Specification of conditions exceeds allowed count of con -25227: Specification of conditions exceeds allowed count of con End Level 3 Node: -25227: Specification of conditions exceeds allowed count of con
Start Level 3 Node: -25228: Incorrect date-time format, all patterns accepted in the -25228: Incorrect date-time format, all patterns accepted in the End Level 3 Node: -25228: Incorrect date-time format, all patterns accepted in the
Start Level 3 Node: -25229: Incorrect comparison operator in condition -25229: Incorrect comparison operator in condition End Level 3 Node: -25229: Incorrect comparison operator in condition
Start Level 3 Node: -25230: Cannot execute command DATAEXTRACT FOR <load_type>; spec -25230: Cannot execute command DATAEXTRACT FOR <load_type>; spec End Level 3 Node: -25230: Cannot execute command DATAEXTRACT FOR <load_type>; spec
Start Level 3 Node: -25231: ROUND or TRUNC specification not allowed for this column -25231: ROUND or TRUNC specification not allowed for this column End Level 3 Node: -25231: ROUND or TRUNC specification not allowed for this column
Start Level 3 Node: -25232: Wrong keyword -25232: Wrong keyword End Level 3 Node: -25232: Wrong keyword
Start Level 3 Node: -25233: Some column descriptions with end position but file form -25233: Some column descriptions with end position but file form End Level 3 Node: -25233: Some column descriptions with end position but file form
Start Level 3 Node: -25234: Some column descriptions without end position but file f -25234: Some column descriptions without end position but file f End Level 3 Node: -25234: Some column descriptions without end position but file f
Start Level 3 Node: -25235: Some positions specified more than once -25235: Some positions specified more than once End Level 3 Node: -25235: Some positions specified more than once
Start Level 3 Node: -25236: Some positions overlap -25236: Some positions overlap End Level 3 Node: -25236: Some positions overlap
Start Level 3 Node: -25237: Cannot execute DATAUPDATE command; specify set columns -25237: Cannot execute DATAUPDATE command; specify set columns End Level 3 Node: -25237: Cannot execute DATAUPDATE command; specify set columns
Start Level 3 Node: -25238: Cannot execute DATAUPDATE command; specify access column -25238: Cannot execute DATAUPDATE command; specify access column End Level 3 Node: -25238: Cannot execute DATAUPDATE command; specify access column
Start Level 3 Node: -25239: Specified value '<value>' is not a valid integer -25239: Specified value '<value>' is not a valid integer End Level 3 Node: -25239: Specified value '<value>' is not a valid integer
Start Level 3 Node: -25240: Incomplete logon parameters; password missing -25240: Incomplete logon parameters; password missing End Level 3 Node: -25240: Incomplete logon parameters; password missing
Start Level 3 Node: -25242: Database identifier too long -25242: Database identifier too long End Level 3 Node: -25242: Database identifier too long
Start Level 3 Node: -25243: Error parsing <time> mask: <error_text> -25243: Error parsing <time> mask: <error_text> End Level 3 Node: -25243: Error parsing <time> mask: <error_text>
Start Level 3 Node: -25244: Loader CONSTRAINT violation: <error_text> -25244: Loader CONSTRAINT violation: <error_text> End Level 3 Node: -25244: Loader CONSTRAINT violation: <error_text>
Start Level 3 Node: -25245: Error: specify CATALOG, DATA, and PACKAGE stream -25245: Error: specify CATALOG, DATA, and PACKAGE stream End Level 3 Node: -25245: Error: specify CATALOG, DATA, and PACKAGE stream
Start Level 3 Node: -25247: Error: specify CATALOG or DATA stream -25247: Error: specify CATALOG or DATA stream End Level 3 Node: -25247: Error: specify CATALOG or DATA stream
Start Level 3 Node: -25249: Invalid Isolation Level specification: possible values a -25249: Invalid Isolation Level specification: possible values a End Level 3 Node: -25249: Invalid Isolation Level specification: possible values a
Start Level 3 Node: -25250: Error building URI for encrypted connection: <error_text -25250: Error building URI for encrypted connection: <error_text End Level 3 Node: -25250: Error building URI for encrypted connection: <error_text
Start Level 3 Node: -25251: Code page to set (<code_page_name>) not found in system -25251: Code page to set (<code_page_name>) not found in system End Level 3 Node: -25251: Code page to set (<code_page_name>) not found in system
Start Level 3 Node: -25281: Syntax error at position <position> (<error_text>). Chec -25281: Syntax error at position <position> (<error_text>). Chec End Level 3 Node: -25281: Syntax error at position <position> (<error_text>). Chec
Start Level 3 Node: -25301: Invalid input for date or time column: <input_value> -25301: Invalid input for date or time column: <input_value> End Level 3 Node: -25301: Invalid input for date or time column: <input_value>
Start Level 3 Node: -25302: This value is not a valid number: '<input_value>' -25302: This value is not a valid number: '<input_value>' End Level 3 Node: -25302: This value is not a valid number: '<input_value>'
Start Level 3 Node: -25303: Input value does not match key order or range specificat -25303: Input value does not match key order or range specificat End Level 3 Node: -25303: Input value does not match key order or range specificat
Start Level 3 Node: -25304: Columns for key (KEY) or search condition missing -25304: Columns for key (KEY) or search condition missing End Level 3 Node: -25304: Columns for key (KEY) or search condition missing
Start Level 3 Node: -25305: Data for key columns exceeds allowed key length -25305: Data for key columns exceeds allowed key length End Level 3 Node: -25305: Data for key columns exceeds allowed key length
Start Level 3 Node: -25306: The value is not a valid HEX constant: <input_value> -25306: The value is not a valid HEX constant: <input_value> End Level 3 Node: -25306: The value is not a valid HEX constant: <input_value>
Start Level 3 Node: -25308: CONSTRAINT condition violated -25308: CONSTRAINT condition violated End Level 3 Node: -25308: CONSTRAINT condition violated
Start Level 3 Node: -25309: Invalid input for BOOLEAN column: <input_value> -25309: Invalid input for BOOLEAN column: <input_value> End Level 3 Node: -25309: Invalid input for BOOLEAN column: <input_value>
Start Level 3 Node: -25310: Column '<column_name>' must not contain NULL values -25310: Column '<column_name>' must not contain NULL values End Level 3 Node: -25310: Column '<column_name>' must not contain NULL values
Start Level 3 Node: -25311: No Data for NOT NULL - column without default (<column_n -25311: No Data for NOT NULL - column without default (<column_n End Level 3 Node: -25311: No Data for NOT NULL - column without default (<column_n
Start Level 3 Node: -25313: Overflow occurred, execution aborted -25313: Overflow occurred, execution aborted End Level 3 Node: -25313: Overflow occurred, execution aborted
Start Level 3 Node: -25314: Fractional part too small for column '<column_name>', mi -25314: Fractional part too small for column '<column_name>', mi End Level 3 Node: -25314: Fractional part too small for column '<column_name>', mi
Start Level 3 Node: -25315: Column data type of column '<column_name>' and external -25315: Column data type of column '<column_name>' and external End Level 3 Node: -25315: Column data type of column '<column_name>' and external
Start Level 3 Node: -25316: Table contains at least one column defined as LOB; IMPOR -25316: Table contains at least one column defined as LOB; IMPOR End Level 3 Node: -25316: Table contains at least one column defined as LOB; IMPOR
Start Level 3 Node: -25317: Constant must be compatible with column type and length -25317: Constant must be compatible with column type and length End Level 3 Node: -25317: Constant must be compatible with column type and length
Start Level 3 Node: -25318: Syskey violation (the computed value exceeds the highest -25318: Syskey violation (the computed value exceeds the highest End Level 3 Node: -25318: Syskey violation (the computed value exceeds the highest
Start Level 3 Node: -25319: Missing data for specified column '<column_name>' -25319: Missing data for specified column '<column_name>' End Level 3 Node: -25319: Missing data for specified column '<column_name>'
Start Level 3 Node: -25320: The LOB value could not be loaded into column -25320: The LOB value could not be loaded into column End Level 3 Node: -25320: The LOB value could not be loaded into column
Start Level 3 Node: -25321: This condition value is not a valid number: '<value>' -25321: This condition value is not a valid number: '<value>' End Level 3 Node: -25321: This condition value is not a valid number: '<value>'
Start Level 3 Node: -25322: This condition value was truncated and cannot be used: ' -25322: This condition value was truncated and cannot be used: ' End Level 3 Node: -25322: This condition value was truncated and cannot be used: '
Start Level 3 Node: -25323: Data type of null value representation for column '<colu -25323: Data type of null value representation for column '<colu End Level 3 Node: -25323: Data type of null value representation for column '<colu
Start Level 3 Node: -25324: Errors checking length of column specifications. See Loa -25324: Errors checking length of column specifications. See Loa End Level 3 Node: -25324: Errors checking length of column specifications. See Loa
Start Level 3 Node: -25325: Errors checking compatibility of external and db data ty -25325: Errors checking compatibility of external and db data ty End Level 3 Node: -25325: Errors checking compatibility of external and db data ty
Start Level 3 Node: -25326: The exported number (column '<column_name>') was truncat -25326: The exported number (column '<column_name>') was truncat End Level 3 Node: -25326: The exported number (column '<column_name>') was truncat
Start Level 3 Node: -25327: Error(s) exporting record <record_no>; start position of -25327: Error(s) exporting record <record_no>; start position of End Level 3 Node: -25327: Error(s) exporting record <record_no>; start position of
Start Level 3 Node: -25328: Some error(s) while extracting data. See Loader server l -25328: Some error(s) while extracting data. See Loader server l End Level 3 Node: -25328: Some error(s) while extracting data. See Loader server l
Start Level 3 Node: -25329: The given data file '<file_name>' was not generated usin -25329: The given data file '<file_name>' was not generated usin End Level 3 Node: -25329: The given data file '<file_name>' was not generated usin
Start Level 3 Node: -25330: The page sizes of the source system and the target syste -25330: The page sizes of the source system and the target syste End Level 3 Node: -25330: The page sizes of the source system and the target syste
Start Level 3 Node: -25331: This is a restricted statement, user must be SYSDBA -25331: This is a restricted statement, user must be SYSDBA End Level 3 Node: -25331: This is a restricted statement, user must be SYSDBA
Start Level 3 Node: -25332: Error getting schema definition of table <table_name> (< -25332: Error getting schema definition of table <table_name> (< End Level 3 Node: -25332: Error getting schema definition of table <table_name> (<
Start Level 3 Node: -25333: Error getting index definitions for table <table_name> ( -25333: Error getting index definitions for table <table_name> ( End Level 3 Node: -25333: Error getting index definitions for table <table_name> (
Start Level 3 Node: -25334: File counter for data file exceeded maximum value of 999 -25334: File counter for data file exceeded maximum value of 999 End Level 3 Node: -25334: File counter for data file exceeded maximum value of 999
Start Level 3 Node: -25335: Error restoring single table using data file with multip -25335: Error restoring single table using data file with multip End Level 3 Node: -25335: Error restoring single table using data file with multip
Start Level 3 Node: -25336: Error restoring multiple tables using data file with sin -25336: Error restoring multiple tables using data file with sin End Level 3 Node: -25336: Error restoring multiple tables using data file with sin
Start Level 3 Node: -25337: Error restoring table <table_name>; no table data found -25337: Error restoring table <table_name>; no table data found End Level 3 Node: -25337: Error restoring table <table_name>; no table data found
Start Level 3 Node: -25338: Error during restart IMPORT; restart entry <position> no -25338: Error during restart IMPORT; restart entry <position> no End Level 3 Node: -25338: Error during restart IMPORT; restart entry <position> no
Start Level 3 Node: -25339: Error during restart IMPORT; file <file_name> could not -25339: Error during restart IMPORT; file <file_name> could not End Level 3 Node: -25339: Error during restart IMPORT; file <file_name> could not
Start Level 3 Node: -25340: UCS2 conversion error; character string contains invalid -25340: UCS2 conversion error; character string contains invalid End Level 3 Node: -25340: UCS2 conversion error; character string contains invalid
Start Level 3 Node: -25341: Error generating 'create table/index statements': <error -25341: Error generating 'create table/index statements': <error End Level 3 Node: -25341: Error generating 'create table/index statements': <error
Start Level 3 Node: -25342: Error restoring table <table_name>; table exists but sou -25342: Error restoring table <table_name>; table exists but sou End Level 3 Node: -25342: Error restoring table <table_name>; table exists but sou
Start Level 3 Node: -25343: Column name(s) or number(s) do not match column names/nu -25343: Column name(s) or number(s) do not match column names/nu End Level 3 Node: -25343: Column name(s) or number(s) do not match column names/nu
Start Level 3 Node: -25344: Incorrect field length for column '<column_name>', minim -25344: Incorrect field length for column '<column_name>', minim End Level 3 Node: -25344: Incorrect field length for column '<column_name>', minim
Start Level 3 Node: -25345: Definition of source and target table <table_name> do no -25345: Definition of source and target table <table_name> do no End Level 3 Node: -25345: Definition of source and target table <table_name> do no
Start Level 3 Node: -25354: LOBFILE specification missing or incorrect -25354: LOBFILE specification missing or incorrect End Level 3 Node: -25354: LOBFILE specification missing or incorrect
Start Level 3 Node: -25346: Communication packet size too small to run IMPORT for PA -25346: Communication packet size too small to run IMPORT for PA End Level 3 Node: -25346: Communication packet size too small to run IMPORT for PA
Start Level 3 Node: -25347: Encoding type of source and target database do not match -25347: Encoding type of source and target database do not match End Level 3 Node: -25347: Encoding type of source and target database do not match
Start Level 3 Node: -25348: Different byte swap of source and target computer. Lösch -25348: Different byte swap of source and target computer. Lösch End Level 3 Node: -25348: Different byte swap of source and target computer. Lösch
Start Level 3 Node: -25349: Error exporting <type> data of table <table_name>. See L -25349: Error exporting <type> data of table <table_name>. See L End Level 3 Node: -25349: Error exporting <type> data of table <table_name>. See L
Start Level 3 Node: -25350: Conversion from UNICODE data to ASCII data is not suppor -25350: Conversion from UNICODE data to ASCII data is not suppor End Level 3 Node: -25350: Conversion from UNICODE data to ASCII data is not suppor
Start Level 3 Node: -25351: No lob file info given for LOB column '<column_name>' -25351: No lob file info given for LOB column '<column_name>' End Level 3 Node: -25351: No lob file info given for LOB column '<column_name>'
Start Level 3 Node: -25352: Errors analyzing LOB file information. See Loader server -25352: Errors analyzing LOB file information. See Loader server End Level 3 Node: -25352: Errors analyzing LOB file information. See Loader server
Start Level 3 Node: -25353: Specified maximum number of LONG data files for column ' -25353: Specified maximum number of LONG data files for column ' End Level 3 Node: -25353: Specified maximum number of LONG data files for column '
Start Level 3 Node: -25355: Error processing LOB value (column '<column_name>'): <er -25355: Error processing LOB value (column '<column_name>'): <er End Level 3 Node: -25355: Error processing LOB value (column '<column_name>'): <er
Start Level 3 Node: -25356: Error processing LOB value(s): <error_text> -25356: Error processing LOB value(s): <error_text> End Level 3 Node: -25356: Error processing LOB value(s): <error_text>
Start Level 3 Node: -25364: Name of table to import <table_name> and the table curre -25364: Name of table to import <table_name> and the table curre End Level 3 Node: -25364: Name of table to import <table_name> and the table curre
Start Level 3 Node: -25365: Data file corrupted: trailer not found -25365: Data file corrupted: trailer not found End Level 3 Node: -25365: Data file corrupted: trailer not found
Start Level 3 Node: -25366: Data file corrupted: header not found -25366: Data file corrupted: header not found End Level 3 Node: -25366: Data file corrupted: header not found
Start Level 3 Node: -25371: Error converting data from <source_encoding> to <target_ -25371: Error converting data from <source_encoding> to <target_ End Level 3 Node: -25371: Error converting data from <source_encoding> to <target_
Start Level 3 Node: -25390: Error generating CREATE TABLE/INDEX statements. Table na -25390: Error generating CREATE TABLE/INDEX statements. Table na End Level 3 Node: -25390: Error generating CREATE TABLE/INDEX statements. Table na
Start Level 3 Node: -25391: SQL statement is too long -25391: SQL statement is too long End Level 3 Node: -25391: SQL statement is too long
Start Level 3 Node: -25392: [SAP AG][SQLOD32 DLL][MaxDB] <error_text> -25392: [SAP AG][SQLOD32 DLL][MaxDB] <error_text> End Level 3 Node: -25392: [SAP AG][SQLOD32 DLL][MaxDB] <error_text>
Start Level 3 Node: -25393: Error during check if table <table_name> exists <error_t -25393: Error during check if table <table_name> exists <error_t End Level 3 Node: -25393: Error during check if table <table_name> exists <error_t
Start Level 3 Node: -25394: Catalog of table <table_name> changed while processing < -25394: Catalog of table <table_name> changed while processing < End Level 3 Node: -25394: Catalog of table <table_name> changed while processing <
Start Level 3 Node: -25396: Error getting share lock for table <schema_name>.<table_ -25396: Error getting share lock for table <schema_name>.<table_ End Level 3 Node: -25396: Error getting share lock for table <schema_name>.<table_
Start Level 3 Node: -25401: Error reading system table SYSLOADER.CODEPAGE -25401: Error reading system table SYSLOADER.CODEPAGE End Level 3 Node: -25401: Error reading system table SYSLOADER.CODEPAGE
Start Level 3 Node: -25402: Error creating/granting system table SYSLOADER.CODEPAGE -25402: Error creating/granting system table SYSLOADER.CODEPAGE End Level 3 Node: -25402: Error creating/granting system table SYSLOADER.CODEPAGE
Start Level 3 Node: -25403: Error opening/reading code page file <code_page>. Can't -25403: Error opening/reading code page file <code_page>. Can't End Level 3 Node: -25403: Error opening/reading code page file <code_page>. Can't
Start Level 3 Node: -25404: Invalid HEX constant <hex_value> found in code page file -25404: Invalid HEX constant <hex_value> found in code page file End Level 3 Node: -25404: Invalid HEX constant <hex_value> found in code page file
Start Level 3 Node: -25405: Invalid ASCII values read or values not sorted in ascend -25405: Invalid ASCII values read or values not sorted in ascend End Level 3 Node: -25405: Invalid ASCII values read or values not sorted in ascend
Start Level 3 Node: -25451: Integrity violation (SQL_Error) -25451: Integrity violation (SQL_Error) End Level 3 Node: -25451: Integrity violation (SQL_Error)
Start Level 3 Node: -25498: Errors processing data for table <table_name>; No data i -25498: Errors processing data for table <table_name>; No data i End Level 3 Node: -25498: Errors processing data for table <table_name>; No data i
Start Level 3 Node: -25499: Errors processing data for table <table_name>. Data not -25499: Errors processing data for table <table_name>. Data not End Level 3 Node: -25499: Errors processing data for table <table_name>. Data not
Start Level 3 Node: -25500: Errors processing command exceed maximum number of error -25500: Errors processing command exceed maximum number of error End Level 3 Node: -25500: Errors processing command exceed maximum number of error
Start Level 3 Node: -25501: Error opening file <file_name> : <error_text> -25501: Error opening file <file_name> : <error_text> End Level 3 Node: -25501: Error opening file <file_name> : <error_text>
Start Level 3 Node: -25502: Error closing file <file_name> : <error_text> -25502: Error closing file <file_name> : <error_text> End Level 3 Node: -25502: Error closing file <file_name> : <error_text>
Start Level 3 Node: -25503: Error reading file <file_name> : <error_text> -25503: Error reading file <file_name> : <error_text> End Level 3 Node: -25503: Error reading file <file_name> : <error_text>
Start Level 3 Node: -25504: Error writing file <file_name> : <error_text> -25504: Error writing file <file_name> : <error_text> End Level 3 Node: -25504: Error writing file <file_name> : <error_text>
Start Level 3 Node: -25505: Error erasing file <file_name> : <error_text> -25505: Error erasing file <file_name> : <error_text> End Level 3 Node: -25505: Error erasing file <file_name> : <error_text>
Start Level 3 Node: -25507: Error truncating file <file_name> : <error_text> -25507: Error truncating file <file_name> : <error_text> End Level 3 Node: -25507: Error truncating file <file_name> : <error_text>
Start Level 3 Node: -25508: File <file_name> is not encoded as <encoding> -25508: File <file_name> is not encoded as <encoding> End Level 3 Node: -25508: File <file_name> is not encoded as <encoding>
Start Level 3 Node: -25551: Error importing statistics: <error_text> -25551: Error importing statistics: <error_text> End Level 3 Node: -25551: Error importing statistics: <error_text>
Start Level 3 Node: -25552: Error exporting statistics: <error_text> -25552: Error exporting statistics: <error_text> End Level 3 Node: -25552: Error exporting statistics: <error_text>
Start Level 3 Node: -25601: Error restoring table <table_name>. Table does not exist -25601: Error restoring table <table_name>. Table does not exist End Level 3 Node: -25601: Error restoring table <table_name>. Table does not exist
Start Level 3 Node: -25602: Error restoring table <table_name>. Table is not empty. -25602: Error restoring table <table_name>. Table is not empty. End Level 3 Node: -25602: Error restoring table <table_name>. Table is not empty.
Start Level 3 Node: -25603: Error processing IMPORT in PAGE Format. Loader versions -25603: Error processing IMPORT in PAGE Format. Loader versions End Level 3 Node: -25603: Error processing IMPORT in PAGE Format. Loader versions
Start Level 3 Node: -25801: Internal error [<file_name>,<line_no>,<error_code>]. Con -25801: Internal error [<file_name>,<line_no>,<error_code>]. Con End Level 3 Node: -25801: Internal error [<file_name>,<line_no>,<error_code>]. Con
Start Level 2 Node: From -27000 to -28999 From -27000 to -28999 End Level 2 Node: From -27000 to -28999
Start Level 3 Node: -27000: Unknown error -27000: Unknown error End Level 3 Node: -27000: Unknown error
Start Level 3 Node: -27003: Numeric input parameter overflow -27003: Numeric input parameter overflow End Level 3 Node: -27003: Numeric input parameter overflow
Start Level 3 Node: -27006: Incompatible data types -27006: Incompatible data types End Level 3 Node: -27006: Incompatible data types
Start Level 3 Node: -27009: Command too long -27009: Command too long End Level 3 Node: -27009: Command too long
Start Level 3 Node: -27014: Connect not ok -27014: Connect not ok End Level 3 Node: -27014: Connect not ok
Start Level 3 Node: -27015: Connection down -27015: Connection down End Level 3 Node: -27015: Connection down
Start Level 3 Node: -27016: DB shut down -27016: DB shut down End Level 3 Node: -27016: DB shut down
Start Level 3 Node: -27017: Too many volumes -27017: Too many volumes End Level 3 Node: -27017: Too many volumes
Start Level 3 Node: -27018: Connection error -27018: Connection error End Level 3 Node: -27018: Connection error
Start Level 3 Node: -27019: Conversion UNICODE to ASCII not possible -27019: Conversion UNICODE to ASCII not possible End Level 3 Node: -27019: Conversion UNICODE to ASCII not possible
Start Level 3 Node: -28000: Operator NEW failed -28000: Operator NEW failed End Level 3 Node: -28000: Operator NEW failed
Start Level 3 Node: -28001: Access via NIL OID -28001: Access via NIL OID End Level 3 Node: -28001: Access via NIL OID
Start Level 3 Node: -28002: Invalid OID -28002: Invalid OID End Level 3 Node: -28002: Invalid OID
Start Level 3 Node: -28003: Unknown GUID -28003: Unknown GUID End Level 3 Node: -28003: Unknown GUID
Start Level 3 Node: -28005: Duplicate object -28005: Duplicate object End Level 3 Node: -28005: Duplicate object
Start Level 3 Node: -28006: Object not locked -28006: Object not locked End Level 3 Node: -28006: Object not locked
Start Level 3 Node: -28007: OID not compatible with given class -28007: OID not compatible with given class End Level 3 Node: -28007: OID not compatible with given class
Start Level 3 Node: -28009: Duplicate class id -28009: Duplicate class id End Level 3 Node: -28009: Duplicate class id
Start Level 3 Node: -28010: Base class is not registered -28010: Base class is not registered End Level 3 Node: -28010: Base class is not registered
Start Level 3 Node: -28011: Container-entry is out of date -28011: Container-entry is out of date End Level 3 Node: -28011: Container-entry is out of date
Start Level 3 Node: -28012: Wrong class entry pointer -28012: Wrong class entry pointer End Level 3 Node: -28012: Wrong class entry pointer
Start Level 3 Node: -28013: Try to flush object which is header only -28013: Try to flush object which is header only End Level 3 Node: -28013: Try to flush object which is header only
Start Level 3 Node: -28014: Var-object has been overwritten -28014: Var-object has been overwritten End Level 3 Node: -28014: Var-object has been overwritten
Start Level 3 Node: -28015: Wrong alignment of data -28015: Wrong alignment of data End Level 3 Node: -28015: Wrong alignment of data
Start Level 3 Node: -28016: Unknown container -28016: Unknown container End Level 3 Node: -28016: Unknown container
Start Level 3 Node: -28017: Duplicate callback interface -28017: Duplicate callback interface End Level 3 Node: -28017: Duplicate callback interface
Start Level 3 Node: -28101: Invalid index description -28101: Invalid index description End Level 3 Node: -28101: Invalid index description
Start Level 3 Node: -28102: Too many index partitions -28102: Too many index partitions End Level 3 Node: -28102: Too many index partitions
Start Level 3 Node: -28103: Too many index prefix fields -28103: Too many index prefix fields End Level 3 Node: -28103: Too many index prefix fields
Start Level 3 Node: -28104: Wrong index access -28104: Wrong index access End Level 3 Node: -28104: Wrong index access
Start Level 3 Node: -28105: Unique index field changed -28105: Unique index field changed End Level 3 Node: -28105: Unique index field changed
Start Level 3 Node: -28501: Error reading OMS input stream -28501: Error reading OMS input stream End Level 3 Node: -28501: Error reading OMS input stream
Start Level 3 Node: -28502: Error writing OMS output stream -28502: Error writing OMS output stream End Level 3 Node: -28502: Error writing OMS output stream
Start Level 3 Node: -28503: Crash in DB Procedure -28503: Crash in DB Procedure End Level 3 Node: -28503: Crash in DB Procedure
Start Level 3 Node: -28505: No Component Object found -28505: No Component Object found End Level 3 Node: -28505: No Component Object found
Start Level 3 Node: -28508: Unsupported parameter type -28508: Unsupported parameter type End Level 3 Node: -28508: Unsupported parameter type
Start Level 3 Node: -28513: Method not found -28513: Method not found End Level 3 Node: -28513: Method not found
Start Level 3 Node: -28514: Unknown OMS Version -28514: Unknown OMS Version End Level 3 Node: -28514: Unknown OMS Version
Start Level 3 Node: -28515: OMS Version already open -28515: OMS Version already open End Level 3 Node: -28515: OMS Version already open
Start Level 3 Node: -28516: Commit or Rollback required -28516: Commit or Rollback required End Level 3 Node: -28516: Commit or Rollback required
Start Level 3 Node: -28517: Already in Critical Section -28517: Already in Critical Section End Level 3 Node: -28517: Already in Critical Section
Start Level 3 Node: -28518: Not in Critical Section -28518: Not in Critical Section End Level 3 Node: -28518: Not in Critical Section
Start Level 3 Node: -28521: Already in version -28521: Already in version End Level 3 Node: -28521: Already in version
Start Level 3 Node: -28522: Missing before image -28522: Missing before image End Level 3 Node: -28522: Missing before image
Start Level 3 Node: -28523: Unknown schema -28523: Unknown schema End Level 3 Node: -28523: Unknown schema
Start Level 3 Node: -28524: Duplicate schema -28524: Duplicate schema End Level 3 Node: -28524: Duplicate schema
Start Level 3 Node: -28525: Procedure Address not found -28525: Procedure Address not found End Level 3 Node: -28525: Procedure Address not found
Start Level 3 Node: -28527: Directory not found -28527: Directory not found End Level 3 Node: -28527: Directory not found
Start Level 3 Node: -28528: Library not released -28528: Library not released End Level 3 Node: -28528: Library not released
Start Level 3 Node: -28529: Too small name buffer -28529: Too small name buffer End Level 3 Node: -28529: Too small name buffer
Start Level 3 Node: -28530: omsTerminate called -28530: omsTerminate called End Level 3 Node: -28530: omsTerminate called
Start Level 3 Node: -28531: OMS read only -28531: OMS read only End Level 3 Node: -28531: OMS read only
Start Level 3 Node: -28532: Version bound by transaction -28532: Version bound by transaction End Level 3 Node: -28532: Version bound by transaction
Start Level 3 Node: -28533: Integer out of packed range -28533: Integer out of packed range End Level 3 Node: -28533: Integer out of packed range
Start Level 3 Node: -28534: Package must be recreated -28534: Package must be recreated End Level 3 Node: -28534: Package must be recreated
Start Level 3 Node: -28537: Inheritance_error: Object has no key -28537: Inheritance_error: Object has no key End Level 3 Node: -28537: Inheritance_error: Object has no key
Start Level 3 Node: -28538: Inheritance_error: Object has wrong key -28538: Inheritance_error: Object has wrong key End Level 3 Node: -28538: Inheritance_error: Object has wrong key
Start Level 3 Node: -28540: Invalid OmsCriticalSection ID -28540: Invalid OmsCriticalSection ID End Level 3 Node: -28540: Invalid OmsCriticalSection ID
Start Level 3 Node: -28541: DB procedure parameters invalid -28541: DB procedure parameters invalid End Level 3 Node: -28541: DB procedure parameters invalid
Start Level 3 Node: -28545: Container exists already -28545: Container exists already End Level 3 Node: -28545: Container exists already
Start Level 3 Node: -28547: Version is dropped -28547: Version is dropped End Level 3 Node: -28547: Version is dropped
Start Level 3 Node: -28548: Internal object link corruption -28548: Internal object link corruption End Level 3 Node: -28548: Internal object link corruption
Start Level 3 Node: -28549: Name is invalid -28549: Name is invalid End Level 3 Node: -28549: Name is invalid
Start Level 3 Node: -28550: Index operation failed -28550: Index operation failed End Level 3 Node: -28550: Index operation failed
Start Level 3 Node: -28551: Version open at trans-end -28551: Version open at trans-end End Level 3 Node: -28551: Version open at trans-end
Start Level 3 Node: -28600: Invalid request code in packet -28600: Invalid request code in packet End Level 3 Node: -28600: Invalid request code in packet
Start Level 3 Node: -28601: Object data packet for read missing -28601: Object data packet for read missing End Level 3 Node: -28601: Object data packet for read missing
Start Level 3 Node: -28602: Packet size does not match object size -28602: Packet size does not match object size End Level 3 Node: -28602: Packet size does not match object size
Start Level 3 Node: -28603: Requested packet size to transfer an object is too big -28603: Requested packet size to transfer an object is too big End Level 3 Node: -28603: Requested packet size to transfer an object is too big
Start Level 3 Node: -28604: Trying to queue too many data packets when sending objec -28604: Trying to queue too many data packets when sending objec End Level 3 Node: -28604: Trying to queue too many data packets when sending objec
Start Level 3 Node: -28605: Invalid operation in UDE Server-Kernel communication -28605: Invalid operation in UDE Server-Kernel communication End Level 3 Node: -28605: Invalid operation in UDE Server-Kernel communication
Start Level 3 Node: -28606: Communication error -28606: Communication error End Level 3 Node: -28606: Communication error
Start Level 3 Node: -28607: Missing object data packet -28607: Missing object data packet End Level 3 Node: -28607: Missing object data packet
Start Level 3 Node: -28608: Invalid reply for stored procedure -28608: Invalid reply for stored procedure End Level 3 Node: -28608: Invalid reply for stored procedure
Start Level 3 Node: -28609: Stored procedure not found -28609: Stored procedure not found End Level 3 Node: -28609: Stored procedure not found
Start Level 3 Node: -28801: Wrong class -28801: Wrong class End Level 3 Node: -28801: Wrong class
Start Level 3 Node: -28802: Wrong object version -28802: Wrong object version End Level 3 Node: -28802: Wrong object version
Start Level 3 Node: -28803: Wrong object version -28803: Wrong object version End Level 3 Node: -28803: Wrong object version
Start Level 3 Node: -28804: Too old OID -28804: Too old OID End Level 3 Node: -28804: Too old OID
Start Level 3 Node: -28806: Nil page pointer -28806: Nil page pointer End Level 3 Node: -28806: Nil page pointer
Start Level 3 Node: -28807: No next object -28807: No next object End Level 3 Node: -28807: No next object
Start Level 3 Node: -28808: Hash not found -28808: Hash not found End Level 3 Node: -28808: Hash not found
Start Level 3 Node: -28810: Duplicate hash key -28810: Duplicate hash key End Level 3 Node: -28810: Duplicate hash key
Start Level 3 Node: -28811: Hash key not found -28811: Hash key not found End Level 3 Node: -28811: Hash key not found
Start Level 3 Node: -28812: Invalid iterator -28812: Invalid iterator End Level 3 Node: -28812: Invalid iterator
Start Level 3 Node: -28813: Unknown consistent version -28813: Unknown consistent version End Level 3 Node: -28813: Unknown consistent version
Start Level 3 Node: -28814: Object not found -28814: Object not found End Level 3 Node: -28814: Object not found
Start Level 3 Node: -28815: Object history not found -28815: Object history not found End Level 3 Node: -28815: Object history not found
Start Level 3 Node: -28817: Wrong object length -28817: Wrong object length End Level 3 Node: -28817: Wrong object length
Start Level 3 Node: -28818: Wrong object position -28818: Wrong object position End Level 3 Node: -28818: Wrong object position
Start Level 3 Node: -28819: Object has been updated by other transactions -28819: Object has been updated by other transactions End Level 3 Node: -28819: Object has been updated by other transactions
Start Level 3 Node: -28820: An (uncommited) object with the given key exists already -28820: An (uncommited) object with the given key exists already End Level 3 Node: -28820: An (uncommited) object with the given key exists already
Start Level 3 Node: -28822 to -28999: Internal Error -28822 to -28999: Internal Error End Level 3 Node: -28822 to -28999: Internal Error
Start Level 3 Node: -28822: Invalid object file ID (internal error) -28822: Invalid object file ID (internal error) End Level 3 Node: -28822: Invalid object file ID (internal error)
Start Level 3 Node: -28823: Page already in use -28823: Page already in use End Level 3 Node: -28823: Page already in use
Start Level 3 Node: -28826: Pagecounter inconsistent -28826: Pagecounter inconsistent End Level 3 Node: -28826: Pagecounter inconsistent
Start Level 3 Node: -28828: Inconsistent information concerning #is container droppe -28828: Inconsistent information concerning #is container droppe End Level 3 Node: -28828: Inconsistent information concerning #is container droppe
Start Level 3 Node: -28832: Tried to access already dropped container -28832: Tried to access already dropped container End Level 3 Node: -28832: Tried to access already dropped container
Start Level 3 Node: -28833: Consistent view has been cancelled -28833: Consistent view has been cancelled End Level 3 Node: -28833: Consistent view has been cancelled
Start Level 3 Node: -28835: Key of new object is still visible within consistent ver -28835: Key of new object is still visible within consistent ver End Level 3 Node: -28835: Key of new object is still visible within consistent ver
Start Level 3 Node: -28836: Recreation of index for OmsKeyedContainer failed -28836: Recreation of index for OmsKeyedContainer failed End Level 3 Node: -28836: Recreation of index for OmsKeyedContainer failed
Start Level 3 Node: -28837: Consistent view is still bound to another transaction -28837: Consistent view is still bound to another transaction End Level 3 Node: -28837: Consistent view is still bound to another transaction
Start Level 3 Node: -28838: Wrong sorting of an old sequence -28838: Wrong sorting of an old sequence End Level 3 Node: -28838: Wrong sorting of an old sequence
Start Level 3 Node: -28901: No case match found -28901: No case match found End Level 3 Node: -28901: No case match found
Start Level 3 Node: -28902: Too many nested try/catch statements -28902: Too many nested try/catch statements End Level 3 Node: -28902: Too many nested try/catch statements
Start Level 3 Node: -28903: DB function $1 must return a value -28903: DB function $1 must return a value End Level 3 Node: -28903: DB function $1 must return a value
Start Level 3 Node: -28904: DB function containing SQL statements not allowed -28904: DB function containing SQL statements not allowed End Level 3 Node: -28904: DB function containing SQL statements not allowed
Start Level 3 Node: -28905: DB function called for indexing failed -28905: DB function called for indexing failed End Level 3 Node: -28905: DB function called for indexing failed
Start Level 3 Node: -28906: DB function code not found -28906: DB function code not found End Level 3 Node: -28906: DB function code not found
Start Level 3 Node: -28907: Function stopped due to error -28907: Function stopped due to error End Level 3 Node: -28907: Function stopped due to error
Start Level 3 Node: -28908: Function must be deterministic -28908: Function must be deterministic End Level 3 Node: -28908: Function must be deterministic
Start Level 3 Node: -28910: STOP(0) not allowed -28910: STOP(0) not allowed End Level 3 Node: -28910: STOP(0) not allowed
Start Level 3 Node: -28950: System error: missing object flush during commit -28950: System error: missing object flush during commit End Level 3 Node: -28950: System error: missing object flush during commit
Start Level 3 Node: -28951: System error: invalid deallocation -28951: System error: invalid deallocation End Level 3 Node: -28951: System error: invalid deallocation
Start Level 3 Node: -28999: Required DBPError -28999: Required DBPError End Level 3 Node: -28999: Required DBPError
Start Level 2 Node: From -29000 to -29099 From -29000 to -29099 End Level 2 Node: From -29000 to -29099
Start Level 2 Node: From 0 to 1999 From 0 to 1999 End Level 2 Node: From 0 to 1999
Start Level 3 Node: 0: Success 0: Success End Level 3 Node: 0: Success
Start Level 3 Node: 100: Row not found 100: Row not found End Level 3 Node: 100: Row not found
Start Level 3 Node: 200: Duplicate key 200: Duplicate key End Level 3 Node: 200: Duplicate key
Start Level 3 Node: 250: Duplicate secondary key 250: Duplicate secondary key End Level 3 Node: 250: Duplicate secondary key
Start Level 3 Node: 300: Integrity violation 300: Integrity violation End Level 3 Node: 300: Integrity violation
Start Level 3 Node: 320: View violation 320: View violation End Level 3 Node: 320: View violation
Start Level 3 Node: 350: Referential integrity violated 350: Referential integrity violated End Level 3 Node: 350: Referential integrity violated
Start Level 3 Node: 360: Foreign key integrity violated 360: Foreign key integrity violated End Level 3 Node: 360: Foreign key integrity violated
Start Level 3 Node: 400: Lock collision 400: Lock collision End Level 3 Node: 400: Lock collision
Start Level 3 Node: 450: Lock collision caused by pending locks 450: Lock collision caused by pending locks End Level 3 Node: 450: Lock collision caused by pending locks
Start Level 3 Node: 500: Lock request timeout 500: Lock request timeout End Level 3 Node: 500: Lock request timeout
Start Level 3 Node: 600: Work rolled back 600: Work rolled back End Level 3 Node: 600: Work rolled back
Start Level 3 Node: 650: Work rolled back 650: Work rolled back End Level 3 Node: 650: Work rolled back
Start Level 3 Node: 680: Work pending 680: Work pending End Level 3 Node: 680: Work pending
Start Level 3 Node: 700: Session inactivity timeout (work rolled back) 700: Session inactivity timeout (work rolled back) End Level 3 Node: 700: Session inactivity timeout (work rolled back)
Start Level 3 Node: 710:Session terminated by shutdown (work rolled back) 710:Session terminated by shutdown (work rolled back) End Level 3 Node: 710:Session terminated by shutdown (work rolled back)
Start Level 3 Node: 750: Too many SQL statements (work rolled back) 750: Too many SQL statements (work rolled back) End Level 3 Node: 750: Too many SQL statements (work rolled back)
Start Level 3 Node: 1403: Row not found 1403: Row not found End Level 3 Node: 1403: Row not found
Start Level 2 Node: From 25000 to 25999 From 25000 to 25999 End Level 2 Node: From 25000 to 25999
Start Level 3 Node: 25599: Value for usage <number> rows too high to fit into one da 25599: Value for usage <number> rows too high to fit into one da End Level 3 Node: 25599: Value for usage <number> rows too high to fit into one da
Start Level 3 Node: 25600: CONFIGURATION stream is not supported for this Loader com 25600: CONFIGURATION stream is not supported for this Loader com End Level 3 Node: 25600: CONFIGURATION stream is not supported for this Loader com
Start Level 3 Node: 25601: Output of NULL values for column <column_name> will be tr 25601: Output of NULL values for column <column_name> will be tr End Level 3 Node: 25601: Output of NULL values for column <column_name> will be tr
Start Level 3 Node: 25602: Possible overflow of integer values for column '<column_n 25602: Possible overflow of integer values for column '<column_n End Level 3 Node: 25602: Possible overflow of integer values for column '<column_n
Start Level 3 Node: 25603: Output of literal '<literal>' will be truncated 25603: Output of literal '<literal>' will be truncated End Level 3 Node: 25603: Output of literal '<literal>' will be truncated
Start Level 3 Node: 25604: Surplus long file info (column name/id '<column_name>') i 25604: Surplus long file info (column name/id '<column_name>') i End Level 3 Node: 25604: Surplus long file info (column name/id '<column_name>') i
Start Level 3 Node: 25605: No header in binary data file and no record length in com 25605: No header in binary data file and no record length in com End Level 3 Node: 25605: No header in binary data file and no record length in com
Start Level 3 Node: 25606: Different byte swap of source and target machine; LOB val 25606: Different byte swap of source and target machine; LOB val End Level 3 Node: 25606: Different byte swap of source and target machine; LOB val
Start Level 3 Node: 25607: Value for usage <value>% too less to fit one row into one 25607: Value for usage <value>% too less to fit one row into one End Level 3 Node: 25607: Value for usage <value>% too less to fit one row into one
Start Level 3 Node: 25608: Restart file <file_name> not found; starting import from 25608: Restart file <file_name> not found; starting import from End Level 3 Node: 25608: Restart file <file_name> not found; starting import from
Start Level 3 Node: 25913: Table <schema_name>. <table_name> not imported 25913: Table <schema_name>. <table_name> not imported End Level 3 Node: 25913: Table <schema_name>. <table_name> not imported
Start Level 3 Node: 25921: Range of SEQUENCE is exhausted 25921: Range of SEQUENCE is exhausted End Level 3 Node: 25921: Range of SEQUENCE is exhausted
Start Level 3 Node: 25926: Processed command is a PAGES format based transport from 25926: Processed command is a PAGES format based transport from End Level 3 Node: 25926: Processed command is a PAGES format based transport from
Start Level 3 Node: 25940: Error at record <record_count> in input file for table <t 25940: Error at record <record_count> in input file for table <t End Level 3 Node: 25940: Error at record <record_count> in input file for table <t
Start Level 3 Node: 25965: No data to import in datastream <file_name>; either the s 25965: No data to import in datastream <file_name>; either the s End Level 3 Node: 25965: No data to import in datastream <file_name>; either the s
Start Level 3 Node: 25966: Error at record <record_count> in input file <file_name> 25966: Error at record <record_count> in input file <file_name> End Level 3 Node: 25966: Error at record <record_count> in input file <file_name>
Start Level 3 Node: 25967: Error at position <file_position> in input file <file_nam 25967: Error at position <file_position> in input file <file_nam End Level 3 Node: 25967: Error at position <file_position> in input file <file_nam
Start Level 3 Node: 25968: Number of NULL values inserted: <null_count> (NULL repres 25968: Number of NULL values inserted: <null_count> (NULL repres End Level 3 Node: 25968: Number of NULL values inserted: <null_count> (NULL repres


-829: File close error - SAP Documentation

Background documentation -829: File close error

Explanation

An error occurred when closing a file. This is a device failure or system error.

User Response

Try again to close the file. For the exact error description, see the file appldiag.


-25313: Overflow occurred, execution aborted - SAP Documentation

Background documentation -25313: Overflow occurred, execution aborted

Explanation

Error executing the Loader command for exporting data. A numerical value that is to be exported cannot be exported into the external format specified in the command. This error occurs if for instance you try to export the value 2147483647 from data type INTEGER into an external binary INTEGER value that is only 2 bytes long. When this error occurs you will only see an error message. Instead of numerical data, the data stream will only contain a corresponding number of asterisks (*). This error does not interrupt the data export.

User Response

Check the data once it has been exported.


-28803: Wrong object version - SAP Documentation

Background documentation -28803: Wrong object version

Explanation

An attempt was made to access a deleted object. This error is translated as an OmsOutOfDate Exception, but can be logged as an error in the knldiag file.

User Response

Contact Support.


Setting TEMP or TMP - SAP Documentation

Background documentation Setting TEMP or TMP

Use Database Manager CLI to set the environment variables TEMP or TMP.

The values you define override the values specified for TEMP or TMP in the configuration file of Database Manager or in the environment.

Structure

>dbmcli -d <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset -raw <variable> <value>

Options
Option | Description
<variable> | Name of the environment variable Possible values are: TEMP | TMP
<value> | Absolute path and name of the directory in which Database Manager generates temporary files


-8045: Conversion to UNICODE impossible - SAP Documentation

Background documentation -8045: Conversion to UNICODE impossible

Explanation

You tried to convert data from ASCII format to UCS-2 format. The attempt failed.

User Response

You cannot perform a conversion explicitly. You can try to avoid this error by explicitly converting the UCS-2 data used, for example, for comparisons.


-28014: Var-object has been overwritten - SAP Documentation

Background documentation -28014: Var-object has been overwritten

Explanation

A IN-PLACE-Change was executed on an object of variable size which enlarged the object.

User Response

Make sure that the size of variable objects does not change when executing IN-PLACE-Changes on them. If a size change is necessary, then it is required to use the method for changing the size normally and not the method for IN-PLACE-Changes.


-28501: Error reading OMS input stream - SAP Documentation

Background documentation -28501: Error reading OMS input stream

Explanation

A read error occurred in an internal ABAP table or in a stream.For more information, see the liveCache file knldiag.

User Response

Contact Support.


-703: Duplicate FETCH statement for same select in program - SAP Documentation

Background documentation -703: Duplicate FETCH statement for same select in program

Explanation

When the MFETCH option is set, only one FETCH statement is allowed per result table. The execution of such a FETCH statement can be repeated within a loop.

User Response

Modify the application or run it without MFETCH option.


-1101: Too complicated SQL statement (Too many recursions) - SAP Documentation

Background documentation -1101: Too complicated SQL statement (Too many recursions)

Explanation

The SQL statement (recursive SELECT statement) contains too many recursions.

User Response

Reduce the recursions in the SQL statement.


-28547: Version is dropped - SAP Documentation

Background documentation -28547: Version is dropped

Explanation

Accessing a version failed, since it has been marked as deleted.

User Response

This error may occur during parallel work on versions. It must be caught and handled by the application accordingly.


Testing the PHP Library on Microsoft Windows - SAP Documentation

Procedure documentation Testing the PHP Library on Microsoft Windows

You test the functions of the SAP MaxDB PHP extension. You can either use the test scenario included in the SAP MaxDB PHP package or develop your own tests.

Prerequisites

  • You have installed the SAP MaxDB PHP library.

    More information: Installing the SAP MaxDB PHP Library on Microsoft Windows

  • You have installed the SAP MaxDB software and created a database. This must be located on the same computer as the PHP installation. If you want to use the SAP MaxDB test scenario, you need to have loaded the demo data into the database.

    More information: Concepts of the Database System, Demo Database

  • If you want to use the SAP MaxDB test scenario, you also need to download the SAP MaxDB source package from http://pecl.php.net/package/maxdb and unpack it into the <maxdb_php> directory. The test programs are contained in this package.

Procedure

  1. Open the php.ini file in your Microsoft Windows directory and add the following information:

    [maxdb]

    maxdb.default_db=<database_name>

    maxdb.default_user=<database_user_name>

    maxdb.default_pw=<database_user_password>

  2. Go to the directory <test_program_folder> containing the test programs:

    cd <test_program_folder>

  3. Run the individual test programs. Enter the following command to execute the <test_program>:

    php <test_program>

Example

You have unpacked the PHP binary distribution to the directory C:\php-5.0.0-Win32

You have installed the SAP MaxDB PHP library for Microsoft Windows in the C:\WINDOWS directory.

You have unpacked the SAP MaxDB source package in the directory C:\php-5.0.0-Win32\ext\maxdb\tests

You have installed the SAP MaxDB software and created the DEMODB database as well as the database user MONA with the password RED.

You use the SAP MaxDB test scenario.

  1. Open the file C:\WINDOWS\php.ini using a text editor and add the following information:

    [maxdb]

    maxdb.default_db=DEMODB

    maxdb.default_user=MONA

    maxdb.default_pw=RED

  2. Go to the directory containing the SAP MaxDB PHP test programs:

    cd C:\php-5.0.0-Win32\ext\maxdb\tests

  3. Execute the maxdb001.php test program:

    php maxdb001.php

Note Note

The PHP binary distribution for Microsoft Windows does not include a test frame. You therefore need to execute each test program for the SAP MaxDB PHP library individually.

End of the note.


-4032: Unknown remote table - SAP Documentation

Background documentation -4032: Unknown remote table

Explanation

The CREATE TABLE statement includes a remote table name which does not exist within the specified datasource.

User Response

Correct the misspelling of the datasource or the remote table name or check if the remote table name exists and you have the privilege to query it.


-25223: Wrong null specification - SAP Documentation

Background documentation -25223: Wrong null specification

Explanation

The command to export or import data contains an error.The specification of the character string with which NULL values are represented or should be represented externally in a data stream does not have the correct syntax. Character strings representing NULL values can be a maximum of 20 characters long.

User Response

Correct the entry and re-execute the command.


-8015: Table must be a base table - SAP Documentation

Background documentation -8015: Table must be a base table

Explanation

The specification of a base table is expected. This specification is missing or the specified table is not a base table.

User Response

Use a QUERY statement issued on the DOMAIN.TABLES system table to find out whether the specified table is a view table or result table. If it is a view table, use a QUERY statement issued on the DOMAIN.VIEWDEFS system table to find out the pertinent base table. You can then issue the required SQL statement for the base table if you have the appropriate privileges.


Opening a Session: Loader Commands - SAP Documentation

Function documentation Opening a Session: Loader Commands

Loader can process a range of commands and SQL statements, including those for opening a Loader session or a Loader session and a database session.

Features

  • AUTOCOMMIT Command

  • SET Command

  • SQLMODE Command

  • USE DB Command

    USE SCHEMA Command

    USE SCHEMAMAP Command

    USE USER Command

More Information

  • Loader Commands and SQL Statements

  • Opening a Session: Loader CLI Options

  • Syntax Rules: Sorted Alphabetically

    Syntax Rules Sorted Semantically


-3011: Invalid column name - SAP Documentation

Background documentation -3011: Invalid column name

Explanation

The specified column name does not comply with the syntax.

User Response

Correct the column name specified in the SQL statement.


-10504: Invalid position (<row_number>) for row set - SAP Documentation

Background documentation -10504: Invalid position (<row_number>) for row set

Explanation

The method that was called could not be executed, because the specified position <row_number> does not lie within SQLDBC_RowsSet.

User Response

Only enter values in the SQLDBC_RowSet::setPos method if they meet the following conditions:

  • > 0

  • < RowSetSize of the result set


Loader Commands and SQL Statements - SAP Documentation

Function documentation Loader Commands and SQL Statements

Loader can execute Loader commands and SQL statements.

Features

Creating a Database Session

You can execute the Loader commands and SQL statements for exporting and importing data only after you have successfully started a database session. This ensures that only suitably authorized owners can export and import.

More information: Opening a Session: Loader Commands

Exporting and Importing

One of the main functions of Loader is to export and import (Transformation) the database catalog, parts of the database catalog, and application data. A range of Loader commands and associated syntax elements are available for this purpose: Exporting/Importing: Loader Commands

You can change column values using the UPDATE COLUMNS command.

As of SAP MaxDB version 7.7, Database Studio database tool provides a GUI for Loader. More information: Database Studio

  • Exporting Data and/or Information from the Database Catalog

  • Importing Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

Loader Syntax Elements

  • Data Description

    Column Description

    Table Name

  • Date Specifications

    Time Specifications

    Time Stamp Specifications

  • NULL Value Represantation

  • Exporting and Importing Using Third-Party Backup Tools

    Exporting and Importing LOB Values

  • Restarting

SQL Statements

Loader can execute the SQL statements required for exporting and importing. DDL statements, in particular, are vital for importing data (SQL Reference Manual: SQL Statements: Overview). Database queries, however, return only status messages. COMMIT and ROLLBACK statements are only active in the mode AUTOCOMMIT OFF (AUTOCOMMIT Command).

More Information

  • Syntax Rules: Sorted Alphabetically

    Syntax Rules: Sorted Semantically

  • Loader


Importing Constants and Special Constants - SAP Documentation

Background documentation Importing Constants and Special Constants

In column descriptions, you can use the syntax rule column_assignment to specify that a constant or a special constant should be imported into the specified column for each imported data record, instead of the value from the data stream.

Structure

Syntax Syntax

  1. <column_assignment> ::=
  <column_name> '<literal>'
| <column_name> <column_function>

<column_function> ::=
  DATE
| FALSE
| STAMP
| TIME
| TIMESTAMP
| TRUE
| USER
| USERGROUP
| <sequence_number>
<sequence_number> ::=
  SEQNO
| SEQNO <integer>
| SEQNO <integer> <integer>
End of the code.
column_function
DATE | Current date: The column into which you want to import one of these values must have type DATE
FALSE | Boolean value FALSE
STAMP | Unique value generated by the database system. Can only be imported into columns of type CHAR (n) BYTE where n >= 8
TIME | Current time: The column into which you want to import one of these values must have type TIME
TIMESTAMP | Current time stamp: The column into which you want to import one of these values must have type TIMESTAMP
TRUE | Boolean value TRUE
USER | Name of the current user
USERGROUP | Name of the group of the current user: If this user is not assigned to a user group, the name of the current user is imported; the column into which you want to import one of these values must have type CHAR (n) where n >= 32
SEQNO | Sequence number: The initial number is 0 and each time the number is increased by 1
SEQNO <integer> | Sequence number: The initial number is the specified integer; each time the number is increased by 1
SEQNO <integer> <integer> | Sequence number: The initial number is specified immediately following the keyword SEQNO. The next integer specifies the interval between the values to be imported.

In the Loader command, enter the constant literal or the special constant column_function instead of a position specification. Data is not imported from the data stream for the relevant column.

Note Note

If the data stream is empty, the constants specified in the command are not imported.

End of the note.
<column_name> '<literal>'

To import a general constant literal, enter the required constant instead of a position. Place the value in single quotation marks. Loader treats the constant like a plain text value and converts it into the data type of the target column. If you want to import the constant into a numeric column, it must have a valid numeric format.

<column_name> <column_function>

You can import special column_function constants. The following values are possible: DATE, FALSE, STAMP, TIME, TIMESTAMP, TRUE, USER, USERGROUP and sequence_number.

<sequence_number>

You can use the syntax rule sequence_number to import number generators with any initial number and increment. The numbers you calculate are cyclical. This means that the value following the largest possible value is the smallest possible value. In this way, you can generate as many numbers as you want, including repeated sequential numbers. If you use the sequence_number syntax rule, sequential numbers should be generated according to one of the three options. Both the initial value and the increment can be negative. A column of type FIXED(10) is usually sufficient for storing the sequential numbers.

Example

Example Example

IMPORT TABLE hotel.reservation

DATA INSTREAM 'reservation_csv.data'

  rno        1

  cno        2

  hno        3

  type       4

  arrival    '20040207'

  departure  '20040220'

End of the example.

Constants 20040207 and 20040220 (date in INTERNAL format) are imported.

Example Example

IMPORT TABLE hotel.reservation

DATA INSTREAM 'reservation_csv.data'

  rno        1

  cno        2

  hno        3

  type       4

  arrival    DATE

  departure   6

End of the example.

The special constant DATE is imported.

Example Example

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  cno SEQNO 3000 100

  title     2

  firstname  3

  name      4

  zip       5

  address    6

End of the example.

The specifications for the sequence (initial position 3000, interval 100) are imported.

More Information

Column Description

IMPORT COLUMNS Command

IMPORT TABLE Command

UPDATE COLUMNS Command

SQL Reference Manual, CREATE SEQUENCE Statement (create_sequence_statement)


-24975: ERR_NOXPSESSION - param session inactive - SAP Documentation

Background documentation -24975: ERR_NOXPSESSION - param session inactive

Explanation

Some DBM commands in this application area require a parameter session. In this case, this session was inactive.

User Response

Check the sequence of your commands. First of all, you must open a parameter session using the param_startsession DBM command before you can process a database parameter.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-10103: Invalid value for STATEMENTCACHESIZE (<description>) - SAP Documentation

Background documentation -10103: Invalid value for STATEMENTCACHESIZE (<description>)

Explanation

You entered a value that is not allowed for the STATEMENTCACHESIZE option of property SQLDBC_ConnectProperties for method SQLDBC_Connection::connect.<description> provides more information about the error.

User Response

Check the value that you entered for the STATEMENTCACHESIZE option.


VIEWDEFS - SAP Documentation

Example documentation VIEWDEFS

Use of the system table DOMAIN.VIEWDEFS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create view tables. Proceed as described in SQL Tutorial, View Tables.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table VIEWDEFS to determine the following database information, among other things:

  • SQL statement text used in the view table definition

    SELECT definition

    FROM DOMAIN.VIEWDEFS

    WHERE schemaname = 'HOTEL'

    AND viewname = 'CUSTOMER_ADDR'

  • Length of the view table definition

    SELECT len

    FROM DOMAIN.VIEWDEFS

    WHERE schemaname = 'HOTEL'

    AND viewname = 'CUSTOMER_ADDR'

Only the owner of a view table can select the definition. No output is provided for any other users.

More Information

All view tables: see VIEWS

Existence of a view table: see TABLES

Tables and columns forming the basis for a view table: see VIEWCOLUMNS


-8021: Column must have DEFAULT specification - SAP Documentation

Background documentation -8021: Column must have DEFAULT specification

Explanation

The attempt was made to specify the action SET DEFAULT as DELETE RULE in a referential CONSTRAINT definition, although no DEFAULT value had been defined for at least one section of the referencing column.

User Response

  1. If the error occurred during the execution of a CREATE TABLE statement, either define a DEFAULT value for the column(s) or choose another action.

  2. If the error occurred during the execution of an ALTER TABLE statement, issue another ALTER TABLE statement to assign a DEFAULT value to all columns (referencing column) without a DEFAULT value and then repeat the previous ALTER TABLE statement. Alternatively, you may choose another action.


Connecting Third-Party Backup Tools - SAP Documentation

Component documentation Connecting Third-Party Backup Tools

Together with SAP MaxDB database tools, you can use third-party backup tools to backup, restore, export, and import data.

Features

SAP MaxDB supports a direct connection to a range of third-party backup tools. This requires you to configure the SAP MaxDB software accordingly.

You may also use third-party backup tools which are not directly supported by SAP MaxDB, provided that these tools can retrieve data from pipes.

If, for example, you want to back up the data stored in a database or export data from a database, you can save this data using the SAP MaxDB database tools to files, pipes, or tapes (by means of a tape device).

However, you can also use a third-party backup tool to back up the data on to a data carrier. Even then you can control the necessary actions using the SAP MaxDB database tools. The backup tool provides the data carrier onto which you can save or export your data.

You can use third-party backup tools for the following actions:

  • Backing up to data carriers

    • Complete data backups

    • Incremental data backups

    • Log backups

    • Archiving the backup files (for log backups)

  • Restoring backups

    • Restoring the database using data backups, log backups, and archived log backups

  • Exporting data to data carriers

    • Exporting the entire database

    • Exporting the entire database catalog

  • Importing data from the data carriers

    • Importing the entire database

    • Importing the entire database catalog

The backup and restore procedures using third-party backup tools are described in:

Database Manager CLI, Backing Up and Restoring Databases

The procedures for exporting and importing data are described in the Loader documentation:

Loader, Exporting and Importing with Third-Party Backup Tools

Recommendation Recommendation

After you have defined the configuration, test all the planned actions. This allows you to familiarize yourself with the relevant SAP MaxDB database tool, and to test the correct configuration of the SAP MaxDB software for the backup tool. This is a prerequisite for ensuring that no errors occur when the third-party backup tool is used to back up, restore, import, or export data while the system is running in production operation.

End of the recommendation.

Constraints

With backups and restores, you only can switch from Microsoft Windows to Linux and vice versa. This means that a backup created on the Microsoft Windows operating system can only be restored on the same operating system or on Linux. A backup created on Linux can only be restored on the same operating system or on a Microsoft Windows operating system.

For data migration between different operating systems, in most cases Loader will be the best tool to use. Loaderl does not impose any restrictions on switching operating systems when exporting or importing data. However, there may be restrictions since various backup devices have a limited independence of the operating system. If, for example, you want to switch from Microsoft Windows to Unix, a tape device or a third-party backup tool must be compatible with both operating systems. Check this beforehand in your backup device documentation.

More Information

Database Administration, Using Third-Party Backup Tools

Certification of Third-Party Backup Tools

See [image] https://www.sdn.sap.com/irj/sdn/interface-certifications [image] BC-SDB


SAP Library - Loader

Start Level 1 Node: Loader Loader End Level 1 Node: Loader
Start Level 2 Node: Calling the Loader Calling the Loader End Level 2 Node: Calling the Loader
Start Level 2 Node: Opening a Session: Loader CLI Options Opening a Session: Loader CLI Options End Level 2 Node: Opening a Session: Loader CLI Options
Start Level 3 Node: Transport Mode Transport Mode End Level 3 Node: Transport Mode
Start Level 3 Node: Command File Mode Command File Mode End Level 3 Node: Command File Mode
Start Level 4 Node: Command File Command File End Level 4 Node: Command File
Start Level 3 Node: Session Mode Session Mode End Level 3 Node: Session Mode
Start Level 3 Node: Opening a Database Session: Loader CLI Options Opening a Database Session: Loader CLI Options End Level 3 Node: Opening a Database Session: Loader CLI Options
Start Level 3 Node: Input and Output: Loader CLI Options Input and Output: Loader CLI Options End Level 3 Node: Input and Output: Loader CLI Options
Start Level 3 Node: Determining Version Information: Loader CLI Options Determining Version Information: Loader CLI Options End Level 3 Node: Determining Version Information: Loader CLI Options
Start Level 2 Node: Loader Commands and SQL Statements Loader Commands and SQL Statements End Level 2 Node: Loader Commands and SQL Statements
Start Level 3 Node: Opening a Session: Loader Commands Opening a Session: Loader Commands End Level 3 Node: Opening a Session: Loader Commands
Start Level 4 Node: AUTOCOMMIT Command AUTOCOMMIT Command End Level 4 Node: AUTOCOMMIT Command
Start Level 4 Node: SET Command SET Command End Level 4 Node: SET Command
Start Level 4 Node: SQLMODE Command SQLMODE Command End Level 4 Node: SQLMODE Command
Start Level 4 Node: USE DB Command USE DB Command End Level 4 Node: USE DB Command
Start Level 4 Node: USE SCHEMA Command USE SCHEMA Command End Level 4 Node: USE SCHEMA Command
Start Level 4 Node: USE SCHEMAMAP Command USE SCHEMAMAP Command End Level 4 Node: USE SCHEMAMAP Command
Start Level 5 Node: CREATE/DROP SCHEMAMAP Statement CREATE/DROP SCHEMAMAP Statement End Level 5 Node: CREATE/DROP SCHEMAMAP Statement
Start Level 4 Node: USE USER Command USE USER Command End Level 4 Node: USE USER Command
Start Level 3 Node: Transformation Transformation End Level 3 Node: Transformation
Start Level 3 Node: Exporting: Loader Commands Exporting: Loader Commands End Level 3 Node: Exporting: Loader Commands
Start Level 4 Node: EXPORT DB Command EXPORT DB Command End Level 4 Node: EXPORT DB Command
Start Level 4 Node: EXPORT USER Command EXPORT USER Command End Level 4 Node: EXPORT USER Command
Start Level 4 Node: EXPORT SCHEMA Command EXPORT SCHEMA Command End Level 4 Node: EXPORT SCHEMA Command
Start Level 4 Node: EXPORT TABLE Command EXPORT TABLE Command End Level 4 Node: EXPORT TABLE Command
Start Level 4 Node: EXPORT COLUMNS Command EXPORT COLUMNS Command End Level 4 Node: EXPORT COLUMNS Command
Start Level 3 Node: Importing: Loader Commands Importing: Loader Commands End Level 3 Node: Importing: Loader Commands
Start Level 4 Node: IMPORT DB Command IMPORT DB Command End Level 4 Node: IMPORT DB Command
Start Level 4 Node: IMPORT USER Command IMPORT USER Command End Level 4 Node: IMPORT USER Command
Start Level 4 Node: IMPORT SCHEMA Command IMPORT SCHEMA Command End Level 4 Node: IMPORT SCHEMA Command
Start Level 4 Node: IMPORT TABLE Command IMPORT TABLE Command End Level 4 Node: IMPORT TABLE Command
Start Level 5 Node: Performance Improvement in the IMPORT TABLE Performance Improvement in the IMPORT TABLE End Level 5 Node: Performance Improvement in the IMPORT TABLE
Start Level 4 Node: IMPORT COLUMNS Command IMPORT COLUMNS Command End Level 4 Node: IMPORT COLUMNS Command
Start Level 3 Node: UPDATE COLUMNS Command UPDATE COLUMNS Command End Level 3 Node: UPDATE COLUMNS Command
Start Level 3 Node: Data Description Data Description End Level 3 Node: Data Description
Start Level 4 Node: Data Stream Data Stream End Level 4 Node: Data Stream
Start Level 4 Node: Data Format Data Format End Level 4 Node: Data Format
Start Level 4 Node: Code Specification Code Specification End Level 4 Node: Code Specification
Start Level 4 Node: CSV, FWV, FWV BINARY CSV, FWV, FWV BINARY End Level 4 Node: CSV, FWV, FWV BINARY
Start Level 4 Node: PAGES, RECORDS PAGES, RECORDS End Level 4 Node: PAGES, RECORDS
Start Level 4 Node: Data Carrier Type Data Carrier Type End Level 4 Node: Data Carrier Type
Start Level 3 Node: Column Description Column Description End Level 3 Node: Column Description
Start Level 4 Node: Data Types Data Types End Level 4 Node: Data Types
Start Level 4 Node: Position Description Position Description End Level 4 Node: Position Description
Start Level 4 Node: Importing Constants and Special Constants Importing Constants and Special Constants End Level 4 Node: Importing Constants and Special Constants
Start Level 4 Node: Selecting Data Records Selecting Data Records End Level 4 Node: Selecting Data Records
Start Level 4 Node: Output Column Output Column End Level 4 Node: Output Column
Start Level 3 Node: Table Name Table Name End Level 3 Node: Table Name
Start Level 3 Node: Date Specifications Date Specifications End Level 3 Node: Date Specifications
Start Level 3 Node: Time Specifications Time Specifications End Level 3 Node: Time Specifications
Start Level 3 Node: Time Stamp Specifications Time Stamp Specifications End Level 3 Node: Time Stamp Specifications
Start Level 3 Node: NULL Value Representation NULL Value Representation End Level 3 Node: NULL Value Representation
Start Level 3 Node: Exporting and Importing Using Third-Party Backup Tools Exporting and Importing Using Third-Party Backup Tools End Level 3 Node: Exporting and Importing Using Third-Party Backup Tools
Start Level 3 Node: Exporting and Importing LOB Values Exporting and Importing LOB Values End Level 3 Node: Exporting and Importing LOB Values
Start Level 4 Node: Exporting LOB Values Exporting LOB Values End Level 4 Node: Exporting LOB Values
Start Level 4 Node: Importing LOB Values Importing LOB Values End Level 4 Node: Importing LOB Values
Start Level 3 Node: Restarting Restarting End Level 3 Node: Restarting
Start Level 2 Node: Loader Log Functions Loader Log Functions End Level 2 Node: Loader Log Functions
Start Level 3 Node: Loader Log File Loader Log File End Level 3 Node: Loader Log File
Start Level 3 Node: Loader Transformation History Loader Transformation History End Level 3 Node: Loader Transformation History
Start Level 3 Node: Additional Log Functions (package_spec) Additional Log Functions (package_spec) End Level 3 Node: Additional Log Functions (package_spec)
Start Level 3 Node: Loader System Tables Loader System Tables End Level 3 Node: Loader System Tables
Start Level 2 Node: Loader Tutorial Loader Tutorial End Level 2 Node: Loader Tutorial
Start Level 3 Node: Demo Databases DEMODB and TESTDB Demo Databases DEMODB and TESTDB End Level 3 Node: Demo Databases DEMODB and TESTDB
Start Level 3 Node: Exporting Exporting End Level 3 Node: Exporting
Start Level 4 Node: EXPORT DB EXPORT DB End Level 4 Node: EXPORT DB
Start Level 4 Node: EXPORT USER EXPORT USER End Level 4 Node: EXPORT USER
Start Level 4 Node: EXPORT SCHEMA EXPORT SCHEMA End Level 4 Node: EXPORT SCHEMA
Start Level 4 Node: EXPORT TABLE EXPORT TABLE End Level 4 Node: EXPORT TABLE
Start Level 4 Node: EXPORT COLUMNS EXPORT COLUMNS End Level 4 Node: EXPORT COLUMNS
Start Level 3 Node: Importing Importing End Level 3 Node: Importing
Start Level 4 Node: IMPORT DB IMPORT DB End Level 4 Node: IMPORT DB
Start Level 4 Node: IMPORT USER IMPORT USER End Level 4 Node: IMPORT USER
Start Level 4 Node: IMPORT SCHEMA IMPORT SCHEMA End Level 4 Node: IMPORT SCHEMA
Start Level 4 Node: IMPORT TABLE IMPORT TABLE End Level 4 Node: IMPORT TABLE
Start Level 4 Node: IMPORT COLUMNS IMPORT COLUMNS End Level 4 Node: IMPORT COLUMNS
Start Level 3 Node: UPDATE COLUMNS UPDATE COLUMNS End Level 3 Node: UPDATE COLUMNS
Start Level 3 Node: Transport Mode Transport Mode End Level 3 Node: Transport Mode
Start Level 4 Node: Transport Transport End Level 4 Node: Transport
Start Level 4 Node: Export Export End Level 4 Node: Export
Start Level 4 Node: Import Import End Level 4 Node: Import
Start Level 3 Node: Command File Mode Command File Mode End Level 3 Node: Command File Mode
Start Level 3 Node: Session Mode Session Mode End Level 3 Node: Session Mode
Start Level 2 Node: Syntax Rules: Sorted Alphabetically Syntax Rules: Sorted Alphabetically End Level 2 Node: Syntax Rules: Sorted Alphabetically
Start Level 3 Node: autocommit_command autocommit_command End Level 3 Node: autocommit_command
Start Level 3 Node: backup_tool_spec backup_tool_spec End Level 3 Node: backup_tool_spec
Start Level 3 Node: bool_spec bool_spec End Level 3 Node: bool_spec
Start Level 3 Node: catalog_data_instream_part_spec catalog_data_instream_part_spec End Level 3 Node: catalog_data_instream_part_spec
Start Level 3 Node: catalog_data_instream_table_spec catalog_data_instream_table_spec End Level 3 Node: catalog_data_instream_table_spec
Start Level 3 Node: catalog_data_outstream_part_spec catalog_data_outstream_part_spec End Level 3 Node: catalog_data_outstream_part_spec
Start Level 3 Node: catalog_data_outstream_table_spec catalog_data_outstream_table_spec End Level 3 Node: catalog_data_outstream_table_spec
Start Level 3 Node: catalog_instream_spec catalog_instream_spec End Level 3 Node: catalog_instream_spec
Start Level 3 Node: catalog_outstream_spec catalog_outstream_spec End Level 3 Node: catalog_outstream_spec
Start Level 3 Node: code_page_spec code_page_spec End Level 3 Node: code_page_spec
Start Level 3 Node: code_spec code_spec End Level 3 Node: code_spec
Start Level 3 Node: column_assignment column_assignment End Level 3 Node: column_assignment
Start Level 3 Node: column_dataformat_spec column_dataformat_spec End Level 3 Node: column_dataformat_spec
Start Level 3 Node: column_function column_function End Level 3 Node: column_function
Start Level 3 Node: column_id column_id End Level 3 Node: column_id
Start Level 3 Node: column_name column_name End Level 3 Node: column_name
Start Level 3 Node: column_spec column_spec End Level 3 Node: column_spec
Start Level 3 Node: compare_operator compare_operator End Level 3 Node: compare_operator
Start Level 3 Node: condition condition End Level 3 Node: condition
Start Level 3 Node: configuration_spec configuration_spec End Level 3 Node: configuration_spec
Start Level 3 Node: csv_format_spec csv_format_spec End Level 3 Node: csv_format_spec
Start Level 3 Node: data_instream_column_spec data_instream_column_spec End Level 3 Node: data_instream_column_spec
Start Level 3 Node: data_instream_columns_spec data_instream_columns_spec End Level 3 Node: data_instream_columns_spec
Start Level 3 Node: data_instream_part_spec data_instream_part_spec End Level 3 Node: data_instream_part_spec
Start Level 3 Node: data_instream_table_spec data_instream_table_spec End Level 3 Node: data_instream_table_spec
Start Level 3 Node: data_outstream_column_spec data_outstream_column_spec End Level 3 Node: data_outstream_column_spec
Start Level 3 Node: data_outstream_part_spec data_outstream_part_spec End Level 3 Node: data_outstream_part_spec
Start Level 3 Node: data_outstream_table_spec data_outstream_table_spec End Level 3 Node: data_outstream_table_spec
Start Level 3 Node: database_spec database_spec End Level 3 Node: database_spec
Start Level 3 Node: date_spec date_spec End Level 3 Node: date_spec
Start Level 3 Node: delimiter_spec delimiter_spec End Level 3 Node: delimiter_spec
Start Level 3 Node: duplicates_clause duplicates_clause End Level 3 Node: duplicates_clause
Start Level 3 Node: ebid_spec ebid_spec End Level 3 Node: ebid_spec
Start Level 3 Node: exclude_include exclude_include End Level 3 Node: exclude_include
Start Level 3 Node: export_column_spec export_column_spec End Level 3 Node: export_column_spec
Start Level 3 Node: export_columns_command export_columns_command End Level 3 Node: export_columns_command
Start Level 3 Node: export_command export_command End Level 3 Node: export_command
Start Level 3 Node: export_db_command export_db_command End Level 3 Node: export_db_command
Start Level 3 Node: export_lobcolumn_spec export_lobcolumn_spec End Level 3 Node: export_lobcolumn_spec
Start Level 3 Node: export_schema_command export_schema_command End Level 3 Node: export_schema_command
Start Level 3 Node: export_table_command export_table_command End Level 3 Node: export_table_command
Start Level 3 Node: export_user_command export_user_command End Level 3 Node: export_user_command
Start Level 3 Node: field_assignment field_assignment End Level 3 Node: field_assignment
Start Level 3 Node: field_format_spec field_format_spec End Level 3 Node: field_format_spec
Start Level 3 Node: field_function field_function End Level 3 Node: field_function
Start Level 3 Node: field_spec field_spec End Level 3 Node: field_spec
Start Level 3 Node: field_type field_type End Level 3 Node: field_type
Start Level 3 Node: fwv_format_spec fwv_format_spec End Level 3 Node: fwv_format_spec
Start Level 3 Node: if_condition if_condition End Level 3 Node: if_condition
Start Level 3 Node: import_column_spec import_column_spec End Level 3 Node: import_column_spec
Start Level 3 Node: import_columns_command import_columns_command End Level 3 Node: import_columns_command
Start Level 3 Node: import_command import_command End Level 3 Node: import_command
Start Level 3 Node: import_db_command import_db_command End Level 3 Node: import_db_command
Start Level 3 Node: import_lobcolumn_spec import_lobcolumn_spec End Level 3 Node: import_lobcolumn_spec
Start Level 3 Node: import_schema_command import_schema_command End Level 3 Node: import_schema_command
Start Level 3 Node: import_table_command import_table_command End Level 3 Node: import_table_command
Start Level 3 Node: import_user_command import_user_command End Level 3 Node: import_user_command
Start Level 3 Node: instream_columnformat_spec instream_columnformat_spec End Level 3 Node: instream_columnformat_spec
Start Level 3 Node: instream_csv_spec instream_csv_spec End Level 3 Node: instream_csv_spec
Start Level 3 Node: instream_ddl_spec instream_ddl_spec End Level 3 Node: instream_ddl_spec
Start Level 3 Node: instream_fwv_spec instream_fwv_spec End Level 3 Node: instream_fwv_spec
Start Level 3 Node: instream_lob_spec instream_lob_spec End Level 3 Node: instream_lob_spec
Start Level 3 Node: instream_pages_spec instream_pages_spec End Level 3 Node: instream_pages_spec
Start Level 3 Node: instream_records_spec instream_records_spec End Level 3 Node: instream_records_spec
Start Level 3 Node: instream_tableformat_spec instream_tableformat_spec End Level 3 Node: instream_tableformat_spec
Start Level 3 Node: int_spec int_spec End Level 3 Node: int_spec
Start Level 3 Node: isolation_level_spec isolation_level_spec End Level 3 Node: isolation_level_spec
Start Level 3 Node: lob_code_spec lob_code_spec End Level 3 Node: lob_code_spec
Start Level 3 Node: map_column_field map_column_field End Level 3 Node: map_column_field
Start Level 3 Node: map_field_column map_field_column End Level 3 Node: map_field_column
Start Level 3 Node: map_schema_spec map_schema_spec End Level 3 Node: map_schema_spec
Start Level 3 Node: mediumtype_spec mediumtype_spec End Level 3 Node: mediumtype_spec
Start Level 3 Node: noheader_spec noheader_spec End Level 3 Node: noheader_spec
Start Level 3 Node: null_assign null_assign End Level 3 Node: null_assign
Start Level 3 Node: null_condition null_condition End Level 3 Node: null_condition
Start Level 3 Node: null_spec null_spec End Level 3 Node: null_spec
Start Level 3 Node: number_spec number_spec End Level 3 Node: number_spec
Start Level 3 Node: numerical_functions numerical_functions End Level 3 Node: numerical_functions
Start Level 3 Node: order_clause order_clause End Level 3 Node: order_clause
Start Level 3 Node: outstream_columnformat_spec outstream_columnformat_spec End Level 3 Node: outstream_columnformat_spec
Start Level 3 Node: outstream_csv_spec outstream_csv_spec End Level 3 Node: outstream_csv_spec
Start Level 3 Node: outstream_ddl_spec outstream_ddl_spec End Level 3 Node: outstream_ddl_spec
Start Level 3 Node: outstream_fwv_spec outstream_fwv_spec End Level 3 Node: outstream_fwv_spec
Start Level 3 Node: outstream_lob_spec outstream_lob_spec End Level 3 Node: outstream_lob_spec
Start Level 3 Node: outstream_pages_spec outstream_pages_spec End Level 3 Node: outstream_pages_spec
Start Level 3 Node: outstream_records_spec outstream_records_spec End Level 3 Node: outstream_records_spec
Start Level 3 Node: outstream_tableformat_spec outstream_tableformat_spec End Level 3 Node: outstream_tableformat_spec
Start Level 3 Node: package_spec package_spec End Level 3 Node: package_spec
Start Level 3 Node: records_format_spec records_format_spec End Level 3 Node: records_format_spec
Start Level 3 Node: remark_command remark_command End Level 3 Node: remark_command
Start Level 3 Node: restart_spec restart_spec End Level 3 Node: restart_spec
Start Level 3 Node: round_or_trunc_spec round_or_trunc_spec End Level 3 Node: round_or_trunc_spec
Start Level 3 Node: scale_spec scale_spec End Level 3 Node: scale_spec
Start Level 3 Node: schema_map_name schema_map_name End Level 3 Node: schema_map_name
Start Level 3 Node: schema_name schema_name End Level 3 Node: schema_name
Start Level 3 Node: schema_to_schema schema_to_schema End Level 3 Node: schema_to_schema
Start Level 3 Node: select_expression select_expression End Level 3 Node: select_expression
Start Level 3 Node: separator_spec separator_spec End Level 3 Node: separator_spec
Start Level 3 Node: sequence_number sequence_number End Level 3 Node: sequence_number
Start Level 3 Node: set_column_spec set_column_spec End Level 3 Node: set_column_spec
Start Level 3 Node: set_command set_command End Level 3 Node: set_command
Start Level 3 Node: simple_condition simple_condition End Level 3 Node: simple_condition
Start Level 3 Node: sql_mode sql_mode End Level 3 Node: sql_mode
Start Level 3 Node: sql_mode_command sql_mode_command End Level 3 Node: sql_mode_command
Start Level 3 Node: standard_code_spec standard_code_spec End Level 3 Node: standard_code_spec
Start Level 3 Node: standard_date_mask standard_date_mask End Level 3 Node: standard_date_mask
Start Level 3 Node: standard_time_mask standard_time_mask End Level 3 Node: standard_time_mask
Start Level 3 Node: standard_timestamp_mask standard_timestamp_mask End Level 3 Node: standard_timestamp_mask
Start Level 3 Node: start_spec start_spec End Level 3 Node: start_spec
Start Level 3 Node: table_dataformat_spec table_dataformat_spec End Level 3 Node: table_dataformat_spec
Start Level 3 Node: table_name table_name End Level 3 Node: table_name
Start Level 3 Node: time_spec time_spec End Level 3 Node: time_spec
Start Level 3 Node: timestamp_spec timestamp_spec End Level 3 Node: timestamp_spec
Start Level 3 Node: update_column_spec update_column_spec End Level 3 Node: update_column_spec
Start Level 3 Node: update_columns_command update_columns_command End Level 3 Node: update_columns_command
Start Level 3 Node: usage_spec usage_spec End Level 3 Node: usage_spec
Start Level 3 Node: use_database_command use_database_command End Level 3 Node: use_database_command
Start Level 3 Node: use_schema_command use_schema_command End Level 3 Node: use_schema_command
Start Level 3 Node: use_schema_map_command use_schema_map_command End Level 3 Node: use_schema_map_command
Start Level 3 Node: use_user_command use_user_command End Level 3 Node: use_user_command
Start Level 3 Node: user_spec user_spec End Level 3 Node: user_spec
Start Level 3 Node: Syntax Rules: Sorted Semantically Syntax Rules: Sorted Semantically End Level 3 Node: Syntax Rules: Sorted Semantically
Start Level 2 Node: Syntax Rules: Sorted Semantically Syntax Rules: Sorted Semantically End Level 2 Node: Syntax Rules: Sorted Semantically
Start Level 2 Node: Loader Terms: Overview Loader Terms: Overview End Level 2 Node: Loader Terms: Overview
Start Level 2 Node: Loader Keywords: Overview Loader Keywords: Overview End Level 2 Node: Loader Keywords: Overview


-1200: Too few values - SAP Documentation

Background documentation -1200: Too few values

Explanation

In an INSERT or UPDATE statement the number of specified values is less than the number of column names which may have been specified implicitly.

User Response

Match the number of specified values in the SQL statement with the number of specified column names. Use a QUERY statement issued on the system table DOMAIN.COLUMNS for an INSERT statement without column name specification to determine the definition of the table being used.


Consistency - SAP Documentation

Background documentation Consistency

See Database Structure


-51: Lock request timeout - SAP Documentation

Background documentation -51: Lock request timeout

Explanation

The lock request or an implicit lock conflicts with the locks of another user. The maximum waiting time for being granted the lock has elapsed (special database parameter RequestTimeout).

User Response

In some cases, the error message contains a more detailed description of the error.The lock request can be reissued. To avoid possible deadlock situations, it is advisable to roll back the transaction using a ROLLBACK statement.


Executing DBM Commands - SAP Documentation

Procedure documentation Executing DBM Commands

You execute a command using the command line tool Database Manager CLI (DBM command).

Prerequisites

You are logged on to the database as a database system administrator or DBM operator.

Procedure

  1. Select the database in the explorer tree.

  2. Choose Administration in the context menu of the database.

  3. Open the Command Line tab page.

  4. Enter the DBM command.

More Information

Database Manager CLI, Overview of All DBM Commands


TRANSFORMATIONPACKAGES - SAP Documentation

Object documentation TRANSFORMATIONPACKAGES

The system table SYSLOADER.TRANSFORMATIONPACKAGES contains all steps of a Loader transformation for a transformation package.

Structure

TRANSFORMATIONPACKAGES
PACKAGEGUID | CHAR(24) BYTE | Unique identification of the transformation package
TASKID | FIXED(6,0) | Identification of the transformation task
STEPID | FIXED(6,0) | Identification of the transformation step
OWNER | CHAR(32) | Table owner
SCHEMANAME | CHAR(32) | Schema name
TABLENAME | CHAR(32) | Table name
EXCLUDE | BOOLEAN | Transformation step was excluded (TRUE) or not (FALSE)
RESTART | BOOLEAN | Transformation step was executed (TRUE) or not (FALSE)

More Information

Loader, Transformation

Loader, Loader System Tables

Definitions of the System Tables


-10413: Illegal TIMESTAMP value for parameter/column (<number>) - SAP Documentation

Background documentation -10413: Illegal TIMESTAMP value for parameter/column (<number>)

Explanation

The value for parameter/column <number> could not be read or inserted, because the timestamp value is invalid

User Response

Enter a valid timestamp value.


-834: INCLUDEs must not be nested - SAP Documentation

Background documentation -834: INCLUDEs must not be nested

Explanation

Another INCLUDE statement was found within an INCLUDE file.

User Response

Remove the inner INCLUDE statement.


-24948: ERR_NODBNAME - database name required - SAP Documentation

Background documentation -24948: ERR_NODBNAME - database name required

Explanation

You can use this DBM statement on a database instance only.

User Response

Use the option -d to specify the name of the database instance for the DBM server.


-1002: Too many columns - SAP Documentation

Background documentation -1002: Too many columns

Explanation

  1. The maximum number of columns specified under Restrictions for SQL Statements has been exceeded.

  2. A named index can be created across a maximum of 16 columns of a table.

  3. In a referential CONSTRAINT definition, more referencing columns were specified than referenced columns. The number of specified columns in the referencing table must correspond to the specified number of referenced columns in the referenced table.

User Response

  1. Use a QUERY-statement issued on the system table DOMAIN.COLUMNS to find out the current definition of the table. You must not define any further columns.

  2. Correct the number of columns in the index definition.

  3. Use a QUERY statement issued on the DOMAIN.COLUMNS system table to view the complete definition and the key columns of the referenced table.


-27000: Unknown error - SAP Documentation

Background documentation -27000: Unknown error

Explanation

A system error has occurred.

User Response

Contact Support.


Time Specifications - SAP Documentation

Background documentation Time Specifications

You use this syntax rule to specify the data format of the plain text values in which TIME columns are input and output. This format only applies to the import or export Loader command in which it is specified. If a time format is not specified in a command, either the Loader default or a value specified with the SET TIME command is used. You use the SET TIME command to specify the time format for all subsequent commands. In a single Loader session, this applies until a new SET command is executed.

Structure

Syntax Syntax

  1. <set_time_command> ::=
  SET TIME <standard_time_mask>

<time_spec> ::=
  TIME <standard_time_mask>
| TIME '<free_mask_time>'

<standard_time_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.
<standard_time_mask>
'HHHH' | Four-digit hour format
'HH' | Two-digit hour format
'MM' | Two-digit minute format (00-59)
'SS' | Two-digit second format (00-59)
Format | General Format | Example
EUR | 'HH.MM.SS' | '14.30.08'
INTERNAL | 'HHHHMMSS' | '00143008'
ISO/JIS | 'HH:MM:SS' | '14:30:08'
USA | 'HH:MM AM' 'HH:MM PM' | '2:30 PM'

Minutes and seconds must have two digits. Hours must have two digits except in format INTERNAL. In format INTERNAL, the hours may have either two or four digits. When data is imported, hours greater than 24 cause errors, except in format INTERNAL. When data is exported, hours are displayed modulo 24, except in format INTERNAL. In format INTERNAL, you can specify hours up to 9999.

<set_time_command>

This setting of a standardized time mask using SET TIME command applies to the entire Loader session, provided that the time mask is not changed by another SET TIME command.

<time_spec>

You can change the current time mask for individual commands by using the syntax element time_spec to define the data format (field_format_spec).

TIME <standard_time_mask>

You use the standard_time_mask to specify the format for plain text values in which TIME columns are input and output (default value: INTERNAL).

TIME '<free_mask_time>'

You use any time mask free_mask_time to specify the format for plain text values in which TIME columns are entered and displayed. Use H for hours, M for minutes, and S for seconds. Minutes and seconds must have two digits. Hours must have two or four digits.

Example

Example Example

EXPORT COLUMNS * FROM hotel.reservation

DATA OUTSTREAM 'reservation_csv.data'

  TIME ISO

End of the example.

Standard time mask ISO is specified.

Example Example

EXPORT COLUMNS * FROM hotel.reservation

DATA OUTSTREAM 'reservation_csv.data'

  TIME 'HH:MM:SS'

Example of the content of the data stream:

"14:30:08"

End of the example.

Free mask HH:MM:SS is specified for times.

More Information

Date Specifications

Time Stamp Specifications

Loader Commands and SQL Statements


-25250: Error building URI for encrypted connection: <error_text> - SAP Documentation

Background documentation -25250: Error building URI for encrypted connection: <error_text>

Explanation

You have tried to create an encrypted connection to the database using the Loader. This attempt terminated with an error. The error message contains an additional error text stating the cause of the error.

User Response

Fix the cause of the error and re-execute the command.


-10901: No space left in request packet - SAP Documentation

Background documentation -10901: No space left in request packet

Explanation

The method that was called failed, because the buffer for the connection to the database is too small to execute the SQL statement. The SQL statement is probably too long or too complicated, or additional functions such as the SQLDBC_Prepared_Statement::setCommandInfo method were used.

User Response

You have the following options:

  • Use the CommandBufferSize database parameter to increase the buffer size.

  • Shorten the SQL statement.

  • Use less parameters/columns in the SQL statement.


-858: Storage class not allowed - SAP Documentation

Background documentation -858: Storage class not allowed

Explanation

The C storage class is not allowed.

User Response

Choose another storage class.


-10400: Conversion looses significant digits for parameter/column (<number>) - SAP Documentation

Background documentation -10400: Conversion looses significant digits for parameter/column (<number>)

Explanation

The numeric (floatingpoint or fixed) value for parameter/column <number> could not be read or inserted, because the length of the parameter or column is too small.

User Reponse

Perform one of the following actions:

  • Increase the host variable length that is bound to the parameter using the SQLDBC_PreparedStatement::bindParameter method or to the column using the SQLDBC_ResultSet::bindColumn method

  • Choose another data type for the host variable

  • Adapt your SQL statement

  • Adapt your table definition.


-10315: Invalid start position (<number>) - SAP Documentation

Background documentation -10315: Invalid start position (<number>)

Explanation

An invalid position was transferred during positioned reading of data from a LOB value.

User Response

Check the position specified.


-1112: Constraint too complicated - SAP Documentation

Background documentation -1112: Constraint too complicated

Explanation

The internal representation of the constraint is longer than the space available for it.

User Response

Simplify the constraint or split it into several constraints.


-25022: Received cancel request; stopping execution - SAP Documentation

Background documentation -25022: Received cancel request; stopping execution

Explanation

The database user has sent a request to the Loader to cancel the further processing of commands and statements using the Ctrl+C command.

User Response

No user action is required.


-28012: Wrong class entry pointer - SAP Documentation

Background documentation -28012: Wrong class entry pointer

Explanation

Defining a link to a class entry in the container-entry failed, since the appropriate session is NULL.

User Response

Contact Support.


Kernel Administration - SAP Documentation

Procedure documentation Kernel Administration

In the Logs user menu, you can find among others a display of administrative commands that are sent from the DBM Server to the database kernel.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Logs [image] Kernel Administration [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] Kernel Administration [image] (not for SAP NetWeaver 7.1).

More Information

DBA Cockpit: SAP MaxDB, Kernel Administration

Database Administration, Log Files


-24943: ERR_USRDELDBM - cannot delete DBM operator - SAP Documentation

Background documentation -24943: ERR_USRDELDBM - cannot delete DBM operator

Explanation

The specified DBM operator has special properties and cannot be deleted.

User Response

You are not allowed to delete this user. If unauthorized persons know the user name and password, change the password of the database manager operator. Use the DBM command user_put.


-24986: ERR_NOMEDIA - media file not found - SAP Documentation

Background documentation -24986: ERR_NOMEDIA - media file not found

Explanation

No backup templates have been defined yet for the database instance.

User Response

  • Define a suitable backup template.

  • Check that the DBM server can access its configuration files. Check the authorizations.


-827: Duplicate type definition - SAP Documentation

Background documentation -827: Duplicate type definition

Explanation

The name was already specified for an SQL type definition.

User Response

Rename the SQL type.


From -700 to -899 - SAP Documentation

Background documentation From -700 to -899

JDBC Interface Messages
Message Number | Message Text
-702 | Missing variable address in SQLDA
-703 | Duplicate FETCH statement with MFETCH option not allowed
-706 | SQL statement too long (buffer overflow)
-707 | Invalid CONNECT statement syntax
-708 | SERVERDB system not available
-709 | CONNECT failed, check SERVERDB
-710 | Missing SELECT PARSID
-711 | Implicit CONNECT: missing user of SERVERDB
-712 | Too many parameters, SQLMAX too small
-715 | Missing username or password for CONNECT
-719 | Unknown LOCALSYSUSER.SYSPROFILE table
-720 | SQLCODE <no> comes from SYSPROFILE command
-721 | Macro not initiated, no SQLCHECK
-724 | Duplicate substructure name
-729 | Source code may be truncated
-730 | Nested comment not closed
-731 | Component name too long
-732 | Index of component out of range
-733 | Variable is declared as a pointer
-734 | Pointer bariable not allowed here
-735 | No syntax check for CONNECT command
-740 | Array size mismatch
-743 | Input string too long
-750 | FFETCH or ARRAY-FETCH and FETCH mix not allowed
-751 | Numeric input parameter overflow
-752 | Session already connected
-753 | Output parameter with CONST type
-756 | Different SQLMODEs not allowed
-758 | Include file exists on disk
-759 | Include file produced by user
-760 | Memory allocation failed
-762 | EXEC ORACLE command has been deleted
-763 | Variable not allowed as ARRAY
-767 | Unterminated C string
-768 | Invalid escape value
-769 | Pointer component not allowed
-770 | Macro in FETCH set SQLOPT="-B 0"
-771 | LONG column exists in table definition
-772 | Multibyte char set not allowed
-773 | Datafile open error
-774 | Datafile write error
-775 | Datafile read error
-776 | Datafile close error
-777 | Convertion from UNICODE impossible
-778 | Convertion to UNICODE impossible
-801 | Input parameter cannot be NULL value
-802 | Invalid numeric input parameter value
-804 | Parameter list to long
-805 | Program must be precompiled
-806 | DB session numer not allowed
-807 | Connection down, session released
-808 | Not yet implemented
-809 | Missing indicator variable, output parameter with NULL value
-811 | Numeric output parameter overflow
-812 | Parameter list too short
-813 | SERVERDB must be restarted
-814 | Trace file close error
-815 | Trace file open error
-816 | Trace file write error
-817 | Incompatible data types
-818 | Missing macro parameter initialization
-819 | Parameter in SQL statement not allowed
-820 | Invalid declare statement
-822 | Invalid constant definition
-823 | Integer too large, greater than 32767
-824 | Statement in conflict with COMPATIBLE option
-825 | Duplicate field name in record
-826 | Duplicate statement name
-827 | Duplicate type definition
-828 | Duplicate variable name
-829 | File close error
-830 | File open error
-831 | File read error
-832 | File write error
-833 | Illegal INCLUDE position
-834 | INCLUDEs must not be nested
-835 | INCLUDE file open error
-836 | Invalid C preprocessor command
-837 | Data definition not allowed
-838 | Invalid declarator
-839 | Invalid macro value
-840 | Invalid numeric macro value
-841 | Invalid precompiler option
-842 | Parameter and indicator structures do not match
-843 | Invalid parameter name
-844 | Invalid record name
-845 | Invalid SQL statement
-846 | Invalid statement in section
-847 | Invalid type definition
-848 | Invalid unsigned integer
-849 | Invalid variable definition
-850 | Statement termination expected
-851 | Missing input file name
-852 | Missing program file
-853 | Precompiler syntax check only
-854 | Parameters must be question marks
-855 | SQL variable must be an array
-856 | Invalid loop parameter value
-857 | Missing SERVERDB
-858 | Storage class not allowed
-859 | Number of columns < numer of parameters
-860 | To many constants declared
-870 | Too many type definitions
-871 | Too many variable definitions
-872 | Number of columns > numer of parameters
-873 | Unknown constant name
-874 | Unknown cursor name
-876 | Unknown macro number
-877 | Unknown parameter name
-878 | Unknown record name
-879 | Unknown precompiler statement
-880 | Unknown statement name
-881 | Unknown type name
-882 | Missing user name for CONNECT
-883 | Invalid runtime options
-884 | Missing indicator variabeI
-885 | Variable may be truncated
-886 | DECLARE SECTION BEGIN or END missing
-887 | Too long WHENEVER ACTION
-889 | Input line longer than 512 characters
-890 | Input line longer than right margin
-892 | Variable may overflow
-893 | Too many hostvariables
-894 | Trace parameter structure not allowed
-895 | Whole table may be deleted or updated
-899 | Error unknown


Snapshots - SAP Documentation

Procedure documentation Snapshots

The Space user menu of the DBA Cockpit gives you information about the snapshot of the database system.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Snapshots [image] .

Result

The snapshots of the database system are displayed.

More Information

System Tables, SNAPSHOTS

Database Administration, Snapshot of the Data Area


-28804: Too old OID - SAP Documentation

Background documentation -28804: Too old OID

Explanation

When liveCache de-referenced an OID, it could not decide whether the OID ever existed.See also error message –28815.This error is translated as an OmsOutOfDate Exception.

User Response

Contact Support.


-1009: Too many named indexes for this table - SAP Documentation

Background documentation -1009: Too many named indexes for this table

Explanation

A maximum of 255 named indexes can be created for each table.

User Response

Check whether you need this many indexes.The amount of work needed to maintain indexes for change operations, and the amount of memory needed for the indexes, is usually out of proportion to the benefits.


-3073: Invalid value for TYPE on datasource - SAP Documentation

Background documentation -3073: Invalid value for TYPE on datasource

Explanation

The specified TYPE identifier is unknown.

User Response

Correct the statement for creating a datasource and use one of the valid TYPE identifiers.


-5007: Missing numeric constant - SAP Documentation

Background documentation -5007: Missing numeric constant

Explanation

A number is missing.

User Response

The error position indicates the location of the missing number. Insert a number into the SQL statement.


-7015: More than one result row not allowed - SAP Documentation

Background documentation -7015: More than one result row not allowed

Explanation

  1. This error may occur when a SINGLE SELECT statement is executed and more than one row complies with the search condition.

  2. This error can also occur if a subquery specified in a comparison predicate or a SET UPDATE clause of an UPDATE statement is executed and more than one row complies with the search condition.

User Response

  1. The SINGLE SELECT statement can be replaced with a QUERY statement and a sequence of FETCH statements; or it can be ensured that at most one row complies with the conditions by expanding the search condition.

  2. You can replace the comparison predicate with a quantity comparison predicate. You can try to change the subquery in such a way that it contains at most one row as the result by specifying DISTINCT or by expanding the search condition.


Importing LOB Values - SAP Documentation

Background documentation Importing LOB Values

You can use the IMPORT TABLE and IMPORT/UPDATE COLUMNS commands to import (or update) LOB values to a target table. Using the relevant Loader syntax rules, you can define which of the columns of a target table the LOB values are exported to or which of the columns are updated.

Note Note

Special syntax rules for handling LOB values are not required if you use PAGES or RECORDS formats.

End of the note.

Structure

Syntax Syntax

  1. <import_lobcolumn_spec> ::=
  LOB <instream_lob_spec>
<intream_lob_spec> ::=
  INSTREAM [FILE] <column_spec> <lob_code_spec>
| INSTREAM [FILE] <column_spec> '<stream_name>'
    [<lob_code_spec>]

<column_spec> ::=
  <column_name>
| <column_id>

<lob_code_spec> ::=
  <code_spec>
| BINARY
End of the code.
<column_spec>

You can use the column name (column_name) or the column ID (column_id) for a LOB column that is to be imported. The column ID reflects the position of the column in the column list.

Example Example

Specify the LOB column name INFO

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

LOB INSTREAM info 'hotel_info.data'

End of the example.

Example Example

Specify the column ID of the LOB column INFO

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

LOB INSTREAM 5 'hotel_info.data'

End of the example.
<lob_code_spec>

With the syntax rule lob_code_spec, you can also specify the code type for all data streams containing LOB values that are to be imported to a column . You can only specify one code type for all the data streams, as the code type has to be specified in the command.

Example Example

Specifying the ASCII code type

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

LOB INSTREAM info 'hotel_info.data' ASCII

End of the example.
Specifying the LOB Data Stream <stream_name>

The data for LOB values is stored in LOB data streams separately from the other data. These stream_name data streams (name and path of the data stream) are always of data carrier type FILE. When you import LOB values, you must distinguish between the following cases:

  • Each LOB value to be imported is in a separate LOB data stream.

  • All of a column’s LOB values that are to be imported are in one LOB data stream.

Each LOB Value to be Imported is in a Separate LOB Data Stream

You do not need to use any of the LOB syntax rules in the IMPORT command, as Loader evaluates the DATA data stream. After the corresponding export has been carried out (Exporting LOB Values, Each LOB Value to be Exported is Exported in a Separate LOB Data Stream), the column values are replaced in the DATA data stream by the names of the LOB data streams that are to be imported (if required, the sequential numbering is extended). The LOB data streams are imported entirely as LOB values.

Example Example

The LOB data streams are imported entirely as LOB values

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

  hno      1

  name    2

  zip      3

  address  4

  info    5 DEFAULT NULL

Content of the DATA data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","hotel_info.data001"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","hotel_info.data002"

End of the example.

You can also use the LOB INSTREAM [FILE] <column_spec> <lob_column_spec> syntax rule in the IMPORT command if you want the values in the LOB data streams to be imported according to the code type specified. In this case, the DATA data stream contains the names of the LOB data streams to be imported (possibly enhanced with sequential numbering) instead of the column values. The LOB data streams are imported as LOB values.

Example Example

The LOB data streams are imported as LOB values and are read in binary.

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

  hno      1

  name    2

  zip      3

  address  4

  info    5 DEFAULT NULL

LOB INSTREAM info BINARY

Content of the DATA data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","hotel_info.data001"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","hotel_info.data002"

End of the example.
All of a Column’s LOB Values that are to be Imported are in One LOB Data Stream

You use syntax rule LOB INSTREAM [FILE] <column_spec> '<stream_name>' to specify the LOB data stream. After the corresponding export has been carried out (Exporting LOB Values, All LOB Values to be Exported are Exported to One LOB Data Stream), the column values are replaced in the DATA data stream by the positions of the LOB values in the LOB data stream.

Example Example

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

  hno      1

  name    2

  zip      3

  address  4

  info    5 DEFAULT NULL

LOB INSTREAM info 'hotel_info.data'

Content of the DATA data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","1-995"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","996-1074"

End of the example.

You can use the LOB INSTREAM [FILE] <column_spec> '<stream_name>' syntax rule in the IMPORT command if you want the values in the LOB data streams to be imported according to the code type specified. In this case also, only the positions of the LOB values in the LOB data stream are specified in the DATA data stream.

Example Example

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

  hno      1

  name    2

  zip      3

  address  4

  info    5 DEFAULT NULL

LOB INSTREAM info 'hotel_info.data' ASCII

Content of the DATA data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","1-995"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","996-1074"

End of the example.

More Information

Exporting and Importing LOB Values


-8064: Conversion from remote datatype is not possible - SAP Documentation

Background documentation -8064: Conversion from remote datatype is not possible

Explanation

The current definition of the external table requires a conversion between the column type of a remote column and the corresponding column in the external table. This conversion is not possible because both data types are too different.

User Response

Change the definition of the external table to make both data types comparable.


-28601: Object data packet for read missing - SAP Documentation

Background documentation -28601: Object data packet for read missing

Explanation

A data packet is missing because an end point has sent too few data packets.This error only occurs if you are using socket communication. In shared memory communication, data is exchanged directly using shared memory. In contrast, in socket communication, data is sent in extra packets before the request packet and after the response package.

User Response

Contact your local support.


From -22000 to -22999 - SAP Documentation

Background documentation From -22000 to -22999

Error Messages of the ODBC Program
-22000 | Null values not allowed on more than one long column
-22005 | Connection timeout occurred. Session reconnected


-25314: Fractional part too small for column '<column_name>', minimum length: <length> - SAP Documentation

Background documentation -25314: Fractional part too small for column '<column_name>', minimum length: <length>

Explanation

Error executing the Loader command for exporting data. The format you have defined for the external display of the specified column’s values (DECIMAL or ZONED format) contains too few decimal places. The number required is determined by the column definition in the database instance and/or the operations that are performed on the column values when they are exported.

User Response

Correct the specifications you made for the external display of this column and re-execute the command.


-28529: Too small name buffer - SAP Documentation

Background documentation -28529: Too small name buffer

Explanation

The buffer for the return values is too small for omsGetLiveCacheVersion, omsGetLocalDateTime, omsGetLocalDateTime or omsGetSchemaName.

User Response

Contact Support.


EXPORT USER Command - SAP Documentation

Background documentation EXPORT USER Command

You can use the Loader command EXPORT USER to export the data belonging to the application of the database user logged onto the database.

Prerequisites

You can use the EXPORT USER command to export objects owned by the database user logged on to the database.

Structure

Syntax Syntax

  1. <export_user_command> ::=
  EXPORT USER
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<catalog_data_outstream_part_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_part_spec>
| <catalog_outstream_spec> <data_outstream_part_spec>
<catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>
<data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>

<package_spec> ::=
  PACKAGE <oustream_csv_spec>

<restart_spec> ::=
  RESTART <package_guid>
<package_guid> ::=
  <unsigned_integer>
End of the code.
<catalog_outstream_spec>, <data_outstream_part_spec>

Depending on whether the database catalog and/or application data is exported, the following data streams are generated during export:

  • Data stream for database catalog definitions CATALOG <outstream_ddl_spec>

  • Data stream for application data DATA <outstream_tableformat_spec>

System table SYSLOADER.TRANSFORMATIONMODEL and additional system tables are filled. Only one of the formats PAGES or RECORDS is possible for the data stream of the outstream_tableformat_spec application data.

See: Data Stream, PAGES, RECORDS

Syntax Syntax

  1. EXPORT USER
  [<configuration_spec>]
  <catalog_outstream_spec> <data_outstream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT USER command exports the data belonging to the application of the database user logged onto the database.

Syntax Syntax

  1. EXPORT USER
  <catalog_outstream_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT USER command exports the catalog information belonging to the application for the database user who is logged on.

Syntax Syntax

  1. EXPORT USER
  [<configuration_spec>]
  <data_outstream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT USER command exports the application data of the database user who is logged on.

<configuration_spec>

You can exclude tables from the export.

  • If you do not specify a data stream using CONFIGURATION <instream_csv_spec>, all the application data is exported.

  • If you specify a data stream using CONFIGURATION <instream_csv_spec>, you can exclude the application data of selected tables from the export of the outstream_tableformat_spec application data. The tables must be identified in the data stream by specifying their schema and table name. The information about which tables are not exported is stored in the system tables. One way of displaying this information is to display the system table SYSLOADER.TRANSFORMATIONMODEL. The tables excluded from the export of the application data have the value TRUE in the EXCLUDE column.

The database catalog entries CATALOG <outstream_ddl_spec> are always exported for all tables, regardless of the restrictions set using CONFIGURATION <instream_csv_spec>.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

<restart_spec>

You can restart the export or import using the package_guid (ID created by Loader for every command at runtime. This integer is always 24 bytes long). The user can determine the package_guid of the corresponding export or import commands from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command with the corresponding package_guid using the restart_spec syntax element.

See: Restarting

Result

The application data and/or the database catalog are exported to the data_outstream_part_spec and catalog_outstream_spec data streams. If necessary, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to the package_spec data stream. You can use the corresponding IMPORT command to restore the database catalog and/or the application data.

Errors: The export cannot be completed successfully. Loader writes the cause of the error to the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, EXPORT USER

More Information

Exporting: Loader Commands

IMPORT USER Command

Loader Log File

Loader System Tables


-24951: ERR_USRREAD - could not read user data - SAP Documentation

Background documentation -24951: ERR_USRREAD - could not read user data

Explanation

The database manager operator (DBM operator) data could not be read.

User Response

Check the file system attributes and the operating system rights of the user profile container. For more information about the user profile container, see Database Administration, Configuration Files.

Use the DBM command user_getall to check the existence of the user.


Messages - SAP Documentation

Procedure documentation Messages

In the Diagnosis user menu of the DBA Cockpit you can find, among other things, a display of messages from the Database Manager and the X Server.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Messages [image] .

Result

The system provides you with the following user menus:

  • Database Manager

  • Remote SQL Server

More Information

Database Files


-25240: Incomplete logon parameters; password missing - SAP Documentation

Background documentation -25240: Incomplete logon parameters; password missing

Explanation

In the command to log on a database user you have forgotten to specify a password.

User Response

Enter the password of the database user who has to be logged on and re-execute the command.


Creating View Tables - SAP Documentation

Procedure documentation Creating View Tables

A view table is a view of an existing table. A view table never actually exists physically but rather is formed by the database system from the rows of the underlying table(s).

Prerequisites

  • You are logged on to the database as a database user.

  • You have the SELECT privilege for all columns that you want to include in the view table.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the table that you want to use as the basis for the view table.

  2. In the context menu of the table, choose [image] New [image] View.

  3. Enter the following data:

    View: Properties

    Property

    Description (Link to SQL Reference Manual)

    View Name

    The same rules as for table names apply: Table Name (table_name)

    Schema

    Schema Name (schema_name)

    Check on Insert and Update

    If this option is set, you cannot use INSERT or UPDATE statements on the view table to generate any rows that can afterwards no longer be selected via the view table. Resulting rows must fulfill the view table's search condition.

    The option is inherited. This means that, if you have defined a view table VIEWTABLE1 with this option and are using VIEWTABLE1 in the FROM condition of a modifiable view table VIEWTABLE2, then only rows that can be selected using VIEWTABLE1 may be added or modified with VIEWTABLE2.

    Replace Existing View

    If you choose these option, the view table replaces a previously existing view table.

  4. To copy the columns that you want to display in the result view, drag them to the Query Columns area.

  5. Optional: In the Query Columns area, enter search conditions and other attributes of the result view.

    Visual Query: Search Conditions and Attributes of the Result View

    Property

    Description

    Synonym

    Synonym for the column name in the result view

    Visible

    Column is displayed in the result view.

    Order

    Listing of column values in the result view

    Predicate

    Search condition

    • If you specify a search condition for a column with the data type CHAR, VARCHAR, DATE, or TIME, you must put the relational expression between single quotation marks.

    • You can enter more than one search condition using AND or OR links. If you want to use one column several times to formulate search conditions, but only want to display it once, you can hide it in the result view.

    • To enter several search conditions with AND links, enter them in the same row.

    • To formulate several search conditions with OR links, enter each of these conditions in a new row.

    More information: SQL Reference Manual,

    • Search Condition (search_condition)

    • Predicate (predicate)

  6. In the context menu of the editor window, choose Execute.

    You become the owner of the view table. For information about the privileges that the owner of the table view has, see SQL Reference Manual under INSERT-/UPDATE/DELETE Privilege for Owners of the View Table.

More Information

SQL Reference Manual, CREATE VIEW Statement (create_view_statement)


-3067: Invalid timezone - SAP Documentation

Background documentation -3067: Invalid timezone

Explanation

An invalid value for timezone was specified in the function NEW_TIME.

User Response

Repeat the SQL statement with a correct timezone.


Administration - SAP Documentation

Procedure documentation Administration

The Database Assistant and liveCache Assistant contain, among other things, the functions for administering a database or SAP liveCache database.

Note Note

When a database user performs administration functions, administration is locked for all other database users.

End of the note.

Prerequisites

Prerequisites

SAP liveCache Technology: In accordance with the authorization concept, the user was assigned one of the roles SAP_BC_LVC_OPERATOR, SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose Administration.

Result

The following views and functions are available to you for the selected database/SAP liveCache database:

  • Configuration

  • SAP liveCache Technology: Operating


-24988: ERR_SQL - sql error - SAP Documentation

Background documentation -24988: ERR_SQL - sql error

Explanation

An error occurred when an SQL statement was transferred to the database kernel.

User Response

You may need to consult the other database kernel error message and correct your entries accordingly.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


Command File Mode - SAP Documentation

Background documentation Command File Mode

The following are instructions on how to execu‎te the Transport, Export or Import of data with Loader CLI in command mode.

Prerequisites

You require the demo databases DEMODB and TESTDB. Start the Loader in command file mode: loadercli -b <command.dat>. The command_file contains the Loader commands necessary for the planned transformation.

A command file can be generated, for example, when a transformation is executed with the Loader in transport mode. You can then modify the file and execute it in Loader command file mode. See also: Loader, Command file Mode, Command File, Transport Mode, Transformation

Activities

Calling the Loader CLI in vommand file mode

Example Example

loadercli -b command.dat -d demodb -u mona,red -n genua -E 20

End of the example.

The Loader establishes a connection to the database DEMODB on computer GENUA for the database user MONA. The Loader processes the commands and statements contained in the command file command.dat. If errors occur (return code <> 0), processing of the command file is terminated as soon as 20 commands have terminated with an error.

Example Example

The command file command.dat may have the following content:

//IMPORT TABLE DATA

IMPORT TABLE hotel.customer

CATALOG INSTREAM 'customer_ddl.catalog'

DATA INSTREAM 'customer_csv.data'

PAGE WITH 25 ROWS USAGE

//CREATE INDEX

CREATE INDEX customer_index ON hotel.customer(name ASC,firstname ASC)

//EXPORT COLUMNS

EXPORT COLUMNS cno, title, name, firstname

FROM hotel.customer WITH LOCK

DATA OUTSTREAM 'newcustomer_csv.data'

End of the example.

This command file contains the following Loader commands and SQL statements: IMPORT TABLE, CREATE INDEX and EXPORT COLUMNS. You have to specify the information on the database session (database user, name of database, name of database computer) as a command line option when you call the Loader.

Calling the Loader CLI in Command File Mode with an Explicitly Specified Command Separator

Example Example

loadercli -b command.dat -d demodb -u mona,red -n genua -E 20 -cs ;

End of the example.

The Loader establishes a connection to the database DEMODB on computer GENUA for the user MONA. The Loader processes the commands and statements contained in the command.dat command file. If errors occur (return code <> 0), processing of the command file is terminated as soon as 20 commands have terminated with an error.

Example Example

The command file command.dat may have the following content:

//IMPORT TABLE DATA

IMPORT TABLE hotel.customer

CATALOG INSTREAM 'customer_ddl.catalog'

DATA INSTREAM 'customer_csv.data'

PAGE WITH 25 ROWS USAGE;

//CREATE INDEX

CREATE INDEX customer_index ON hotel.customer(name ASC,firstname ASC);

//EXPORT COLUMNS

EXPORT COLUMNS cno, title, name, firstname

FROM hotel.customer WITH LOCK

DATA OUTSTREAM 'newcustomer_csv.data';

End of the example.

This command file contains the following Loader commands and SQL statements: IMPORT TABLE, CREATE INDEX and EXPORT COLUMNS, all of which require a subsequent semi-colon. You have to specify the information on the database session (database user, name of database, name of database computer) as a command line option when you call the Loader.

Creating a Command File in Transport Mode and Executing it in the Command File Mode

You have already executed an export with the Loader in transport mode. The package directory contains the command file 20060322101010.EXPORT. You can execute the commands contained in the command file in command file mode. To do this, proceed as follows:

  1. Change to the package directory:

    <loader_user_data>\packages\export\GENUA\DEMODB\20060322101010

  2. Start the export:

    loadercli -b 20060322101010.EXPORT -d demodb -u mona,red -s hotel -E 10

More Information

Transport Mode

Session Mode

Loader, Loader Log File


Repository - SAP Documentation

Background documentation Repository

A repository is a central storage location where you can, for example, store SQL statements or definitions of database objects.

More Information

Database Studio,

  • Saving SQL Statements or Definitions of Database Objects in a Repository

  • Editing Objects in a Repository

Concepts of the Database System, Repositories


25600: CONFIGURATION stream is not supported for this Loader command - SAP Documentation

Background documentation 25600: CONFIGURATION stream is not supported for this Loader command

Explanation

You have executed a command to export or import data of a particular table and entered a configuration file in the command. A configuration file is not supported for processing particular tables using the Loader.This warning does not cause the command to terminate.

User Response

No user action is required.


Tracking Problem Messages in PTS - SAP Documentation

Procedure documentation Tracking Problem Messages in PTS

Procedure

To find out about known problems with the MaxDB or the SAP DB software or to track the processing of problems you have reported, use the web access on the internal SAP MaxDB Problem Tracking System (PTS).

Enter the following address in your web browser:

http://maxdb.sap.com/webpts


Changing Log Settings - SAP Documentation

Procedure documentation Changing Log Settings

The log settings determine how the database logs data changes.

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for accessing database parameters (read and write).

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Log Settings...

  3. Select a log setting.

    Log Settings

    Name

    Description

    Log mode

    Specifies whether the database system supports software-based mirroring of the log volumes.

    • The log volumes are not mirrored

      Default value

    • The log volumes are mirrored (software-based)

      Only use this setting if hardware-based mirroring, for example using a RAID system, is not possible. Software-based mirroring reduces the performance of your database system..

      When software-based mirroring is activated, the database system writes redo log entries to two log areas in parallel (primary and secondary log area). The database system can only overwrite the log areas with new log entries after the log entries in the primary log area have been backed up.

    Overwrite mode for the log area

    Specifies whether the database system can overwrite redo log entries in the log area even if they have not been backed up.

    • OFF

      The database system can only overwrite the log area once the corresponding redo log entries have been backed up. We therefore recommend that you activate the automatic log backup function or regularly carry out interactive log backups.

    • ON

      The database system cyclically overwrites the log area without first backing up the redo log entries. This results in gaps in the backup history. This, in turn, means that you can only restore your database up to the time of the last data backup.

      Caution Caution

      Switching on overwrite mode interrupts the backup history. If you have to restore the database after an error, no redo log entries are available for this period of time, and you lose all data since the last data backup.

      End of the caution.

    If overwrite mode is on and you switch it off, you then have to carry out a complete data backup.

    Redo log management

    Specifies whether the database system writes redo log entries.

    • ON

      Default value

      The system writes redo log entries.

    • OFF

      Caution Caution

      Do not switch redo log management off in normal database operation. When redo management is switched off, the system does not write regular savepoints. This means that if you restart your database after a database crash, you lose all data since the last savepoint. If you have to restore your database, you can only restore it to the state of the last data backup.

      Only consider switching redo log management off in special situations, for example in a test system or during a large load job.

      End of the caution.

    If redo log management is off and you switch it back on, you then must carry out a complete data backup.

More Information

Concepts of the Database System, How Databases Log Data Changes


Deleting Columns - SAP Documentation

Procedure documentation Deleting Columns

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the table or have the ALTER privilege for the table to which the column belongs.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the explorer tree.

  2. In the context menu of the table, choose Definition.

  3. In the context menu of the column, choose Remove Column.

  4. In the context menu of the editor window, choose Alter Table.

More Information

SQL Reference Manual, ALTER TABLE Statement (alter_table_definition)


SAP Library - Loader Tutorial

Start Level 1 Node: Loader Tutorial Loader Tutorial End Level 1 Node: Loader Tutorial
Start Level 2 Node: Demo Databases DEMODB and TESTDB Demo Databases DEMODB and TESTDB End Level 2 Node: Demo Databases DEMODB and TESTDB
Start Level 2 Node: Exporting Exporting End Level 2 Node: Exporting
Start Level 3 Node: EXPORT DB EXPORT DB End Level 3 Node: EXPORT DB
Start Level 3 Node: EXPORT USER EXPORT USER End Level 3 Node: EXPORT USER
Start Level 3 Node: EXPORT SCHEMA EXPORT SCHEMA End Level 3 Node: EXPORT SCHEMA
Start Level 3 Node: EXPORT TABLE EXPORT TABLE End Level 3 Node: EXPORT TABLE
Start Level 3 Node: EXPORT COLUMNS EXPORT COLUMNS End Level 3 Node: EXPORT COLUMNS
Start Level 2 Node: Importing Importing End Level 2 Node: Importing
Start Level 3 Node: IMPORT DB IMPORT DB End Level 3 Node: IMPORT DB
Start Level 3 Node: IMPORT USER IMPORT USER End Level 3 Node: IMPORT USER
Start Level 3 Node: IMPORT SCHEMA IMPORT SCHEMA End Level 3 Node: IMPORT SCHEMA
Start Level 3 Node: IMPORT TABLE IMPORT TABLE End Level 3 Node: IMPORT TABLE
Start Level 3 Node: IMPORT COLUMNS IMPORT COLUMNS End Level 3 Node: IMPORT COLUMNS
Start Level 2 Node: UPDATE COLUMNS UPDATE COLUMNS End Level 2 Node: UPDATE COLUMNS
Start Level 2 Node: Transport Mode Transport Mode End Level 2 Node: Transport Mode
Start Level 3 Node: Transport Transport End Level 3 Node: Transport
Start Level 3 Node: Export Export End Level 3 Node: Export
Start Level 3 Node: Import Import End Level 3 Node: Import
Start Level 2 Node: Command File Mode Command File Mode End Level 2 Node: Command File Mode
Start Level 2 Node: Session Mode Session Mode End Level 2 Node: Session Mode


SAP Library - Glossary

Start Level 1 Node: Glossary Glossary End Level 1 Node: Glossary
Start Level 2 Node: A A End Level 2 Node: A
Start Level 2 Node: Administration Administration End Level 2 Node: Administration
Start Level 2 Node: ADO.NET ADO.NET End Level 2 Node: ADO.NET
Start Level 2 Node: After Image After Image End Level 2 Node: After Image
Start Level 2 Node: Alert Monitor Alert Monitor End Level 2 Node: Alert Monitor
Start Level 2 Node: Application Data Application Data End Level 2 Node: Application Data
Start Level 2 Node: Architecture Architecture End Level 2 Node: Architecture
Start Level 2 Node: ASCII ASCII End Level 2 Node: ASCII
Start Level 2 Node: Authentication Authentication End Level 2 Node: Authentication
Start Level 2 Node: Authorization Authorization End Level 2 Node: Authorization
Start Level 2 Node: AUTOCOMMIT Mode AUTOCOMMIT Mode End Level 2 Node: AUTOCOMMIT Mode
Start Level 2 Node: Automatic Log Backup Automatic Log Backup End Level 2 Node: Automatic Log Backup
Start Level 2 Node: Automatic Start Automatic Start End Level 2 Node: Automatic Start
Start Level 2 Node: Automation Automation End Level 2 Node: Automation
Start Level 2 Node: B B End Level 2 Node: B
Start Level 2 Node: B* Tree B* Tree End Level 2 Node: B* Tree
Start Level 2 Node: Backint for SAP MaxDB Backint for SAP MaxDB End Level 2 Node: Backint for SAP MaxDB
Start Level 2 Node: Backup Backup End Level 2 Node: Backup
Start Level 2 Node: Backup File Backup File End Level 2 Node: Backup File
Start Level 2 Node: Backup History Backup History End Level 2 Node: Backup History
Start Level 2 Node: Backup ID Backup ID End Level 2 Node: Backup ID
Start Level 2 Node: Backup Medium Backup Medium End Level 2 Node: Backup Medium
Start Level 2 Node: Backup Template Backup Template End Level 2 Node: Backup Template
Start Level 2 Node: Backup Tool Backup Tool End Level 2 Node: Backup Tool
Start Level 2 Node: Backup Type Backup Type End Level 2 Node: Backup Type
Start Level 2 Node: Before Image Before Image End Level 2 Node: Before Image
Start Level 2 Node: BLOB BLOB End Level 2 Node: BLOB
Start Level 2 Node: BW Feature Package BW Feature Package End Level 2 Node: BW Feature Package
Start Level 2 Node: C C End Level 2 Node: C
Start Level 2 Node: Cache Cache End Level 2 Node: Cache
Start Level 2 Node: Catalog Cache Catalog Cache End Level 2 Node: Catalog Cache
Start Level 2 Node: CCMS CCMS End Level 2 Node: CCMS
Start Level 2 Node: Checkpoint Checkpoint End Level 2 Node: Checkpoint
Start Level 2 Node: CLOB CLOB End Level 2 Node: CLOB
Start Level 2 Node: Cluster Cluster End Level 2 Node: Cluster
Start Level 2 Node: Code Attribute Code Attribute End Level 2 Node: Code Attribute
Start Level 2 Node: Column Column End Level 2 Node: Column
Start Level 2 Node: Command Mode Command Mode End Level 2 Node: Command Mode
Start Level 2 Node: Command Monitor Command Monitor End Level 2 Node: Command Monitor
Start Level 2 Node: COMMIT COMMIT End Level 2 Node: COMMIT
Start Level 2 Node: Communication Server Communication Server End Level 2 Node: Communication Server
Start Level 2 Node: Complete Data Backup Complete Data Backup End Level 2 Node: Complete Data Backup
Start Level 2 Node: Configuration Configuration End Level 2 Node: Configuration
Start Level 2 Node: Configuration File Configuration File End Level 2 Node: Configuration File
Start Level 2 Node: Consistency Consistency End Level 2 Node: Consistency
Start Level 2 Node: Consistent View Consistent View End Level 2 Node: Consistent View
Start Level 2 Node: Console (Database Console) Console (Database Console) End Level 2 Node: Console (Database Console)
Start Level 2 Node: Constraint Constraint End Level 2 Node: Constraint
Start Level 2 Node: Control Structure Control Structure End Level 2 Node: Control Structure
Start Level 2 Node: Converter Converter End Level 2 Node: Converter
Start Level 2 Node: Costs Costs End Level 2 Node: Costs
Start Level 2 Node: Critical Section Critical Section End Level 2 Node: Critical Section
Start Level 2 Node: Cursor Cursor End Level 2 Node: Cursor
Start Level 2 Node: D D End Level 2 Node: D
Start Level 2 Node: Data Access Data Access End Level 2 Node: Data Access
Start Level 2 Node: Data Area Data Area End Level 2 Node: Data Area
Start Level 2 Node: Data Backup Data Backup End Level 2 Node: Data Backup
Start Level 2 Node: Data Cache Data Cache End Level 2 Node: Data Cache
Start Level 2 Node: Data Carrier Data Carrier End Level 2 Node: Data Carrier
Start Level 2 Node: Data Integrity Data Integrity End Level 2 Node: Data Integrity
Start Level 2 Node: Data Model Data Model End Level 2 Node: Data Model
Start Level 2 Node: Data Record Data Record End Level 2 Node: Data Record
Start Level 2 Node: Data Storage Data Storage End Level 2 Node: Data Storage
Start Level 2 Node: Data Type Data Type End Level 2 Node: Data Type
Start Level 2 Node: Data Volume Data Volume End Level 2 Node: Data Volume
Start Level 2 Node: Data Writer Data Writer End Level 2 Node: Data Writer
Start Level 2 Node: Database Database End Level 2 Node: Database
Start Level 2 Node: Database Administrator (DBA User) Database Administrator (DBA User) End Level 2 Node: Database Administrator (DBA User)
Start Level 2 Node: Database Analyzer Database Analyzer End Level 2 Node: Database Analyzer
Start Level 2 Node: Database Application Database Application End Level 2 Node: Database Application
Start Level 2 Node: Database Catalog Database Catalog End Level 2 Node: Database Catalog
Start Level 2 Node: Database Connection Database Connection End Level 2 Node: Database Connection
Start Level 2 Node: Database Consistency Database Consistency End Level 2 Node: Database Consistency
Start Level 2 Node: Database Copy Database Copy End Level 2 Node: Database Copy
Start Level 2 Node: Database Design Database Design End Level 2 Node: Database Design
Start Level 2 Node: Database File Database File End Level 2 Node: Database File
Start Level 2 Node: Database Function Database Function End Level 2 Node: Database Function
Start Level 2 Node: Database ID Database ID End Level 2 Node: Database ID
Start Level 2 Node: Database Instance Database Instance End Level 2 Node: Database Instance
Start Level 2 Node: Database Manager Database Manager End Level 2 Node: Database Manager
Start Level 2 Node: Database Name Database Name End Level 2 Node: Database Name
Start Level 2 Node: Database Object Database Object End Level 2 Node: Database Object
Start Level 2 Node: Database Parameter Database Parameter End Level 2 Node: Database Parameter
Start Level 2 Node: Database Procedure Database Procedure End Level 2 Node: Database Procedure
Start Level 2 Node: Database Session Database Session End Level 2 Node: Database Session
Start Level 2 Node: Database Structure Database Structure End Level 2 Node: Database Structure
Start Level 2 Node: Database Studio Database Studio End Level 2 Node: Database Studio
Start Level 2 Node: Database System Database System End Level 2 Node: Database System
Start Level 2 Node: Database System Administrator Database System Administrator End Level 2 Node: Database System Administrator
Start Level 2 Node: Database Tool Database Tool End Level 2 Node: Database Tool
Start Level 2 Node: Database Trace Database Trace End Level 2 Node: Database Trace
Start Level 2 Node: Database Trigger Database Trigger End Level 2 Node: Database Trigger
Start Level 2 Node: Database Type Database Type End Level 2 Node: Database Type
Start Level 2 Node: Database User Database User End Level 2 Node: Database User
Start Level 2 Node: Database User Class Database User Class End Level 2 Node: Database User Class
Start Level 2 Node: DBA DBA End Level 2 Node: DBA
Start Level 2 Node: DBA Cockpit DBA Cockpit End Level 2 Node: DBA Cockpit
Start Level 2 Node: DBA Planning Calendar DBA Planning Calendar End Level 2 Node: DBA Planning Calendar
Start Level 2 Node: DBADMIN DBADMIN End Level 2 Node: DBADMIN
Start Level 2 Node: DBM Command DBM Command End Level 2 Node: DBM Command
Start Level 2 Node: DBM Operator DBM Operator End Level 2 Node: DBM Operator
Start Level 2 Node: DBM Option DBM Option End Level 2 Node: DBM Option
Start Level 2 Node: DBM Server DBM Server End Level 2 Node: DBM Server
Start Level 2 Node: DBMCLI DBMCLI End Level 2 Node: DBMCLI
Start Level 2 Node: DBMGUI DBMGUI End Level 2 Node: DBMGUI
Start Level 2 Node: DDL Statement DDL Statement End Level 2 Node: DDL Statement
Start Level 2 Node: Default Parameter File Default Parameter File End Level 2 Node: Default Parameter File
Start Level 2 Node: Demo Database Demo Database End Level 2 Node: Demo Database
Start Level 2 Node: Development Development End Level 2 Node: Development
Start Level 2 Node: Directory Directory End Level 2 Node: Directory
Start Level 2 Node: Documentation Documentation End Level 2 Node: Documentation
Start Level 2 Node: Documentation Variable Documentation Variable End Level 2 Node: Documentation Variable
Start Level 2 Node: Domain Domain End Level 2 Node: Domain
Start Level 2 Node: Download Download End Level 2 Node: Download
Start Level 2 Node: E E End Level 2 Node: E
Start Level 2 Node: Encryption Encryption End Level 2 Node: Encryption
Start Level 2 Node: Environment Variable Environment Variable End Level 2 Node: Environment Variable
Start Level 2 Node: Error Message Error Message End Level 2 Node: Error Message
Start Level 2 Node: Event Event End Level 2 Node: Event
Start Level 2 Node: Event Dispatcher Event Dispatcher End Level 2 Node: Event Dispatcher
Start Level 2 Node: Example Example End Level 2 Node: Example
Start Level 2 Node: Exclusive Lock Exclusive Lock End Level 2 Node: Exclusive Lock
Start Level 2 Node: Execution Plan Execution Plan End Level 2 Node: Execution Plan
Start Level 2 Node: EXPLAIN Statement EXPLAIN Statement End Level 2 Node: EXPLAIN Statement
Start Level 2 Node: Export Export End Level 2 Node: Export
Start Level 2 Node: External Backup Tool External Backup Tool End Level 2 Node: External Backup Tool
Start Level 2 Node: F F End Level 2 Node: F
Start Level 2 Node: FBM (Free Block Management) FBM (Free Block Management) End Level 2 Node: FBM (Free Block Management)
Start Level 2 Node: File Class File Class End Level 2 Node: File Class
Start Level 2 Node: File Directory (Database-Internal) File Directory (Database-Internal) End Level 2 Node: File Directory (Database-Internal)
Start Level 2 Node: File ID File ID End Level 2 Node: File ID
Start Level 2 Node: Foreign Keys Foreign Keys End Level 2 Node: Foreign Keys
Start Level 2 Node: Forum Forum End Level 2 Node: Forum
Start Level 2 Node: G G End Level 2 Node: G
Start Level 2 Node: Garbage Collector Garbage Collector End Level 2 Node: Garbage Collector
Start Level 2 Node: Global Listener Global Listener End Level 2 Node: Global Listener
Start Level 2 Node: H H End Level 2 Node: H
Start Level 2 Node: Hardware Hardware End Level 2 Node: Hardware
Start Level 2 Node: High Availability High Availability End Level 2 Node: High Availability
Start Level 2 Node: History File History File End Level 2 Node: History File
Start Level 2 Node: Hit Rate Hit Rate End Level 2 Node: Hit Rate
Start Level 2 Node: Homogenous System Copy Homogenous System Copy End Level 2 Node: Homogenous System Copy
Start Level 2 Node: Hot Standby Hot Standby End Level 2 Node: Hot Standby
Start Level 2 Node: I I End Level 2 Node: I
Start Level 2 Node: I/O Buffer Cache I/O Buffer Cache End Level 2 Node: I/O Buffer Cache
Start Level 2 Node: Import Import End Level 2 Node: Import
Start Level 2 Node: Incremental Data Backup Incremental Data Backup End Level 2 Node: Incremental Data Backup
Start Level 2 Node: Index Index End Level 2 Node: Index
Start Level 2 Node: Indexed Column Indexed Column End Level 2 Node: Indexed Column
Start Level 2 Node: Initialization Initialization End Level 2 Node: Initialization
Start Level 2 Node: Installation Installation End Level 2 Node: Installation
Start Level 2 Node: Installation Manager Installation Manager End Level 2 Node: Installation Manager
Start Level 2 Node: Interactive Log Backup Interactive Log Backup End Level 2 Node: Interactive Log Backup
Start Level 2 Node: Interface Interface End Level 2 Node: Interface
Start Level 2 Node: Internal Database File Internal Database File End Level 2 Node: Internal Database File
Start Level 2 Node: Inversion List Inversion List End Level 2 Node: Inversion List
Start Level 2 Node: Inverted Column Inverted Column End Level 2 Node: Inverted Column
Start Level 2 Node: Isolated Installation Isolated Installation End Level 2 Node: Isolated Installation
Start Level 2 Node: Isolation Level Isolation Level End Level 2 Node: Isolation Level
Start Level 2 Node: J J End Level 2 Node: J
Start Level 2 Node: Java Java End Level 2 Node: Java
Start Level 2 Node: JDBC JDBC End Level 2 Node: JDBC
Start Level 2 Node: Join Join End Level 2 Node: Join
Start Level 2 Node: K K End Level 2 Node: K
Start Level 2 Node: Kernel Kernel End Level 2 Node: Kernel
Start Level 2 Node: Kernel Log File Kernel Log File End Level 2 Node: Kernel Log File
Start Level 2 Node: Kernel Variant Kernel Variant End Level 2 Node: Kernel Variant
Start Level 2 Node: Keyword Keyword End Level 2 Node: Keyword
Start Level 2 Node: KNLDIAG KNLDIAG End Level 2 Node: KNLDIAG
Start Level 2 Node: L L End Level 2 Node: L
Start Level 2 Node: Landscape Administration Landscape Administration End Level 2 Node: Landscape Administration
Start Level 2 Node: Language Support (MapChar Sets) Language Support (MapChar Sets) End Level 2 Node: Language Support (MapChar Sets)
Start Level 2 Node: Leaf Page Leaf Page End Level 2 Node: Leaf Page
Start Level 2 Node: License License End Level 2 Node: License
Start Level 2 Node: liveCache (SAP liveCache Technology) liveCache (SAP liveCache Technology) End Level 2 Node: liveCache (SAP liveCache Technology)
Start Level 2 Node: Load Balancing Load Balancing End Level 2 Node: Load Balancing
Start Level 2 Node: Loader Loader End Level 2 Node: Loader
Start Level 2 Node: Loader Server Loader Server End Level 2 Node: Loader Server
Start Level 2 Node: Loading Loading End Level 2 Node: Loading
Start Level 2 Node: LOB LOB End Level 2 Node: LOB
Start Level 2 Node: Lock Lock End Level 2 Node: Lock
Start Level 2 Node: Lock List Lock List End Level 2 Node: Lock List
Start Level 2 Node: Log Area Log Area End Level 2 Node: Log Area
Start Level 2 Node: Log Backup Log Backup End Level 2 Node: Log Backup
Start Level 2 Node: Log Entry Log Entry End Level 2 Node: Log Entry
Start Level 2 Node: Log File Log File End Level 2 Node: Log File
Start Level 2 Node: Log Mode Log Mode End Level 2 Node: Log Mode
Start Level 2 Node: Log Page Log Page End Level 2 Node: Log Page
Start Level 2 Node: Log Partition Log Partition End Level 2 Node: Log Partition
Start Level 2 Node: Log Queue Log Queue End Level 2 Node: Log Queue
Start Level 2 Node: Log Reader Log Reader End Level 2 Node: Log Reader
Start Level 2 Node: Log Segment Log Segment End Level 2 Node: Log Segment
Start Level 2 Node: Log Sequence Number Log Sequence Number End Level 2 Node: Log Sequence Number
Start Level 2 Node: Log Settings Log Settings End Level 2 Node: Log Settings
Start Level 2 Node: Log Volume Log Volume End Level 2 Node: Log Volume
Start Level 2 Node: Log Writer Log Writer End Level 2 Node: Log Writer
Start Level 2 Node: Logging Logging End Level 2 Node: Logging
Start Level 2 Node: LONG LONG End Level 2 Node: LONG
Start Level 2 Node: M M End Level 2 Node: M
Start Level 2 Node: Mailing List Mailing List End Level 2 Node: Mailing List
Start Level 2 Node: MapChar Set MapChar Set End Level 2 Node: MapChar Set
Start Level 2 Node: Master Database Master Database End Level 2 Node: Master Database
Start Level 2 Node: Merge Merge End Level 2 Node: Merge
Start Level 2 Node: Migration Migration End Level 2 Node: Migration
Start Level 2 Node: Monitoring Monitoring End Level 2 Node: Monitoring
Start Level 2 Node: Multiprocessor Configuration Multiprocessor Configuration End Level 2 Node: Multiprocessor Configuration
Start Level 2 Node: N N End Level 2 Node: N
Start Level 2 Node: Naming Conventions Naming Conventions End Level 2 Node: Naming Conventions
Start Level 2 Node: Network Network End Level 2 Node: Network
Start Level 2 Node: Number Generator Number Generator End Level 2 Node: Number Generator
Start Level 2 Node: O O End Level 2 Node: O
Start Level 2 Node: Obsolete Database Parameters Obsolete Database Parameters End Level 2 Node: Obsolete Database Parameters
Start Level 2 Node: ODBC ODBC End Level 2 Node: ODBC
Start Level 2 Node: OLTP (MaxDB) OLTP (MaxDB) End Level 2 Node: OLTP (MaxDB)
Start Level 2 Node: OMS OMS End Level 2 Node: OMS
Start Level 2 Node: OMS Heap OMS Heap End Level 2 Node: OMS Heap
Start Level 2 Node: OMS Version OMS Version End Level 2 Node: OMS Version
Start Level 2 Node: OneDB OneDB End Level 2 Node: OneDB
Start Level 2 Node: Operating Mode Operating Mode End Level 2 Node: Operating Mode
Start Level 2 Node: Operating System User Operating System User End Level 2 Node: Operating System User
Start Level 2 Node: Operational State Operational State End Level 2 Node: Operational State
Start Level 2 Node: Optimistic Lock Optimistic Lock End Level 2 Node: Optimistic Lock
Start Level 2 Node: Optimizer Optimizer End Level 2 Node: Optimizer
Start Level 2 Node: Overwrite Mode for the Log Area Overwrite Mode for the Log Area End Level 2 Node: Overwrite Mode for the Log Area
Start Level 2 Node: Owner Owner End Level 2 Node: Owner
Start Level 2 Node: P P End Level 2 Node: P
Start Level 2 Node: Page Page End Level 2 Node: Page
Start Level 2 Node: Page Chain Page Chain End Level 2 Node: Page Chain
Start Level 2 Node: Pager Pager End Level 2 Node: Pager
Start Level 2 Node: Parallel Backup Parallel Backup End Level 2 Node: Parallel Backup
Start Level 2 Node: Parameter Parameter End Level 2 Node: Parameter
Start Level 2 Node: Parameter File Parameter File End Level 2 Node: Parameter File
Start Level 2 Node: Parameters in SQL Statements Parameters in SQL Statements End Level 2 Node: Parameters in SQL Statements
Start Level 2 Node: Password Password End Level 2 Node: Password
Start Level 2 Node: Performance Performance End Level 2 Node: Performance
Start Level 2 Node: Perl Perl End Level 2 Node: Perl
Start Level 2 Node: PHP PHP End Level 2 Node: PHP
Start Level 2 Node: Port Port End Level 2 Node: Port
Start Level 2 Node: Precompiler Precompiler End Level 2 Node: Precompiler
Start Level 2 Node: Predicate Predicate End Level 2 Node: Predicate
Start Level 2 Node: Prepared Statement Prepared Statement End Level 2 Node: Prepared Statement
Start Level 2 Node: Primary Key Primary Key End Level 2 Node: Primary Key
Start Level 2 Node: Privilege Privilege End Level 2 Node: Privilege
Start Level 2 Node: Process Process End Level 2 Node: Process
Start Level 2 Node: Programming Interface Programming Interface End Level 2 Node: Programming Interface
Start Level 2 Node: PTS (Problem Tracking System) PTS (Problem Tracking System) End Level 2 Node: PTS (Problem Tracking System)
Start Level 2 Node: Python Python End Level 2 Node: Python
Start Level 2 Node: Q Q End Level 2 Node: Q
Start Level 2 Node: Query Tool Query Tool End Level 2 Node: Query Tool
Start Level 2 Node: R R End Level 2 Node: R
Start Level 2 Node: RAID RAID End Level 2 Node: RAID
Start Level 2 Node: Raw Device Raw Device End Level 2 Node: Raw Device
Start Level 2 Node: Reader-Writer Lock Reader-Writer Lock End Level 2 Node: Reader-Writer Lock
Start Level 2 Node: Recovery Recovery End Level 2 Node: Recovery
Start Level 2 Node: Redo List Redo List End Level 2 Node: Redo List
Start Level 2 Node: Redo Log Entry Redo Log Entry End Level 2 Node: Redo Log Entry
Start Level 2 Node: Redo Log File Redo Log File End Level 2 Node: Redo Log File
Start Level 2 Node: Redo Log Management Redo Log Management End Level 2 Node: Redo Log Management
Start Level 2 Node: Redo Log Manager Redo Log Manager End Level 2 Node: Redo Log Manager
Start Level 2 Node: Redo Task Redo Task End Level 2 Node: Redo Task
Start Level 2 Node: Region Region End Level 2 Node: Region
Start Level 2 Node: Reorganization Reorganization End Level 2 Node: Reorganization
Start Level 2 Node: Replication Replication End Level 2 Node: Replication
Start Level 2 Node: Repository Repository End Level 2 Node: Repository
Start Level 2 Node: Reserved Word Reserved Word End Level 2 Node: Reserved Word
Start Level 2 Node: Resource Monitor Resource Monitor End Level 2 Node: Resource Monitor
Start Level 2 Node: RESOURCE User RESOURCE User End Level 2 Node: RESOURCE User
Start Level 2 Node: Restart Restart End Level 2 Node: Restart
Start Level 2 Node: Restart Information Restart Information End Level 2 Node: Restart Information
Start Level 2 Node: Restore Restore End Level 2 Node: Restore
Start Level 2 Node: Restriction Restriction End Level 2 Node: Restriction
Start Level 2 Node: Role Role End Level 2 Node: Role
Start Level 2 Node: ROLL FORWARD ROLL FORWARD End Level 2 Node: ROLL FORWARD
Start Level 2 Node: ROLLBACK ROLLBACK End Level 2 Node: ROLLBACK
Start Level 2 Node: Row Row End Level 2 Node: Row
Start Level 2 Node: Run Directory Run Directory End Level 2 Node: Run Directory
Start Level 2 Node: S S End Level 2 Node: S
Start Level 2 Node: Sample Sample End Level 2 Node: Sample
Start Level 2 Node: SAP DB SAP DB End Level 2 Node: SAP DB
Start Level 2 Node: SAP MaxDB SAP MaxDB End Level 2 Node: SAP MaxDB
Start Level 2 Node: Savepoint Savepoint End Level 2 Node: Savepoint
Start Level 2 Node: Scheduler Scheduler End Level 2 Node: Scheduler
Start Level 2 Node: Schema Schema End Level 2 Node: Schema
Start Level 2 Node: Script Mode Script Mode End Level 2 Node: Script Mode
Start Level 2 Node: sdb sdb End Level 2 Node: sdb
Start Level 2 Node: SDB Operators SDB Operators End Level 2 Node: SDB Operators
Start Level 2 Node: sdba sdba End Level 2 Node: sdba
Start Level 2 Node: Search Strategy Search Strategy End Level 2 Node: Search Strategy
Start Level 2 Node: Secondary Key Secondary Key End Level 2 Node: Secondary Key
Start Level 2 Node: Security Security End Level 2 Node: Security
Start Level 2 Node: Selectivity Selectivity End Level 2 Node: Selectivity
Start Level 2 Node: Separator Separator End Level 2 Node: Separator
Start Level 2 Node: Sequence Sequence End Level 2 Node: Sequence
Start Level 2 Node: Sequence Cache Sequence Cache End Level 2 Node: Sequence Cache
Start Level 2 Node: Server Permission Server Permission End Level 2 Node: Server Permission
Start Level 2 Node: Server Software Server Software End Level 2 Node: Server Software
Start Level 2 Node: Server Task Server Task End Level 2 Node: Server Task
Start Level 2 Node: Service Service End Level 2 Node: Service
Start Level 2 Node: Service Database Service Database End Level 2 Node: Service Database
Start Level 2 Node: Service Session Service Session End Level 2 Node: Service Session
Start Level 2 Node: Session Mode Session Mode End Level 2 Node: Session Mode
Start Level 2 Node: Share Lock Share Lock End Level 2 Node: Share Lock
Start Level 2 Node: Shared Memory Shared Memory End Level 2 Node: Shared Memory
Start Level 2 Node: Shared SQL Shared SQL End Level 2 Node: Shared SQL
Start Level 2 Node: Snapshot Snapshot End Level 2 Node: Snapshot
Start Level 2 Node: Software Component Software Component End Level 2 Node: Software Component
Start Level 2 Node: Special Thread Special Thread End Level 2 Node: Special Thread
Start Level 2 Node: SQL SQL End Level 2 Node: SQL
Start Level 2 Node: SQL Mode SQL Mode End Level 2 Node: SQL Mode
Start Level 2 Node: SQL Optimizer SQL Optimizer End Level 2 Node: SQL Optimizer
Start Level 2 Node: SQL Session SQL Session End Level 2 Node: SQL Session
Start Level 2 Node: SQL Statement SQL Statement End Level 2 Node: SQL Statement
Start Level 2 Node: SQL Studio SQL Studio End Level 2 Node: SQL Studio
Start Level 2 Node: SQL Tutorial SQL Tutorial End Level 2 Node: SQL Tutorial
Start Level 2 Node: SQL User Properties SQL User Properties End Level 2 Node: SQL User Properties
Start Level 2 Node: SQLCLI SQLCLI End Level 2 Node: SQLCLI
Start Level 2 Node: SQLDBC SQLDBC End Level 2 Node: SQLDBC
Start Level 2 Node: SSL/TLS SSL/TLS End Level 2 Node: SSL/TLS
Start Level 2 Node: STANDARD User STANDARD User End Level 2 Node: STANDARD User
Start Level 2 Node: Standby Database Standby Database End Level 2 Node: Standby Database
Start Level 2 Node: Start Start End Level 2 Node: Start
Start Level 2 Node: Statistics Statistics End Level 2 Node: Statistics
Start Level 2 Node: Stored Procedure Stored Procedure End Level 2 Node: Stored Procedure
Start Level 2 Node: Strategy Strategy End Level 2 Node: Strategy
Start Level 2 Node: Stripe Stripe End Level 2 Node: Stripe
Start Level 2 Node: Subtransaction Subtransaction End Level 2 Node: Subtransaction
Start Level 2 Node: Support Support End Level 2 Node: Support
Start Level 2 Node: Synonym Synonym End Level 2 Node: Synonym
Start Level 2 Node: Syntax Notation Syntax Notation End Level 2 Node: Syntax Notation
Start Level 2 Node: SYSDBA User SYSDBA User End Level 2 Node: SYSDBA User
Start Level 2 Node: System Copy System Copy End Level 2 Node: System Copy
Start Level 2 Node: System Failure System Failure End Level 2 Node: System Failure
Start Level 2 Node: System Requirements System Requirements End Level 2 Node: System Requirements
Start Level 2 Node: System Table System Table End Level 2 Node: System Table
Start Level 2 Node: System Trigger System Trigger End Level 2 Node: System Trigger
Start Level 2 Node: T T End Level 2 Node: T
Start Level 2 Node: Table Table End Level 2 Node: Table
Start Level 2 Node: Table ID Table ID End Level 2 Node: Table ID
Start Level 2 Node: Table Name Table Name End Level 2 Node: Table Name
Start Level 2 Node: Task Task End Level 2 Node: Task
Start Level 2 Node: Task State Task State End Level 2 Node: Task State
Start Level 2 Node: Template Template End Level 2 Node: Template
Start Level 2 Node: Thread Thread End Level 2 Node: Thread
Start Level 2 Node: Timeout Timeout End Level 2 Node: Timeout
Start Level 2 Node: Timer Task Timer Task End Level 2 Node: Timer Task
Start Level 2 Node: Tool Tool End Level 2 Node: Tool
Start Level 2 Node: Trace Trace End Level 2 Node: Trace
Start Level 2 Node: Trace Writer Task Trace Writer Task End Level 2 Node: Trace Writer Task
Start Level 2 Node: Transaction Transaction End Level 2 Node: Transaction
Start Level 2 Node: Transaction File Transaction File End Level 2 Node: Transaction File
Start Level 2 Node: Transaction List Transaction List End Level 2 Node: Transaction List
Start Level 2 Node: Trigger Trigger End Level 2 Node: Trigger
Start Level 2 Node: Troubleshooting Troubleshooting End Level 2 Node: Troubleshooting
Start Level 2 Node: Tutorial Tutorial End Level 2 Node: Tutorial
Start Level 2 Node: U U End Level 2 Node: U
Start Level 2 Node: Undo Log Entry Undo Log Entry End Level 2 Node: Undo Log Entry
Start Level 2 Node: Undo Log File Undo Log File End Level 2 Node: Undo Log File
Start Level 2 Node: Unicode Unicode End Level 2 Node: Unicode
Start Level 2 Node: Unloading Unloading End Level 2 Node: Unloading
Start Level 2 Node: Update Update End Level 2 Node: Update
Start Level 2 Node: Upgrade Upgrade End Level 2 Node: Upgrade
Start Level 2 Node: User User End Level 2 Node: User
Start Level 2 Node: User Group User Group End Level 2 Node: User Group
Start Level 2 Node: User Kernel Thread User Kernel Thread End Level 2 Node: User Kernel Thread
Start Level 2 Node: User Key User Key End Level 2 Node: User Key
Start Level 2 Node: User Task User Task End Level 2 Node: User Task
Start Level 2 Node: User-Defined Function User-Defined Function End Level 2 Node: User-Defined Function
Start Level 2 Node: Utility Task Utility Task End Level 2 Node: Utility Task
Start Level 2 Node: V V End Level 2 Node: V
Start Level 2 Node: Variable Variable End Level 2 Node: Variable
Start Level 2 Node: Version Version End Level 2 Node: Version
Start Level 2 Node: View View End Level 2 Node: View
Start Level 2 Node: View Table View Table End Level 2 Node: View Table
Start Level 2 Node: Virtual Host Virtual Host End Level 2 Node: Virtual Host
Start Level 2 Node: Volume Volume End Level 2 Node: Volume
Start Level 2 Node: vserver vserver End Level 2 Node: vserver
Start Level 2 Node: vtrace vtrace End Level 2 Node: vtrace
Start Level 2 Node: W W End Level 2 Node: W
Start Level 2 Node: Web DBM Web DBM End Level 2 Node: Web DBM
Start Level 2 Node: Web Server Web Server End Level 2 Node: Web Server
Start Level 2 Node: Web Server Manager Web Server Manager End Level 2 Node: Web Server Manager
Start Level 2 Node: Web SQL Web SQL End Level 2 Node: Web SQL
Start Level 2 Node: Web Tool Web Tool End Level 2 Node: Web Tool
Start Level 2 Node: WebDAV WebDAV End Level 2 Node: WebDAV
Start Level 2 Node: Working Memory Working Memory End Level 2 Node: Working Memory
Start Level 2 Node: X X End Level 2 Node: X
Start Level 2 Node: X Server X Server End Level 2 Node: X Server
Start Level 2 Node: XCONS XCONS End Level 2 Node: XCONS
Start Level 2 Node: XUSER XUSER End Level 2 Node: XUSER
Start Level 2 Node: Y Y End Level 2 Node: Y
Start Level 2 Node: Z Z End Level 2 Node: Z


-8022: User already connected - SAP Documentation

Background documentation -8022: User already connected

Explanation

A user attempts to connect to the database system under a user name which was defined with EXCLUSIVE in a CREATE USER, CREATE USERGROUP, ALTER USER or ALTER USERGROUP statement. Another user has also connected using this name.

User Response

Wait until the other user has disconnected from the database system using a RELEASE statement.To enable a user to have various simultaneous connects, NOT EXCLUSIVE must be specified for this user with the ALTER USER or ALTER USERGROUP statement. These SQL statements may only be executed by the owner of the user or user group.


Adding Log Volumes - SAP Documentation

Procedure documentation Adding Log Volumes

The log entries of a database are permanently stored in the log volumes (log area). You can increase the size of the log area by adding log volumes. However, you cannot delete log volumes.

If the log area is full, the database stops working. Note that when the log area is full, you first need to carry out a log backup.

Caution Caution

Adding a new log volume will not immediately reduce the filling level of the log area. The system will only use the new log volume after you have carried out a log backup.

End of the caution.

Note Note

To prevent the log area from filling up, you have the following options:

  • You can activate the automatic log backup (the system can overwrite the log entries already saved).

    More information: Activating or Deactivating Automatic Log Backup

  • You can activate the overwrite mode for the log area (recommended for test systems only).

    More information: Changing Log Settings

End of the note.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for accessing database parameters or utility sessions.

    More information: Glossary, Server Permission

  • To create a new log volume, the MaxLogVolumes value must be at least as high as the sum of the number of existing log volumes and the number of log volumes that are to be defined.

    More information: Changing Database Parameters

    Note Note

    Every time the database is started, the system checks whether there is enough space available for at least one volume of each type. If not, it automatically increases the setting of the appropriate database parameter by 1.

    End of the note.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Log Area tab page.

  4. Choose New.... .

  5. Enter the required data.

    Volumes: Properties

    Property

    Description

    Size

    Minimum size: 1000 pages or 8000 KB

    Device/File

    Device/path and file name

    Type

    Type of physical memory

    • FILE (F)

      A volume can be a part of a physical hard disk, a complete physical hard disk, or a storage system consisting of several storage units.

      Can be used on all operating systems

    • LINK (L)

      Can only be used on Unix and Linux

    • RAW (R)

      Raw device

      Can only be used on Unix and Linux
    Log Volume: Example

    Property

    Sample Data

    Name

    DISKL0001

    Size

    50 MB

    Device/File

    C:\ProgramData\sdb\globaldata\DEMODB\volumes\log\DISKL0001

    Type

    FILE

More Information

Concepts of the Database System,

  • Volumes (Permanent Storage)

  • Log Area


-28823: Page already in use - SAP Documentation

Background documentation -28823: Page already in use

Explanation

The database instance has tried to use a page that is already marked as in use.

User Action

Inform your local support.


-24972: ERR_XPINVCONF - invalid value - SAP Documentation

Background documentation -24972: ERR_XPINVCONF - invalid value

Explanation

An attempt was made to confirm a database parameter. You either used an invalid value or a parameter for which there was no Request available.

User Response

Correct your entries or check the database parameters again (for example, using the param_checkall DBM command).

If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


Initializing Databases - SAP Documentation

Procedure documentation Initializing Databases

When you initialize a database, you delete all data (including the application data and database catalog) and all log entries from the volumes. The configuration of the database (database parameters, volume definitions, and so on) is retained, however.

Initializing a database is required in special recovery situations, for example.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for accessing utility sessions.

    More information: Glossary, Server Permission

  • For a database on the local computer, you require administration authorizations for the computer as an operating system user.

    For a database on a remote computer, you must be logged on to the remote computer as an operating system user with the following authorizations: administration authorizations and on Microsoft Windows additionally the Log on as batch job authorization. For more information, see your operating system documentation.

  • The database is in the OFFLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Initialize Database...  .

  3. Select Initialize the database.

  4. Select your database parameter options.

    Depending on your selection, choose a database or medium in the next step.

  5. Optional: Adjust individual database parameter values.

  6. Optional:

    1. Add, change, or delete data volumes.

      To add a new data volume, in the context menu of the Data Volumes screen area, choose New... and specify the properties of the new data volume.

      To change the properties of a data volume, choose Edit...in the context menu of the data volume and change the properties of the data volume.

      To delete a data volume, choose Delete in the context menu of the data volume.

    2. Add, change, or delete log volumes.

      To add a new log volume, in the context menu of the Log Volumes screen area, choose New... and specify the properties of the new log volume.

      To change the properties of a log volume, choose Edit...in the context menu of the log volume and change the properties of the log volume.

      To delete a log volume, choose Delete in the context menu of the data volume.

  7. Choose the recovery mode:

    • Create and start database

      Enter a new password for the database system administrator.

      All data and log entries in the database are deleted and the database is restarted.

      Afterwards, you can continue to work normally with the database.

    • Create database for recovery

      All data and log entries in the database are deleted and the database is transferred to the ADMIN operational state.

      Afterwards, you can only use this database for a recovery. During the recovery, the user information for the database system administrator is imported from the data data backup.

  8. To start the initialization, choose Initialize.

More Information

Restoring Databases


Backing Up to a Group of Parallel Data Carriers - SAP Documentation

Background documentation Backing Up to a Group of Parallel Data Carriers

To speed up the backup process, you can back up your data to several data carriers in parallel (subsequently called a group of parallel data carriers). Note that you cannot back up log entries to a group of parallel data carriers.

Most backup options are available for backups to a group of parallel data carriers as well: you can back up data to the local computer or to remote computers, you can use tape drives and you can connect third-party backup tools.

You combine backups to different types of data carriers. Because the data is automatically distributed between the data carriers during the backup process, you can also combine carriers with different write speeds without difficulty.

The system stores the information on how many data carriers were used for the backup on the data carrier that was finished last. All other data carriers only contain details of the successful write process of the backup data.

A parallel backup is not fundamentally different from a sequential backup:

  • During a sequential backup, you specify the backup template at the start of the backup operation. When the specified data carrier is full, the system asks you to specify the next backup template or to specify the operating system path (including the name of the file or pipe) where the next data carrier can be accessed.

  • Parallel backups are similar, but use several data carriers in parallel. The system requests a new data carrier for the first data carrier that is full, and proceeds accordingly for each individual data carrier until the data is completely backed up. Therefore, a parallel backup is a combination of parallel and sequential backup operations when the number of data carriers needed exceeds the number of parallel data carriers.

Example Example

For your backup, you need the storage space of 7 tapes. If you start the backup with 5 tape drives, then the 5 tapes are written simultaneously at first (parallel backup). The first tape drive with a full tape requests a new tape. Data is then backed up to the sixth tape sequentially. All other tape drives continue simultaneously (parallel backup) until another tape drive is full. This drive then requests a new tape (number 7).

End of the example.

When the system requests the next data carrier, you must choose one of the following options to continue and complete the backup:

  • Insert the next data carrier.

  • Tell the system to continue writing to the remaining data carriers only.

  • If Database Manager CLI is used, then you can specify the AUTOIGNORE option at the start of the backup process. This allows the system to continue writing to the remaining data carriers without asking for confirmation.

    Caution Caution

    Only use this option when you are sure that the complete amount of backup data will fit on the first set of data carriers in the group, and no succeeding data carriers will be required.

    End of the caution.

    You can simplify background backups in Database Manager CLI using the AUTOIGNORE option.

    Example Example

    You schedule regular nightly data backups for your system. The memory of 5 tapes is required for your backup. You start the backup process in the evening and specify the AUTOIGNORE option. If you carry out a backup with 5 tape drives, then the 5 tapes are written simultaneously at first (parallel backup). The first tape drive with a full tape stops, but all remaining tape drives continue until all the data is backed up.

    End of the example.

Prerequisites

  • You have created a backup template for a group of parallel data carriers.

    More information: Backup Templates and Data Carriers

  • If you plan to use third-party backup tools, first connect them to your system.

    More information:

    • Documentation for the third-party backup tool

    • Installation Manual, Connecting Third-Party Backup Tools

Procedure

Use the normal functions for data backup.

More information: Backing Up Data

Result

You now have a data backup consisting of several data carriers. After a database failure, you can restore this backup sequentially or in parallel.

More Information

Restoring from a Group of Parallel Data Carriers


-24941: ERR_NEEDLOGON - DBM server logon required - SAP Documentation

Background documentation -24941: ERR_NEEDLOGON - DBM server logon required

Explanation

This DBM command requires you to log on to the DBM server.

User Response

Log on to the DBM server. To do so, use the DBM command user_logon or the option -u.


-7026: SQL statement not allowed without previous FETCH - SAP Documentation

Background documentation -7026: SQL statement not allowed without previous FETCH

Explanation

The attempt was made to issue an SQL statement with CURRENT OF for the result table without having previously issued a successful FETCH statement on the specified result table.

User Response

Issue a FETCH statement for this result table and repeat the SQL statement.


explain_plan_statement - SAP Documentation

Background documentation explain_plan_statement

The EXPLAIN PLAN (explain_plan_statement) SQL statement is not accepted by SAP MaxDB.

However, there is a similar SQL statement in SAP MaxDB: EXPLAIN statement (explain_statement).

More Information

SQL Statements: Differences


EXPORT SCHEMA - SAP Documentation

Background documentation EXPORT SCHEMA

You can use the EXPORT SCHEMA command to export the data belonging to the application of the specified schema. Only the owner of the schema may execute the EXPORT SCHEMA command.

Prerequisites

You can use all of the demo data in database DEMODB. Start the Loader and log onto demo database DEMODB as database administrator MONA with the password RED.

Use the session mode: loadercli -d demodb -u mona,red

Activities

The data of the HOTEL schema is to be exported. You can make entries after the keyword CATALOG and/or DATA to select what is to be exported, the database catalog and/or the data belonging to the application.

Exporting the Database Catalog of a Schema

You can export the database catalog information belonging to the application of the schema.

EXPORT SCHEMA hotel

  CATALOG OUTSTREAM 'hotel_ddl.catalog'

The database catalog (CATALOG) is exported in the DDL (default value) format.

See also: Loader, Data Stream

Exporting the Application Data of a Schema

You can export the application data of the schema.

EXPORT SCHEMA hotel

  DATA OUTSTREAM 'hotel_pages.data'

The application data (DATA) is exported in the PAGES format (default value).

EXPORT SCHEMA hotel

  DATA OUTSTREAM 'hotel_records.data' RECORDS

The application data (DATA) is exported in the RECORDS format.

A PAGES export uses a database format (based on a page), and is therefore faster than an export that uses the RECORDS format of the Loader.

You may not change a data file in either case as the binary format is specific to the Loader.

See also: Loader, PAGES, RECORDS

Exporting the Database Catalog and the Application Data of a Schema

You can export the data belonging to the application of the specified schema.

EXPORT SCHEMA hotel

  CATALOG OUTSTREAM 'hotel_ddl.catalog'

  DATA OUTSTREAM 'hotel_pages.data'

Note the sequence of the syntax elements. Always enter the syntax element for exporting the database catalog first, and then the syntax element for exporting the application data.

Excluding Tables from the Export

By specifying a data stream after the keyword CONFIGURATION, you can exclude the application data of tables specified in this data stream. The tables must be identified in the data stream by specifying the schema and table name.

The CITY and HOTEL tables are to be excluded from the export. Create the hotel_table.configuration file with the following contents:

HOTEL,CITY

HOTEL,HOTEL

Specify the following export command in the Loader session mode. Note the sequence of the syntax elements. First, enter the syntax element that excludes the table from the export.

EXPORT SCHEMA hotel

  CONFIGURATION INSTREAM 'hotel_table.configuration'

  CATALOG OUTSTREAM 'hotel_ddl.catalog'

  DATA OUTSTREAM 'hotel_records.data'

The database catalog entries of all tables are always imported, regardless of the restrictions stipulated in hotel_table.configuration.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL table are exported to the specified data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

EXPORT SCHEMA hotel

  CATALOG OUTSTREAM 'hotel_ddl.catalog'

  PACKAGE OUTSTREAM 'hotel_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Complete Syntax of the EXPORT SCHEMA Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

EXPORT SCHEMA hotel

  CONFIGURATION INSTREAM FILE 'hotel_table.configuration' CSV ASCII

  CATALOG OUTSTREAM FILE 'hotel_ddl.catalog' DDL

  DATA OUTSTREAM FILE 'hotel_pages.data' PAGES

  PACKAGE OUSTREAM FILE 'hotel_csv.package' CSV

For a complete syntax description, see EXPORT SCHEMA Command in the Loader documentation.

More Information

Other commands for Exporting

Corresponding Import command IMPORT SCHEMA

Session Mode


-24921: ERR_POSTOP: error while finishing backup operation - SAP Documentation

Background documentation -24921: ERR_POSTOP: error while finishing backup operation

Explanation

It was not possible to perform the necessary postprocessing steps after a successful backup, check, or restore.

User Response

Try to fix the problem with the help of the extended error description, and repeat the backup, check, or restore. If you cannot solve the problem, contact Support.


-3017: Invalid unsigned integer - SAP Documentation

Background documentation -3017: Invalid unsigned integer

Explanation

No valid number was specified.

User Action

Correct the SQL statement.


-25356: Error processing LOB value(s): <error_text> - SAP Documentation

Background documentation -25356: Error processing LOB value(s): <error_text>

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data of a table containing LOB columns. The command terminated when processing the LOB values. The error message contains an additional error text stating the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


Special Operating System User Group on Microsoft Windows - SAP Documentation

Background documentation Special Operating System User Group on Microsoft Windows

Members of the SDB Operators group can manage databases without belonging to the Administrators or System groups. They have full access to the database resources listed using operating system commands; other operating system users only have read privileges.

Which SAP MaxDB Versions Support the SDB Operators Group?

All SAP MaxDB versions 7.7 and higher support this group.

How Is the SDB Operators Group Created?

It is your responsibility as administrator on your Microsoft Windows system to create the SDB Operators group before installing SAP MaxDB.

The database installation program then allocates the required authorizations to the SDB Operators group.

More Information

SAP MaxDB Security Guide, Restricting Access to Database Resources (Microsoft Windows)


SAP Library - Installation Manual

Start Level 1 Node: Installation Manual Installation Manual End Level 1 Node: Installation Manual
Start Level 2 Node: Software Overview Software Overview End Level 2 Node: Software Overview
Start Level 2 Node: Installing the SAP MaxDB Database Software Package Installing the SAP MaxDB Database Software Package End Level 2 Node: Installing the SAP MaxDB Database Software Package
Start Level 3 Node: Using Installation Manager Using Installation Manager End Level 3 Node: Using Installation Manager
Start Level 4 Node: Creating the Demo Database DEMODB Creating the Demo Database DEMODB End Level 4 Node: Creating the Demo Database DEMODB
Start Level 3 Node: Installation, Upgrade, and Uninstalling in the Command Line Installation, Upgrade, and Uninstalling in the Command Line End Level 3 Node: Installation, Upgrade, and Uninstalling in the Command Line
Start Level 4 Node: Installations or Updates in the Command Line Installations or Updates in the Command Line End Level 4 Node: Installations or Updates in the Command Line
Start Level 4 Node: Uninstalling in the Command Line Uninstalling in the Command Line End Level 4 Node: Uninstalling in the Command Line
Start Level 4 Node: Upgrading Databases and Their Server Software Upgrading Databases and Their Server Software End Level 4 Node: Upgrading Databases and Their Server Software
Start Level 5 Node: Upgrade if an Indidual Database Uses the Software Installation Upgrade if an Indidual Database Uses the Software Installation End Level 5 Node: Upgrade if an Indidual Database Uses the Software Installation
Start Level 5 Node: Upgrade if Several Databases Use the Software Installation Upgrade if Several Databases Use the Software Installation End Level 5 Node: Upgrade if Several Databases Use the Software Installation
Start Level 5 Node: Catalog Migration to Unicode Catalog Migration to Unicode End Level 5 Node: Catalog Migration to Unicode
Start Level 4 Node: Details Details End Level 4 Node: Details
Start Level 5 Node: Software Components Software Components End Level 5 Node: Software Components
Start Level 5 Node: Logging Logging End Level 5 Node: Logging
Start Level 5 Node: Displaying Information About Installed Software Displaying Information About Installed Software End Level 5 Node: Displaying Information About Installed Software
Start Level 5 Node: Overview of Options for the SDBINST Program Overview of Options for the SDBINST Program End Level 5 Node: Overview of Options for the SDBINST Program
Start Level 5 Node: Overview of Options for the SDBUNINST Program Overview of Options for the SDBUNINST Program End Level 5 Node: Overview of Options for the SDBUNINST Program
Start Level 5 Node: Overview of Options for the SDBUPD Program Overview of Options for the SDBUPD Program End Level 5 Node: Overview of Options for the SDBUPD Program
Start Level 4 Node: Error Handling Error Handling End Level 4 Node: Error Handling
Start Level 5 Node: Errors in the Execution of the SDBINST Program Errors in the Execution of the SDBINST Program End Level 5 Node: Errors in the Execution of the SDBINST Program
Start Level 5 Node: Errors in the Execution of the SDBUPD Program Errors in the Execution of the SDBUPD Program End Level 5 Node: Errors in the Execution of the SDBUPD Program
Start Level 6 Node: Downgrading Dependent Software, No Databases Exist Yet Downgrading Dependent Software, No Databases Exist Yet End Level 6 Node: Downgrading Dependent Software, No Databases Exist Yet
Start Level 6 Node: Downgrading Dependent Software, Databases Exist Downgrading Dependent Software, Databases Exist End Level 6 Node: Downgrading Dependent Software, Databases Exist
Start Level 6 Node: Downgrading Client Software Downgrading Client Software End Level 6 Node: Downgrading Client Software
Start Level 5 Node: Error While Migrating the Catalog to Unicode Error While Migrating the Catalog to Unicode End Level 5 Node: Error While Migrating the Catalog to Unicode
Start Level 2 Node: Connecting Third-Party Backup Tools Connecting Third-Party Backup Tools End Level 2 Node: Connecting Third-Party Backup Tools
Start Level 3 Node: Block Diagram: Backing Up and Restoring Block Diagram: Backing Up and Restoring End Level 3 Node: Block Diagram: Backing Up and Restoring
Start Level 3 Node: Block Diagram: Importing and Exporting Data Block Diagram: Importing and Exporting Data End Level 3 Node: Block Diagram: Importing and Exporting Data
Start Level 3 Node: Connecting to a Backint for Oracle Interface Connecting to a Backint for Oracle Interface End Level 3 Node: Connecting to a Backint for Oracle Interface
Start Level 4 Node: How the SAP MaxDB Adapter Program Works How the SAP MaxDB Adapter Program Works End Level 4 Node: How the SAP MaxDB Adapter Program Works
Start Level 4 Node: Configuring the Backint for Oracle Connection Configuring the Backint for Oracle Connection End Level 4 Node: Configuring the Backint for Oracle Connection
Start Level 5 Node: Creating the Parameter File for the SAP MaxDB Adapter Program Creating the Parameter File for the SAP MaxDB Adapter Program End Level 5 Node: Creating the Parameter File for the SAP MaxDB Adapter Program
Start Level 6 Node: Example of a Parameter File for the SAP MaxDB Adapter Program Example of a Parameter File for the SAP MaxDB Adapter Program End Level 6 Node: Example of a Parameter File for the SAP MaxDB Adapter Program
Start Level 5 Node: Creating the Configuration File for Backint for SAP MaxDB Creating the Configuration File for Backint for SAP MaxDB End Level 5 Node: Creating the Configuration File for Backint for SAP MaxDB
Start Level 6 Node: Example of a Configuration File for Backint for SAP MaxDB Example of a Configuration File for Backint for SAP MaxDB End Level 6 Node: Example of a Configuration File for Backint for SAP MaxDB
Start Level 5 Node: Exporting Environment Variables for the Backup Tool Exporting Environment Variables for the Backup Tool End Level 5 Node: Exporting Environment Variables for the Backup Tool
Start Level 5 Node: Setting the Environment Variable BSI_ENV Setting the Environment Variable BSI_ENV End Level 5 Node: Setting the Environment Variable BSI_ENV
Start Level 5 Node: Setting Tool-Independent Environment Variables for Database Mana Setting Tool-Independent Environment Variables for Database Mana End Level 5 Node: Setting Tool-Independent Environment Variables for Database Mana
Start Level 6 Node: Setting TEMP or TMP Setting TEMP or TMP End Level 6 Node: Setting TEMP or TMP
Start Level 6 Node: Setting DBM_TTO_SUCCESS and DBM_TTO_FAILURE Setting DBM_TTO_SUCCESS and DBM_TTO_FAILURE End Level 6 Node: Setting DBM_TTO_SUCCESS and DBM_TTO_FAILURE
Start Level 6 Node: Setting DBM_KTO_SUCCESS and DBM_KTO_FAILURE Setting DBM_KTO_SUCCESS and DBM_KTO_FAILURE End Level 6 Node: Setting DBM_KTO_SUCCESS and DBM_KTO_FAILURE
Start Level 3 Node: Connecting to a Backint for SAP MaxDB Interface Connecting to a Backint for SAP MaxDB Interface End Level 3 Node: Connecting to a Backint for SAP MaxDB Interface
Start Level 3 Node: Connecting to TSM Connecting to TSM End Level 3 Node: Connecting to TSM
Start Level 4 Node: Setting the Environment Variables ADINT and ADA_OPT Setting the Environment Variables ADINT and ADA_OPT End Level 4 Node: Setting the Environment Variables ADINT and ADA_OPT
Start Level 3 Node: Connecting to NetWorker Connecting to NetWorker End Level 3 Node: Connecting to NetWorker
Start Level 4 Node: Creating the Configuration File for NetWorker Creating the Configuration File for NetWorker End Level 4 Node: Creating the Configuration File for NetWorker
Start Level 5 Node: Configuration File for NetWorker Configuration File for NetWorker End Level 5 Node: Configuration File for NetWorker
Start Level 4 Node: Setting the Environment Variable NSR_ENV Setting the Environment Variable NSR_ENV End Level 4 Node: Setting the Environment Variable NSR_ENV
Start Level 3 Node: Connecting to VERITAS NetBackup Connecting to VERITAS NetBackup End Level 3 Node: Connecting to VERITAS NetBackup


Creating or Changing Data Sources - SAP Documentation

Procedure documentation Creating or Changing Data Sources

To access SAP MaxDB databases via the ODBC interface, create data sources for the databases.

Procedure

You can use a driver manager to create or change data sources. On Unix and Linux, you can create or change data sources without a driver manager as well.

On Microsoft Windows, the definitions of data sources are stored in the registry; on Unix and Linux, they are stored in configuration files in the file system.

Creating Data Sources in the Driver Manager

  1. Open your driver manager.

  2. Select the SAP MaxDB ODBC driver (ASCII or Unicode).

  3. Specify the properties of the SAP MaxDB data source.

    Properties of Data Sources

    Property (Microsoft Windows)

    Property (Unix and Linux)

    Description

    Data Source Name

    <data_source_name>

    Data source name

    Caution Caution

    The name may not contain any special characters.

    End of the caution.

    Description

    -

    Description of the data source

    Database

    ServerDB

    Database name

    Server

    ServerNode

    Name of the database computer

    Note that if the SAP MaxDB database is located on the same computer as the ODBC application, you can leave this entry empty.

    SQLMode

    SQLMode

    SQL mode

    More information: Glossary, SQL Mode

    Isolation Level

    IsolationLevel

    Locking behavior

    More information: Concepts of the Database System, Isolation Level

For more information, see the documentation provided by the manufacturer of the driver manager.

Creating Data Sources Without a Driver Manager (only on Unix and Linux)

Details about ODBC data sources are either stored globally in the configuration file /etc/odbc.ini or user-specific in the file /<user_home>/.odbc.ini. The system searches for data sources first in the user-specific configuration file, then in the global configuration file.

  1. Open the configuration file in a text editor.

  2. Specify the properties of the data source as follows:

    Syntax Syntax

    1. [<data_source_name>]
ServerDB=<database_name>
ServerNode=<database_computer_name>
SQLMode=<INTERNAL|ORACLE>
TraceFileName=<trace_file_path_name>
    End of the code.

Result

When you make changes to a data source, these changes become effective the next time you log on to the database via the ODBC interface.


Database Trace - SAP Documentation

Procedure documentation Database Trace

The Tools user menu in the DBA Cockpit contains, among other things, the database trace tool.

Note Note

The database trace only adversely affects performance in liveCache databases; in other databases you can use the database trace even in normal operation. Disable the database trace as soon as the actions needed for the analysis have been logged.

End of the note.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] Database Trace [image] .

Result

Activating, Deactivating and Initializing the Trace

  • To activate the trace, select the required trace component and choose Activate Trace. You can activate more trace components while the trace is running by selecting them and choosing Activate Trace again.

  • To activate the trace on a particular level, select the required trace component and choose Activate Trace (Level). You have the option of changing the default value for the trace level. The higher the trace level, the more detailed the information collected by the database trace will be.

  • To deactivate the trace, choose Deactivate Trace. This deactivates any trace components that are selected.

  • To initialize the trace, choose Initialize Trace. After initialization, only the database actions are logged.

Setting Additional Options

You can specify the respective procedures for switching on/off the database trace.

  • Activating the Trace

    If you want to write the database trace for all database sessions, choose For All Sessions. If you only want to write the database trace for a particular database session, select Only for Session with Number and enter the session number.

  • Deactivating the Trace

    If you want to switch off the database trace manually, select Manual Only. If you want the database trace to switch off automatically when a particular error occurs, select Automatically with an Error Code and enter the database error code.

If you have configured the database trace such that it is only written for a particular database session or is deactivated automatically, a warning message appears to bring these options to your attention.

Analyzing and Displaying the Trace

To evaluate the trace, proceed as follows:

  1. Choose Flush Trace Buffer. The information still remaining in the buffer is written in the trace, thereby updating it.

  2. Choose Analyze Trace.

  3. Back up the database trace you have displayed by choosing Save to Local File. This stops it from being overwritten by the next trace analysis.

To view a prepared trace again, choose Display Trace.

More Information

  • Properties

  • Database/liveCache Alert Monitor, Monitor

  • Database Administration, Traces


-25501: Error opening file <file_name> : <error_text> - SAP Documentation

Background documentation -25501: Error opening file <file_name> : <error_text>

Explanation

An operating system-dependent text appears in the operating system error message, indicating the error that occurred. Reasons for the error may be that there is no file of this name or that the specified disk is write-protected, and so on.

User Response

Specify a different filename or correct the error (at operating system level).


-851: Missing input file name - SAP Documentation

Background documentation -851: Missing input file name

Explanation

A name specified for an INCLUDE file is unknown.

User Response

Check whether the file is available or the spelling of the filename is correct.


SQL Performance - SAP Documentation

Procedure documentation SQL Performance

In the Performance user menu of the DBA Cockpit, you can find, among other things, tools for checking SQL performance. Use these tools in combination with the analysis of bottlenecks.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] SQL Performance [image] .

Result

The following tools are available:

  • Command Monitor

    You can perform a short analysis with the command monitor if, for example, users have reported especially long-running transactions.

  • Resource Monitor

    You can use the resource monitor to create an overview of the SQL statements that have used the most resources in a specified period.


From -8000 to -9799 - SAP Documentation

Background documentation From -8000 to -9799

Database Kernel Error Messages
Message Number | Message Text
-8000 | SERVERDB must be restarted
-8001 | User must be connected
-8002 | User already connected to this user task
-8003 | Log and data must be compatible
-8004 | Constant must be compatible with column type and length
-8005 | Value expression must be parameter name
-8006 | Data types must be compatible
-8007 | Column must be key column
-8009 | DEFAULT value must be in constraint specification
-8010 | Table name must be in from list
-8013 | Order column must be output column
-8014 | Result table must be FOR REUSE
-8015 | Table must be a base table
-8016 | Table must be a view table
-8017 | Column must be group column
-8018 | Index name must be unique
-8020 | Next volume required
-8021 | Column must have DEFAULT specification
-8022 | User already connected
-8023 | COSTLIMIT must be greater than COSTWARNING
-8024 | RESTORE CATALOG failed
-8025 | Table must be temp table
-8026 | Connect disabled for this user
-8028 | UNION columns must be compatible
-8030 | Column must be indexed
-8031 | Owner must be specified
-8033 | Complete log segment
-8034 | Order column must be number
-8035 | Foreign key must exist
-8037 | DB procedure must be recompiled
-8038 | Prepared statement not prepared
-8040 | Key does not exist
-8044 | Conversion for character set value impossible
-8045 | Conversion to UNICODE impossible
-8046 | Conversion from UNICODE impossible
-8047 | Password required
-8048 | Version of component must be compatible with kernel version
-8050 | Migration error
-8051 | No snapshot available
-8052 | Trigger dropped during migration; check view migrationerrorprotocol
-8053 | Software version is too old for version of persistent data
-8054 | Contradictory options
-8055 | Trigger failed
-8056 | Snapshot ID not found
-8057 | Too many snapshots
-8064 | Conversion from remote data type is not possible
-8888 | SERVERDB not accessible
-9000 | System error: Not yet implemented
-9001 to -9799 | System error


Central Calendar (SAP Library - SAP MaxDB Library)

 Start of Content Area

Function documentation Central Calendar Locate the document in its SAP Library structure

Use

The Central Calendar is part of the DBA Cockpit in the SAP system. It gives you a single point from which to manage database administration (DBA) actions in an integrated SAP environment. The actions available differ according to the database platform but the method of use is the same. Examples of actions are backups, database system checks, and so on.

The Central Calendar is only for viewing DBA actions by system.

However, you can easily switch to the DBA Planning Calendar for any SAP system registered in the DBA Cockpit to plan – that is, schedule, change, delete, or execute – DBA actions.

The Central Calendar gives you a single point from which to manage:

● Databases of different types and versions on remote SAP systems

● Databases for different versions of the SAP system

● Databases of non-ABAP SAP systems

Integration

The Central Calendar runs with all database platforms delivered as a standard part of the SAP system and supported by SAP (except DB2 for i5/OS, which has good equivalent tools).

Features

● You can manage in real time systems directly administered from the system where the DBA Cockpit is running as well as remote systems, including non-ABAP systems.

● You can quickly check the color-coded status for each system to see if actions have executed successfully.

● You can quickly check the number of actions and number of actions with the highest status severity for each system, as shown in the following example:

The entry for February 2007 in the cell for Thursday February, 08 is:

3 FUD 2

On system FUD for Thursday 8th January 2007 (in the past), there were 3 actions planned, 2 of which had the highest status severity. For example, the highest status severity might be “Warning”, in which case the entry is displayed with a yellow background.

Activities

...

1. On the system where you normally run the DBA Cockpit, you plan a regular job in the DBA Planning Calendar to update the results from remote systems using the action Central Calendar Log Collector. For example, you plan this job to run daily at 06:00.

2. You define the systems you want to monitor in the DBA Cockpit by setting the flag Collect Central Planning Calendar Data for each system.

3. You regularly check the results using the Central Calendar.

4. If you need to schedule, change, delete, or execute actions, you switch to the DBA Planning Calendar.

For more information, see Using the Central Calendar.

End of Content Area


SESSION_ROLES - SAP Documentation

Example documentation SESSION_ROLES

Use of the system table DOMAIN.SESSION_ROLES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define and use roles. Proceed as described in SQL Tutorial, Roles.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table SESSION_ROLES to determine the following database information, among other things:

  • All roles that are active in the current database session

    SELECT role

    FROM DOMAIN.SESSION_ROLES

More Information

All roles: see ROLES

Role of a database user that is automatically activated when a database session is opened: see ROLES

Role privilege: see ROLEPRIVILEGES


Current Log - SAP Documentation

Procedure documentation Current Log

In the Operating user menu of the DBA Cockpit, you can find, among other things, a display of the current liveCache operating log lcinit.log.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] Operating [image] Current [image] .

Result

The current lcinit.log log is displayed. The starting, stopping, and initialization of the SAP liveCache database is logged in this log.

  • You can use the navigation help (Start of File, End of File) for orientation within the log.

  • Choose Import File to update the output.

You will find an overview of liveCache operating in the DBA Cockpit in the user menu Properties.

More Information

Database Administration, Log Files


-880: Unknown statement name - SAP Documentation

Background documentation -880: Unknown statement name

Explanation

The name of the statement is not known.

User Response

Ignore the PREPARE statement or correct it.


Exporting and Importing: Overview - SAP Documentation

Background documentation Exporting and Importing: Overview

  • Exporting Data and/or Information from the Database Catalog

  • Importing Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

  • Saving SQL Statements or Definitions of Database Objects in a Repository

  • Editing Objects in a Repository

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Exporting and Importing


SQL Reference Manual - SAP Documentation

Component documentation SQL Reference Manual

This document describes the syntax and semantics of SQL statements in the SAP MaxDB database system. An SQL statement carries out an operation on the database. SQL statements have been divided into groups according to the type of operation they perform as follows:

  • Data Definition

  • Authorization

  • Data Manipulation

  • Data query

  • Transactions

  • Statistics

Overview Information

  • SQL Statements: Overview

  • Frequently Used Syntax Elements: Overview

  • Functions: Overview

  • Names: Overview

  • Privileges: Overview

  • SQL Syntax

  • System Tables

Examples of SQL Statements

The examples in the SQL reference manual are based on the HOTEL database schema described in the SQL tutorial.

  • SQL Tutorial

Information about the Database System

  • Database Administration

  • Concepts of the Database System

  • Glossary

More Information

  • Restrictions for SQL Statements

  • SQL Mode

  • SQL Mode ORACLE


-28605: Invalid operation in UDE Server-Kernel communication - SAP Documentation

Background documentation -28605: Invalid operation in UDE Server-Kernel communication

Explanation

An attempt was made to send object data through a communication channel in a shared memory communication. In a shared memory communication, object data is always exchanged using addresses in the shared memory. The data cannot be sent through a communication channel.

User Response

Contact your local support.


Missing Tables and Indexes - SAP Documentation

Procedure documentation Missing Tables and Indexes

The Diagnosis user menu of the DBA Cockpit gives you information about database objects (tables, indexes). You can determine which indexes are missing, and check the consistency of database objects and ABAP Dictionary objects.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Missing Tables and Indexes [image] .

Result

The results of the consistency check are displayed, including the number of missing or unknown objects in the database or ABAP/4 dictionary. Analyze the displayed objects in greater detail.

More Information

Indexes

Database Administration in CCMS, Index Analysis, Scheduling a Database Structure Check


service_register - SAP Documentation

Background documentation service_register

Note Note

This DBM command is normally executed by the system. Only use this command if you are instructed to do so by technical support.

End of the note.

Use this command to register the service database in the system.

Prerequisites

You are logged on to the operating system (see user_system).

Structure

service_register

Result

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, Services


Current Messages - SAP Documentation

Procedure documentation Current Messages

In the Kernel Messages user menu of the DBA Cockpit you can find, among other things, a display of the current kernel log. The messages output in the knldiag kernel log support you when you interpret the events that occurred since the database system was started.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] Current [image] .

Result

The system displays the current log (kernel log knldiag).

You can use the navigation help (Start of File, End of File, Start of Write Cycle, Current Write Position) for orientation within the message files.

Choose Import File to update the output.

More Information

Database Administration, Log Files


Creating Login Templates - SAP Documentation

Procedure documentation Creating Login Templates

You can define templates to use the same logon data for users of different databases, which are then available in all databases of the same server or landscape. You can define templates for the database system administrator, DBM operators, and database users.

Procedure

  1. Choose Up One Level (Up One Level) until the desired computer or landscape is displayed in the explorer tree.

  2. In the context menu, choose Login Templates.

  3. Choose New.

  4. Enter a template name, a user name, and a user password.

    To generate the user name from the database name for which you use the login template later, enter <DBNAME> as part of the user name and select Replace With Database Name (for example, SAP<DBNAME>DB).

    Example Example

    You enter the user name SAP<DBNAME>DB.

    When you use this login template for logging on to the TEST database, SAPTESTDB is used as user name.

    When you use this login template for logging on to the PROD database, SAPPRODDB is used as user name.

    End of the example.

  5. To add the login based on this login template to the database that is currently selected in the explorer tree, choose Assign.

More Information

Logging on to a Database


-25330: The page sizes of the source system and the target system do not match (source:<page_size>, target:<page_size>) - SAP Documentation

Background documentation -25330: The page sizes of the source system and the target system do not match (source:<page_size>, target:<page_size>)

Explanation

Error in the Loader command for importing data.The data generated with the EXPORT command is a binary structure of the exported database. If you want to import the data to another database, both database instances must have the same page size.This error occurs when the page size of the database instance from which the tables were exported is different than the page size of database instance into which they are to be imported.

User Response

Use a target database instance that has the same page size as the source database instance.


autorecover - SAP Documentation

Background documentation autorecover

With this command you start the automatic recovery of the database.

The system uses the backup history to determine which backups to use for the recovery. If the backups are files or were created with third-party backup tools, the system also checks whether the corresponding backups can be accessed.

Prerequisites

  • You have the server permission Recovery.

  • You have opened a database session (see: db_connect).

Structure

autorecover [LOG] [UNTIL <date> <time>] [<backup_spec>]

<backup_spec> :: = <key_label_spec> | IBID <backup_ID>

<key_label_spec> :: = KEY <key> LABEL <label>

Options
Option | Description
LOG | Only log backups should be imported to recover the database. As per the default value, Database Manager imports data backups and log backups.
UNTIL <date> <time> <date> ::= <yyyymmdd> <time> ::= <hhmmss> | All database system content up to this point in time will be recovered. <date>: year, month, day <time>: hours, minutes, seconds If you do not specify this option, Database Manager imports all available data backups, log backups, and the content of the log volume to restore the most recent possible state of the database system.
KEY <key> | Key of the first backup to be imported You can find this value in the backup history.
LABEL <label> | Backup ID of the first backup to be imported You can find this value in the backup history.
IBID <backup_ID> | Backup ID consisting of a <key> and <label>, separated by a vertical slash (|) This notation refers to the output in the backup history and makes it possible to simply copy this specification from the backup history into the DBM command line.

Result

OK

...

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Database Administration, Restoring Databases


-740: Array size mismatch - SAP Documentation

Background documentation -740: Array size mismatch

Explanation

In mass statements the parameters have different sizes.

User Response

The smallest size of all the parameters is set. If this is not desired, set all the sizes to the same value.


-775: Datafile read error - SAP Documentation

Background documentation -775: Datafile read error

Explanation

An error occurred when reading a datafile for the processing of LONG columns.

User Response

Look up in the trace file *.pct in which column the error occurred. Then check the datafile.


-25338: Error during restart IMPORT; restart entry <position> not found in mapping file <file_name> - SAP Documentation

Background documentation -25338: Error during restart IMPORT; restart entry <position> not found in mapping file <file_name>

Explanation

An error occurred while restarting the data import.You can restart cancelled imports using the IMPORT command. To do this, when the Loader executes the command, it writes a restart file containing the name of the last successfully imported table.This error occurs if the Loader is unable to find the name of the table from the restart file in the assignment file. One possible cause may be that the assignment file was modified after the import was cancelled.

User Response

If possible, restore the assignment file to its original state. If this is not possible, you need to export and import all the data again to ensure your data is consistent.


Configuring and Starting SQL Performance Monitoring - SAP Documentation

Procedure documentation Configuring and Starting SQL Performance Monitoring

Note Note

This function is not available for all SAP MaxDB database versions.

End of the note.

Several reasons are possible for poor performance of your database (and therefore your application as well). Your hardware might not be powerful enough, for example, or other applications may be taking up too many system resources.

SQL performance analysis in Database Studio lets you investigate which SQL statements that the application triggers are particularly cost-intensive for the database, and why this might be the case.

To collect information about the execution of SQL statements in the database, you need to activate SQL monitoring. SQL monitoring measures runtimes, I/O accesses, and the selectivity of SQL statements, and calculates the total costs for repeatedly executed SQL statements. This lets you identify SQL statements that have short runtimes individually, but whose frequent execution results in a heavy load.

Recommendation Recommendation

Only activate SQL monitoring if you need a targeted analysis of SQL performance problems. Once you have solved the issue at hand, deactivate it again.

End of the recommendation.

If you activate Detail Collection as well, then the system records the last executions of SQL statements that meet the criteria you define, as well as the parameters used. If you do not activate the Detail Collection, the system only records collective values for the execution of SQL statements.

Prerequisites

  • You are logged on to the database as the database system administrator or as a database user.

  • The database is in the ONLINE operational state.

Procedure

Configuring and Starting SQL Performance Monitoring

  1. In the context menu of the database system administrator or the logged-on database user, choose [image] Performance [image] SQL Performance Analysis [image] .

  2. To start SQL monitoring (including Detail Collection) directly with the default values, choose Start Detail Collection.

    To start SQL monitoring with different settings, proceed as follows:

    1. Choose Advanced.... .

      Monitoring Settings

      Function

      Property

      Description

      Monitoring

      Collects summary information about all executions of an SQL statement and accumulates this information for each SQL statement.

      Initialize Monitor Tables

      Deletes the collected information.

      Detail Collection

      Collects information about single executions of a specific SQL statement. If the SQL statement has parameters, it records the values of those parameters as well.

      The system records all executions that fulfill at least one of the conditions (OR operator).

      The system only records a certain number of executions and then begins overwriting the oldest entries.

      Caution Caution

      When you change one of the Detail Collection conditions, the system adapts the corresponding filter condition automatically (see below).

      End of the caution.

      Selectivity lower or equal than

      Ratio between the number of records that fulfill the conditions of an SQL statement and the number of records that the system had to read when executing that SQL statement.

      Runtime (ms) higher or equal than

      SQL statement runtime

      Page Accesses higher or equal than

      Number of pages that the system has to access when executing the SQL statement.

      If this number is high, this could indicate an unsuitable search strategy or an overly large result set.

      Initialize Monitor Tables

      Deletes the information collected in the Detail Collection.

    2. Choose Start to start simple SQL monitoring and, if necessary, activate the Detail Collection.

Configuring Filters

Filters let you restrict the list of SQL statements that the system records in SQL monitoring. All the SQL statements that fulfill at least one of the filter conditions are displayed (OR operator).

The following types of filters are available:

  • Cumulative Filters

    These filters use the information that the system collects during simple SQL monitoring.

    The system accumulates the properties of the single executions for each SQL statement.

    These filters help you find SQL statements that the system runs frequently. Minor improvements in the performance of such SQL statements can result in large performance gains in the overall system.

  • Single Filters

    These filters use information that the system collected in the Detail Collection.

    They help you find SQL statements for which single executions are particularly slow (for specific parameter values of an SQL statement, for example).

    Caution Caution

    When you change the filter condition of a single filter, the system modifies the corresponding Detail Collection condition in the SQL monitoring settings automatically.

    End of the caution.
Adding a Filter

  1. Choose a filter in the Analysis field and enter a value for the filter condition under Filter Detail.

    Performance Analysis: Filters

    Filter Name

    Filter Condition

    Cumulated Read Pages

    Total pages accessed by all executions of individual SQL statements

    Cumulated Runtime

    Total runtime (in s) of all executions of individual SQL statements

    Cumulated Selectivity

    Total selectivity (in s) of all executions of individual SQL statements

    Read Pages

    Pages accessed by single executions of individual SQL statements

    Runtime

    Runtime (in ms) of single executions of individual SQL statements

    Selectivity

    Selectivity (in %) of single executions of individual SQL statements

  2. Choose Add to add the filter.

Changing the Filter

  • To change a filter condition, choose the filter, enter the new filter condition, and choose Update.

  • To remove a filter, set the checkbox for the filter and choose Remove Checked Filters.

Result

When the SQL performance analysis identifies specific SQL statements as bottleneck candidates, you can use the SQL editor, table editor, and Explain view to examine them in more detail and identify the specific reasons for poor performance (such as missing indexes, bad indexes, or obsolete SQL optimizer statistics).

For more information, see Analyzing SQL Performance Bottlenecks.

More Information

  • SAP Note 819641 (FAQ: MaxDB Performance)

  • Database Administration, Analyzing the Database Performance

  • Monitoring Databases: Overview


-5014: Missing definite column name - SAP Documentation

Background documentation -5014: Missing definite column name

Explanation

More than one table was specified in a FROM clause in the SQL statement. A column name was used without preceding table names, and this column name is contained in more than one of the tables specified in the FROM clause.

User Response

To ensure that the column name is unique, precede it with the required table name.


-9001 to -9799: System error - SAP Documentation

Background documentation -9001 to -9799: System error

Explanation

These error messages should not occur during normal operation with a consistent database. With some errors, an implicit SHUTDOWN is performed.

The error message starts with System error:

User Response

As a rule, you should shut down the database and contact support. Create a trace of the last database activities and save it. Send the trace to Support so that they can trace and rectify the error.


Exporting and Importing Using Third-Party Backup Tools - SAP Documentation

Background documentation Exporting and Importing Using Third-Party Backup Tools

If you use export/import Loader commands to export/import the entire application and/or database catalog data (EXPORT/IMPORT DB), you can use third-party backup tools.

Prerequisites

  1. Connecting Third-Party Backup Tools

  2. Specify the backup tool with Loader command SET BACKUPTOOL.

Process

You use Loader commands to export and import data. When you specify the data streams, you have to select the data carrier type TAPE (or TAPE <ebid_spec>) as the data carrier is a tape addressed using a third-party backup tool.

  • Export: Specify TAPE as the data carrier type. Loader creates the pipes for transferring the backup data during export. The pipes may not already exist.

  • Import: Specify TAPE <ebid_spec> (<ebid_spec> ::= EBID '<literal>') as the data carrier type. When you import data using third-party backup tools, you must specify the external backup ID literal after the keywords TAPE EBID. The external backup ID identifies the required data stream.

Result

After you have finished exporting data with a third-party backup tool, the external backup ID is written to the log file and the Loader transformation table. If necessary, use this log information to determine the external backup ID.

More Information

  • Data Stream

  • EXPORT DB Command

    IMPORT DB Command

  • Loder Log Functions

Loader Commands and SQL Statements


-1120: Too many statements in definition - SAP Documentation

Background documentation -1120: Too many statements in definition

Explanation

You specified more than 255 SQL statements within a CREATE TRIGGER or CREATE DBPROC statement.

User Response

Delete some of your SQL statements and try to get the same effect using fewer statements.


-25303: Input value does not match key order or range specification - SAP Documentation

Background documentation -25303: Input value does not match key order or range specification

Explanation

Error in the Loader command for importing data.All values that are to be imported must be available in key order in the data stream. The order is violated either by to the data record in the row (data format CSV or FWV without binary data) or the position specified (format of the data stream: FWV BINARY).

User Response

Correct the data and re-execute the command.


SAP Library - ODBC Manual

Start Level 1 Node: ODBC Manual ODBC Manual End Level 1 Node: ODBC Manual
Start Level 2 Node: Installing the SAP MaxDB ODBC Driver Installing the SAP MaxDB ODBC Driver End Level 2 Node: Installing the SAP MaxDB ODBC Driver
Start Level 2 Node: Accessing SAP MaxDB Databases Via ODBC Accessing SAP MaxDB Databases Via ODBC End Level 2 Node: Accessing SAP MaxDB Databases Via ODBC
Start Level 3 Node: Setting up the SAP MaxDB ODBC Driver Setting up the SAP MaxDB ODBC Driver End Level 3 Node: Setting up the SAP MaxDB ODBC Driver
Start Level 3 Node: Creating or Changing Data Sources Creating or Changing Data Sources End Level 3 Node: Creating or Changing Data Sources
Start Level 3 Node: Troubleshooting Using the SAP MaxDB ODBC Trace Troubleshooting Using the SAP MaxDB ODBC Trace End Level 3 Node: Troubleshooting Using the SAP MaxDB ODBC Trace
Start Level 2 Node: SAP MaxDB ODBC Driver Reference SAP MaxDB ODBC Driver Reference End Level 2 Node: SAP MaxDB ODBC Driver Reference
Start Level 3 Node: Core API Core API End Level 3 Node: Core API
Start Level 3 Node: Level 1 API Level 1 API End Level 3 Node: Level 1 API
Start Level 3 Node: Level 2 API Level 2 API End Level 3 Node: Level 2 API
Start Level 3 Node: Supported Data Types Supported Data Types End Level 3 Node: Supported Data Types
Start Level 3 Node: Unicode Support Unicode Support End Level 3 Node: Unicode Support


-24956: ERR_BASAVETYPECON - backup type conflicts with medium definition - SAP Documentation

Background documentation -24956: ERR_BASAVETYPECON - backup type conflicts with medium definition

Explanation

This error can occur when you back up data or restore.The backup type (LOG, DATA or PAGES) defined in the backup template does not match the backup type you specified when backing up or restoring.

User Response

Change the backup type defined in the backup template or specify the backup type that matches the backup template when saving or restoring.

Caution Caution

To restore older backups, you may have to change the definition of the backup template again.

End of the caution.


-25109: Command not implemented - SAP Documentation

Background documentation -25109: Command not implemented

Explanation

The specified statement could not be executed because the required functions have not been installed on the Loader

User Response

A user action is not possible.


Critical Sections - SAP Documentation

Procedure documentation Critical Sections

In the Configuration user menu of the DBA Cockpit, you will find, among other things, a display of the accesses to the main memory structures.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Critical Regions [image] .

Result

The system displays an overview of the accesses to the main memory structures that are only used exclusively: critical sections (so-called synchronization objects, which are administered by special semaphores (also called regions)). You can see which thread (task) is accessing the corresponding main memory structure.

You can use these statistics to determine the cache activity and any resource conflicts that might exist. These conflicts can occur if a resource is requested more than once at a particular time.

If the number of conflicts is more than 10 % of all accesses, this indicates significant bottlenecks in your system.

Explanation of the OMS Synchronization Objects
Synchronization Object | Explanation
OMS2 | Synchronization of the OMS heap
OMS3 | Synchronization of the OMS monitor
OMS4 | Synchronization of the unloading of versions
OMS5 | Synchronization of the version directory
OMS6 | Synchronization of the shared heap counter
OMS7 | Synchronization of the stack heap counter
OMS8-OMS<n> | User-defined synchronization objects

More Information

Database Console


-5003: Missing key specification - SAP Documentation

Background documentation -5003: Missing key specification

Explanation

The SQL statement requires a primary key specification. The primary key was omitted or is incomplete.

User Response

Use a QUERY-statement issued on the system table DOMAIN.COLUMNS to find out the key columns of the table. Correct the key specified in the SQL statement, or insert a key specification into the SQL statement.


Server Software - SAP Documentation

Background documentation Server Software

The SAP MaxDB software components that are required to create and operate databases are called server software. These components are contained in the Database Kernel software component.

More Information

Software Component


-808: Not yet implemented - SAP Documentation

Background documentation -808: Not yet implemented

Explanation

The function has not yet been implemented.

User Response

Please consult the release information.


-60: Work rolled back - SAP Documentation

Background documentation -60: Work rolled back

Explanation

The user's transaction was implicitly canceled and reset by a ROLLBACK statement. The following possible reasons are possible:

  1. The user failed to carry out any operations in the database system within a certain period of time, but was holding locks which other users were waiting for.

  2. The database instance was in a deadlock situation. A deadlock situation is a situation in which two or more users hold locks and request further locks that are held by the respective other users. In the simplest case of two users, one user holds one lock at least and requests another lock. But this lock is held by another user who, on the other hand, waits for the lock held by the first user. This situation can only be resolved if one of the users releases the lock already obtained.

User Response

In some cases, the error message contains a more detailed description of the error.In both cases, the lock requests must be checked and modified, if necessary. Repeat the last transaction.


Creating and Updating Databases: Overview - SAP Documentation

Background documentation Creating and Updating Databases: Overview

  • Creating Databases

  • Loading Demo Data

  • Updating System Tables

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

  • Database Administration, Creating Databases


General Notes - SAP Documentation

Background documentation General Notes

If you want to evaluate system tables, note the following information:

  • When system tables are evaluated, the system only outputs information for objects of which the current database user is the owner, or for which the database user has at least one privilege (the database user therefore knows the object). This authorization concept may mean that the table definition visible for the current database user differs from the actual definition. The definition of a view table is only visible for the owner of the view table.

  • When you query the system table(s), you should enter conditions that describe the required object as precisely as possible. Entering the object owner considerably speeds up the search for the relevant information.

  • When you specify search commands, you should specify equivalence conditions where possible. Specifying LIKE conditions is less effective.

  • For performance reasons, when you query information from system tables, you should use not only the SQL statement SELECT * but also limit the number of output columns to those columns that you actually require.

    When you query statistical information from system tables, in particular, additional actions are performed to determine column values in the database system when certain output columns are requested. As a result, you should only have the system determine this column information if you really need it.

  • Simple identifiers are always created in the database instance in upper-case letters, irrespective of how they were entered when the data was defined.

    If you use simple identifiers in a search condition, you must enter the single quotes that are typical for specifying literals.

    For performance reasons, the simple identifier should not be converted to upper-case letters by the database system when the SQL statement is executed; you should enter the simple identifier directly in upper-case letters in the search condition.

    Example Example

    CREATE TABLE mytab (…)

    SELECT … FROM … WHERE … = 'MYTAB'

    End of the example.

  • Special identifiers are always specified in double quotes in the data definition. In the database instance, these are stored as they were entered, that is, they are not converted to upper-case letters.

    If you use special identifiers in a search condition, you must enter the single quotes that are typical for specifying literals.

    Example Example

    CREATE TABLE "this is mytab" (…)

    SELECT … FROM … WHERE … = 'this is mytab'

    End of the example.

More Information

Identifier (identifier)

System Tables


EXPORT TABLE Command - SAP Documentation

Background documentation EXPORT TABLE Command

You can use the Loader command EXPORT TABLE to export the data from a specified table.

Prerequisites

The table specified must exist in the database. Only the owner of the table can execute the EXPORT TABLE ... command with the format PAGES. Otherwise you must have access authorization for the tables you want to export.

Structure

Syntax Syntax

  1. <export_table_command> ::=
  EXPORT TABLE <table_name>
    [<order_clause>]
    <catalog_data_outstream_table_spec>
    [<package_spec>]

<order_clause> ::=
  ORDER BY <column_name>,...

<catalog_data_outstream_table_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_table_spec>
| <catalog_outstream_spec> <data_outstream_table_spec>
<catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>
<data_outstream_table_spec> ::=
  <data_outstream_part_spec>
| <data_outstream_column_spec>
<data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>
<data_outstream_column_spec> ::=
  DATA <outstream_columnformat_spec> [<export_lobcolumn_spec> ...]

<package_spec> ::=
  PACKAGE <oustream_csv_spec>
End of the code.

You can use the EXPORT TABLE command to export all the data from a specified table. You cannot select specific column values with the EXPORT TABLE command. You can only do this with the EXPORT COLUMNS command.

<catalog_outstream_spec>, <data_outstream_table_spec>

Depending on whether database catalog and/or application data is exported, the following data streams are generated during the export:

  • Data stream for the database catalog definitions CATALOG <outstream_ddl_spec>

  • Data stream for the application data DATA <outstream_tableformat_spec>

System table SYSLOADER.TRANSFORMATIONMODEL and additional system tables are filled.

See: Data Stream

Syntax Syntax

  1. EXPORT TABLE <table_name>
  [<order_clause>]
  <catalog_outstream_spec> <data_outstream_table_spec>
  [<package_spec>]
End of the code.

This EXPORT TABLE command exports the data from the specified table (database catalog and application data).

Syntax Syntax

  1. EXPORT TABLE <table_name>
  <catalog_outstream_spec>
  [<package_spec>]
End of the code.

This EXPORT TABLE command exports the database catalog information from the specified table.

Syntax Syntax

  1. EXPORT TABLE <table_name>
  [<order_clause>]
  <data_outstream_table_spec>
  [<package_spec>]
End of the code.

This EXPORT TABLE command exports the application data from the specified table.

More information about the syntax element data_outstream_table_spec:

<data_outstream_part_spec> ::= DATA <outstream_tableformat_spec>

To export the data in PAGES or RECORDS format, use syntax variant DATA <outstream_tableformat_spec>. We recommend this option if you do not need the data in a readable format and you want to move it from one SAP MaxDB database to another. All the data is exported in data streams, including the LOB data. After it has been exported, you can no longer change the data in the data stream. A table is read-only during an export in data format PAGES.

<data_outstream_column_spec> ::= DATA <outstream_columnformat_spec> [<export_lobcolumn_spec>...]

To export the data in CSV or FWV [BINARY] format, use syntax variant DATA <outstream_columnformat_spec>. We recommend this option if you need the data in a readable form, for example for tools of other providers. It is possible to move the data from one SAP MaxDB database to another, but this takes much longer than if you use RECORDS or PAGES format. You can still change the data in the data streams after it has been exported. If you want to export LOB values, you need to specify a separate data stream for these column values. You can do this with the export_lobcolumn_spec syntax element (Exporting LOB Values).

<order_clause>

You can use the order_clause to specify the sort sequence for the table rows in the data stream. The columns specified in the order clause define the sort sequence.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

Result

The application data and/or the database catalog are exported to the data_outstream_table_spec and catalog_outstream_spec data streams. If necessary, all entries in the TRANSFORMATIONMODEL table are exported to the package_spec data stream. You can use the corresponding IMPORT command to restore the database catalog and/or the application data.

Errors: The export cannot be completed successfully. Loader logs the cause of the error in the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is needed if you want to restart the export.

Example

Loader Tutorial, EXPORT TABLE

More Information

Exporting: Loader Commands

IMPORT TABLE Command

Loader Log File

Loader System Tables


-811: Numeric output parameter overflow - SAP Documentation

Background documentation -811: Numeric output parameter overflow

Explanation

An database value is too large for the SQL variable or the parameter.

User Response

Enlarge the value range for the SQL variable or parameter.


-25221: Wrong decimal specification - SAP Documentation

Background documentation -25221: Wrong decimal specification

Explanation

The command to export or import data contains an error.The format specification for the data stream in the command includes a specification for decimal numbers. This is to separate thousands and to separate whole numbers from decimal places. The syntax of the character string is incorrect.

User Response

Correct the entries and re-execute the command.


-25404: Invalid HEX constant <hex_value> found in code page file. The file might be corrupted - SAP Documentation

Background documentation -25404: Invalid HEX constant <hex_value> found in code page file. The file might be corrupted

Explanation

You have tried to import a codepage file into the SYSLOADER.CODEPAGE table using the SET CODEPAGE command. Checking the CODEPAGE file found that this does not conform to the formatting of CODEPAGE files.

User Response

Import the desired CODEPAGE file into the CODEPAGE index of the Loader from the web site http://www.unicode.org/ and re-execute the SET CODEPAGE command.


CCMS - SAP Documentation

Background documentation CCMS

SAP customers can use SAP CCMS (Computing Center Management System, component of Solution Life Cycle Management) to manage their SAP MaxDB databases and SAP liveCache technology.

More Information

  • DBA Cockpit: SAP MaxDB

  • Database Administration in CCMS: SAP MaxDB

  • Database Administration in CCMS: SAP liveCache Technology

  • SAP Note 990602


-25337: Error restoring table <table_name>; no table data found in data file <file_name> - SAP Documentation

Background documentation -25337: Error restoring table <table_name>; no table data found in data file <file_name>

Explanation

Error in the Loader command for importing data.The specified data stream does not contain any data that can be used to import the table. Before a table can be imported, it must be exported using the EXPORT TABLE command.

User Response

Export the table before you restore it.


-25019: Error opening server log file '<log_file_name>' (<error_text>). Opened temporary log file '<temp_log_file_name>' - SAP Documentation

Background documentation -25019: Error opening server log file '<log_file_name>' (<error_text>). Opened temporary log file '<temp_log_file_name>'

Explanation

Attempts to open the log file of the Loader failed. This may have been caused by another Loader already running on the same computer. If more than one Loader is started on one computer at the same time, only one is able access the log file at a time because log files can only be opened exclusively.A temporary log file is opened so that the Loader can still process the statements. The name of the log is stated in the message.

User Response

No user action is required.


-8046: Conversion from UNICODE impossible - SAP Documentation

Background documentation -8046: Conversion from UNICODE impossible

Explanation

You tried to convert data from UNICODE format (UCS-2) to ASCII format. However, this is not possible because the data contains characters other than Latin1 characters.

User Response

Check whether the data is correct.You cannot perform a conversion explicitly. You can try to avoid this error by explicitly converting the ASCII data used for the purpose of, for example, comparisons.


SQL Syntax - SAP Documentation

Component documentation SQL Syntax

The syntax notation used in this SQL syntax description is BNF. The following conventions apply:

SQL Syntax Notation | Explanation
KEYWORDS | Keywords are shown in uppercase letters for the sake of clarity. They can be entered in uppercase or lowercase letters.
<xyz> | Terms in angle brackets are placeholders for syntactical units explained in this document. Do not use angle brackets when entering an SQL statement.
<! text !> | Texts enclosed in angled brackets and exclamation points indicate that the syntactical unit is explained by means of a text. Do not use angled brackets and exclamation points when entering an SQL statement.
clause ::= rule | Clauses are the building blocks of SQL statements. Rules describe how these building blocks are put together to form more complex clauses and also dictate the notation that is used.
clause1 clause2 | The two clauses are written one after the other, separated by at least one blank.
[clause] | Optional clause. This clause can be ignored. Do not use square brackets when entering an SQL statement.
clause1 | clause2 | ... | clauses | Alternative clauses. You can use exactly one of these clauses.
clause,... | The clause can be repeated as often as required. The individual repetitions must be written one after the other and separated by a comma and any number of blanks.
clause ... | The clause can be repeated as often as required. The individual repetitions must be written one after the other and separated by spaces.
clause... | The clause can be repeated as often as required. The individual repetitions are to be recorded in direct sequence.

The following overview lists the syntax rules required for the SQL statements in INTERNAL SQL mode, in alphabetical order.

  • For a detailed description of SQL statements in INTERNAL SQL mode, see the SQL Reference Manual documentation.

  • For examples of using SQL syntax, see the SQL Tutorial.

  • Be aware of Resctrictions for SQL Statements.

  • Significant changes to the syntax as compared with older database versions are described in the section SQL Syntax Changes.

Syntax Syntax

  1. <add_definition> ::=
  ADD <column_definition>,...
| ADD (<column_definition>,...)
| ADD <constraint_definition>
| ADD <key_definition>
| ADD <referential_constraint_definition>

<alias_name> ::=
<identifier>

<all_function> ::=
  <set_function_name>([ALL] <expression>)

<alter_definition> ::=
  ALTER CONSTRAINT <constraint_name>
    CHECK <search_condition>
| ALTER <key_definition>

<alter_index_statement> ::=
  ALTER INDEX <index_name> [ON <table_name>] ENABLE
| ALTER INDEX <index_name> [ON <table_name>] DISABLE
| ALTER INDEX <index_name> [ON <table_name>] INIT USAGE

<alter_password_statement>::=
| ALTER PASSWORD <user_name new_password>

<alter_table_statement> ::=
  ALTER TABLE <table_name> <add_definition>
| ALTER TABLE <table_name> <alter_definition>
| ALTER TABLE <table_name> <column_change_definition>
| ALTER TABLE <table_name> <drop_definition>
| ALTER TABLE <table_name> <modify_definition>
| ALTER TABLE <table_name> <referential_constraint_definition>
| ALTER TABLE <table_name> <sample_definition>
| ALTER TABLE <table_name> [NOT] CACHE
| ALTER TABLE <table_name> [NOT] NOCACHE

<alter_user_statement> ::=
  ALTER USER <user_name> [<user_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>
   | DEFAULT ROLE NONE
   | DEFAULT ROLE <role_name>]
    [NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]

<alter_usergroup_statement> ::=
  ALTER USERGROUP <usergroup_name> [usergroup_mode]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>]
   | DEFAULT ROLE NONE
   | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]

<argument> ::=
  <identifier>

<argument1> ::=
  <identifier>

<arithmetic_function> ::=
  ABS     (<expression>)
| CEIL    (<expression>)
| EXP     (<expression>)
| FIXED   (<expression>[,<unsigned_integer>[,<unsigned_integer>]])
| FLOAT   (<expression>,<unsigned_integer>)
| FLOOR   (<expression>)
| INDEX   (<string_spec>,<string_spec>[,<expression>[,<expression>]])
| LENGTH  (<expression>)
| LN      (<expression>)
| LOG     (<expression>)
| NOROUND (<expression>)
| PI
| POWER   (<expression>,<expression>)
| ROUND   (<expression>[,<expression>])
| SIGN    (<expression>)
| SQRT    (<expression>)
| TRUNC   (<expression>[,<expression>])

<ascii_or_unicode> ::=
  ASCII
| UNICODE

<assignment_statement> ::=
SET <variable_name> = <expression>

<between_predicate> ::=
  <expression> [NOT] BETWEEN <expression> AND <expression>

<bool_predicate> ::=
  <column_spec> [IS [NOT] TRUE | IS [NOT] FALSE]

<boolean_factor> ::=
  [NOT] <predicate>
| [NOT] (<search_condition>)

<boolean_term> ::=
  <boolean_factor>
| <boolean_term> AND <boolean_factor>

<call_statement> ::=
  CALL <dbproc_name> [(<expression>,...)] [WITH COMMIT]

<cascade_option> ::=
  CASCADE
| RESTRICT

<case_else_clause> ::=
  ELSE statement;

<case_function> ::=
  <simple_case_function>
| <searched_case_function>

<case_statement> ::=
  <simple_case_statement>
| <searched_case_statement>

<character> ::=
  <digit>
| <letter>
| <extended_letter>
| <hex_digit>
| <language_specific_character>
| <special_character>

<check_expression> ::=
  <expression>

<close_statement> ::=
  CLOSE [<result_table_name>]

<column_attributes> ::=
  [<key_or_not_null_spec>]
  [<default_spec>]
  [UNIQUE]
  [<constraint_definition>]
  [REFERENCES <referenced_table>
    [(<referenced_column>)]
    [<delete_rule>]]

<column_change_definition> ::=
  COLUMN <column_name> ADD <default_spec>
| COLUMN <column_name> ALTER <default_spec>
| COLUMN <column_name> DEFAULT NULL
| COLUMN <column_name> DROP DEFAULT
| COLUMN <column_name> NOT NULL

<column_definition> ::=
  <column_name data_type> [<column_attributes>]
| <column_name domain_name> [<column_attributes>]

<column_list> ::=
  <column_name>
| <column_list>, <column_name>

<column_name> ::=
  <identifier>

<column_spec> ::=
  <column_name>
| <table_name>.<column_name>
| <reference_name>.<column_name>
| <result_table_name>.<column_name>

<comment> ::=
  <string_literal>
| <parameter_name>

<comment_on_statement> ::=
  COMMENT ON <object_spec> IS <comment>

<commit_statement> ::=
  COMMIT [WORK]

<comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>

<comparison_predicate> ::=
  <expression comp_op> <expression>
| <expression> <comp_op> <subquery>
| <expression_list> <equal_or_not> (<expression_list>)
| <expression_list> <equal_or_not> <subquery>

<connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT

<connect_option> ::=
  SQLMODE <internal_oracle>
| ISOLATION LEVEL <unsigned_integer>
| TIMEOUT <unsigned_integer>

<connect_statement> ::=
  CONNECT <parameter_name> IDENTIFIED BY <parameter_name>
    [<connect_option> ...]
| CONNECT <parameter_name> IDENTIFIED BY <password>
    [<connect_option> ...]
| CONNECT <user_name> IDENTIFIED BY <parameter_name>
    [<connect_option> ...]
| CONNECT <user_name> IDENTIFIED BY <password>
    [<connect_option> ...]

<constraint_definition> ::=
  CHECK <search_condition>
| CONSTRAINT <search_condition>
| CONSTRAINT <constraint_name> CHECK <search_condition>

<constraint_name> ::=
  <identifier>

<conversion_function> ::=
  CHAR(<expression>[,<datetimeformat>])
| CHR(<expression>[,<unsigned_integer>])
| HEX(<expression>)
| HEXTORAW(<expression>)
| INTTORAW(<expression>)
| NUM(<expression>)

<create_dbproc_statement> ::=
  CREATE DBPROC[EDURE] <dbproc_name>
    [(<formal_parameter>,...)]
    [RETURNS CURSOR] AS <routine>

<create_domain_statement> ::=
  CREATE DOMAIN <domain_name> <data_type>
    [<default_spec>] [<constraint_definition>]

<create_function_statement> ::=
  CREATE [PUBLIC] FUNCTION <dbfunction_name>
    [(<formal_parameter1>,...)] RETURNS <data_type>
    [DETERMINISTIC] AS <routine>

<create_index_statement> ::=
  CREATE [UNIQUE] INDEX <index_name>
    ON <table_name> (<index_spec>)

<create_role_statement> ::=
  CREATE ROLE <role_name> [IDENTIFIED BY <password>]

<create_schema_statement> ::=
  CREATE SCHEMA <schema_name_clause> [<schema_element> ...]

<create_sequence_statement> ::=
  CREATE SEQUENCE [<schema_name>.]<sequence_name>
    [INCREMENT BY <integer>]
    [START WITH <integer>]
    [MAXVALUE <integer> | NOMAXVALUE]
    [MINVALUE <integer> | NOMINVALUE]
    [CYCLE | NOCYCLE]
    [CACHE <unsigned_integer> | NOCACHE]
    [ORDER | NOORDER]

<create_synonym_statement> ::=
  CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>
    FOR <table_name>
| CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>
    FOR <sequence_name>

<create_system_trigger_statement> ::=
  CREATE SYSTEM TRIGGER [<schema_name>.]<trigger_name>
    AFTER RESTART EXECUTE (<routine>)

<create_table_statement> ::=
  CREATE TABLE <table_name>
    (<table_descriptino_element> [,<table_description_element>,...])
    [IGNORE ROLLBACK]
    [<sample_definition>]
    [CACHE] [NOCACHE]
| CREATE TABLE <table_name>
    [(<table_description_element>,...)]
    [IGNORE ROLLBACK]
    [<sample_definition>] AS <query_expression>
    [<duplicates_clause>]
| CREATE TABLE <table_name> LIKE <table_name>
    [IGNORE ROLLBACK]

<create_table_temp> ::=
<!  <create_table_statement> for creating temporary tables,
    that is, the table name in the CREATE TABLE statement
    must have the form TEMP.<identifier> .
!>
<create_trigger_statement> ::=
  CREATE TRIGGER <trigger_name> FOR <table_name>
    AFTER <trigger_event>,...
    EXECUTE (<routine>)
    [WHENEVER <search_condition>]

<create_user_statement> ::=
  CREATE USER <user_name> PASSWORD <password>
    [<user_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]
| CREATE USER <user_name> PASSWORD <password>
    LIKE <source_user>
| CREATE USER <user_name> PASSWORD <password>
    USERGROUP <usergroup_name>

<create_usergroup_statement> ::=
  CREATE USERGROUP <usergroup_name>
    [<usergroup_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]

<create_view_statement> ::=
  CREATE [OR REPLACE] VIEW <table_name>
    [(<alias_name>,...)]
    AS <query_expression>
    [WITH CHECK OPTION]

<data_type> ::=
  CHAR[ACTER] [(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| VARCHAR [(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| CLOB [ASCII | UNICODE]
| BLOB
| BOOLEAN
| FIXED (<unsigned_integer> [,<unsigned_integer>])
| FLOAT (<unsigned_integer>)
| INT[EGER]
| SMALLINT
| DATE
| TIME
| TIMESTAMP

<date_function> ::=
  ADDDATE    (<date_or_timestamp_expression>,<expression>)
| ADD_MONTHS (<date_or_timestamp_expression>,<expression>)
| DATEDIFF   (<date_or_timestamp_expression>,<date_or_timestamp_expression>)
| DAYNAME    (<date_or_timestamp_expression>)
| DAYOFMONTH (<date_or_timestamp_expression>)
| DAYOFWEEK  (<date_or_timestamp_expression>)
| DAYOFYEAR  (<date_or_timestamp_expression>)
| MAKEDATE   (<expression>,<expression>)
| MONTHNAME  (<date_or_timestamp_expression>)
| SUBDATE    (<date_or_timestamp_expression>,<expression>)
| WEEKOFYEAR (<date_or_timestamp_expression>)

<date_or_timestamp_expression> ::=
  <expression>

<datetimeformat> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA

<dbfunction_call> ::=
  <dbfunction_name>([<expression>,...])

<dbfunction_name> ::=
  [<schema_name>.]<identifier>

<dbproc_name> ::=
  [<schema_name>.]<identifier>

<declare_cursor_statement> ::=
  DECLARE <result_table_name> CURSOR FOR <select_statement>

<default_expression> ::=
  <expression>

<default_predicate> ::=
  <column_spec> <comp_op> DEFAULT

<default_spec> ::=
  DEFAULT <literal>
| DEFAULT NULL
| DEFAULT USER
| DEFAULT USERGROUP
| DEFAULT SYSDBA
| DEFAULT DATE
| DEFAULT TIME
| DEFAULT TIMESTAMP
| DEFAULT UTCDATE
| DEFAULT UTCDIFF
| DEFAULT TIMEZONE
| DEFAULT TRUE
| DEFAULT FALSE
| DEFAULT TRANSACTION
| DEFAULT STAMP
| DEFAULT SERIAL[(<unsigned_integer>)]

<delete_rule> ::=
  ON DELETE CASCADE
| ON DELETE RESTRICT
| ON DELETE SET DEFAULT
| ON DELETE SET NULL

<delete_statement> ::=
  DELETE [FROM] <table_name>
    [<reference_name>]
    [KEY <key_spec>,...] <!  This SQL clause is
          no longer recommended to be used
          and might be removed from future versions.  !>
    [WHERE <search_condition>]
    [IGNORE TRIGGER]
    [NOWAIT]
| DELETE [FROM] <table_name >
    [<reference_name>]
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]

<delimiter_token> ::=
  <vertical_slash>
| , | . | + | - | * | / | < | > | <> | != | = | <= | >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>

<derived_column> ::=
  <expression> [ [AS] <result_column_name>]

<digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

<digit_sequence> ::=
  <digit>...

<distinct_function> ::=
  <set_function_name>(DISTINCT <expression>)

<distinct_spec> ::=
  DISTINCT
| ALL

<domain_name> ::=
  [<schema_name>.]<identifier>

<double_quotes> ::=
  "

<drop_dbproc_statement> ::=
  DROP DBPROC[EDURE] <dbproc_name>

<drop_definition> ::=
  DROP <column_name>,... [<cascade_option>] [RELEASE SPACE]
| DROP (<column_name>,...) [<cascade_option>] [RELEASE SPACE]
| DROP CONSTRAINT <constraint_name>
| DROP FOREIGN KEY <referential_constraint_name>
| DROP PRIMARY KEY

<drop_domain_statement> ::=
  DROP DOMAIN <domain_name>

<drop_function_statement> ::=
  DROP [PUBLIC] FUNCTION <dbfunction_name>

<drop_index_statement> ::=
  DROP INDEX <index_name> [ON <table_name>]

<drop_role_statement> ::=
  DROP ROLE <role_name>

<drop_schema_statement> ::=
  DROP SCHEMA <schema_name> [<cascade_option>]

<drop_sequence_statement> ::=
  DROP SEQUENCE [<schema_name>.]<sequence_name>

<drop_synonym_statement> ::=
  DROP [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>

<drop_system_trigger_statement> ::=
  DROP SYSTEM TRIGGER [<schema_name>.]<trigger_name>

<drop_table_statement> ::=
  DROP TABLE <table_name> [<cascade_option>]

<drop_table_temp> ::=
  DROP TABLE TEMP.<identifier>

<drop_trigger_statement> ::=
  DROP TRIGGER <trigger_name> OF <table_name>

<drop_user_statement> ::=
  DROP USER <user_name> [<cascade_option>]

<drop_usergroup_statement> ::=
  DROP USERGROUP <usergroup_name> [<cascade_option>]

<drop_view_statement> ::=
  DROP VIEW <table_name> [<cascade_option>]

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<equal_or_not> ::=
  <>
| =
| ~= <!  for computers with ASCII code  !>

<exists_predicate> ::=
  EXISTS <subquery>

<exists_table_statement> ::=
  EXISTS TABLE <table_name>

<explain_statement> ::=
  EXPLAIN [(<result_table_name>)] <query_statement>
| EXPLAIN [(<result_table_name>)] <single_select_statement>

<exponent> ::=
  [<sign>][[<digit>]<digit>]<digit>

<expression> ::=
  <term>
| <expression> + <term>
| <expression> - <term>
| (<expression>)
| -(<expression>)

<expression_list> ::=
  (<expression>,...)

<extended_expression> ::=
  <expression>
| DEFAULT
| STAMP

<extended_letter> ::=
  #
| @
| $

<extended_value_spec> ::=
  DEFAULT
| STAMP
| <value_spec>

<extraction_function> ::=
  DATE        (<expression>)
| DAY         (<date_or_timestamp_expression>)
| HOUR        (<time_or_timestamp_expression>)
| MICROSECOND (<expression>)
| MINUTE      (<time_or_timestamp_expression>)
| MONTH       (<date_or_timestamp_expression>)
| SECOND      (<time_or_timestamp_expression>)
| TIME        (<expression>)
| TIMESTAMP   (<expression>[,<expression>])
| YEAR        (<date_or_timestamp_expression>)

<factor> ::=
  [sign] <value_spec>
| [sign] <column_spec>
| [sign] <function_spec>
| [sign] <set_function_spec>
| <scalar_subquery>
| <expression>

<fetch_statement> ::=
  FETCH [FIRST | LAST | NEXT | PREV | position | SAME] [<result_table_name>]
    INTO <parameter_spec>,...

<final_select> ::=
  <select_statement>

<first_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>

<first_password_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>
| <digit>

<fixed_point_literal> ::=
  [<sign>]<digit_sequence>[.<digit_sequence>]
| [<sign>]<digit_sequence>
| [<sign>].<digit_sequence>

<floating_point_literal> ::=
  <mantissa>E<exponent>
| <mantissa>E<exponent>

<formal_parameter> ::=
  IN <argument> <data_type>
| OUT <argument> <data_type>
| INOUT <argument> <data_type>

<formal_parameter1> ::=
  <argument1> <data_type>

<from_clause> ::=
  FROM <from_table_spec>,...

<from_table_spec> ::=
  <table_name> [AS][<reference_name>]
| <result_table_name> [AS][<reference_name>]
| (<query_expression>) [AS][<reference_name>]
| <joined_table>
| (<from_table_spec>,...)

<function_spec> ::=
  <arithmetic_function>
| <conversion_function>
| <date_function>
| <dbfunction_call>
| <extraction_function>
| <special_function>
| <string_function>
| <time_function>
| <trigonometric_function>

<grant_statement> ::=
  GRANT <priv_spec>,... TO <grantee>,... [WITH GRANT OPTION]
| GRANT <schema_priv_spec> TO <grantee>,...
| GRANT EXECUTE ON <dbproc_name> TO <grantee>,...
| GRANT EXECUTE ON <dbfunction_name> TO <grantee>,...
| GRANT SELECT ON <sequence_name> TO <grantee>,... [WITH GRANT OPTION]

<grant_user_statement> ::=
  GRANT USER <granted_users> [FROM <user_name>] TO <user_name>

<grant_usergroup_statement> ::=
  GRANT USERGROUP <granted_usergroups> [FROM <user_name>] TO <user_name>

<granted_usergroups> ::=
  <usergroup_name>,...
| *

<granted_users> ::=
  <user_name>,...
| *

<grantee> ::=
  <user_name>
| <usergroup_name>
| <role_name>
| PUBLIC

<group_clause> ::=
  GROUP BY <expression>,...

<having_clause> ::=
  HAVING <search_condition>

<hex_digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
| A | B | C | D | E | F
| a | b | c | d | e | f

<hex_digit_seq> ::=
  <hex_digit><hex_digit>
| <hex_digit_seq><hex_digit><hex_digit>

<hex_literal> ::=
  x''
| X''
| x'<hex_digit_seq>'
| X'<hex_digit_seq>'

<hours> ::=
  <expression>

<identifier> ::=
  <simple_identifier>
| <double_quotes><special_identifier><double_quotes>

<identifier_tail_character> ::=
  <digit>
| <letter>
| <extended_letter>
| <language_specific_character>
| <underscore>

<if_statement> ::=
  IF <search_condition> THEN <statement> [ELSE <statement>]

<in_predicate> ::=
  <expression> [NOT] IN <subquery>
| <expression> [NOT] IN <expression_list>
| <expression_list> [NOT] IN <subquery>
| <expression_list> [NOT] IN (<expression_list>,...)

<index_column_name> ::=
  <column_name> [ASC|DESC]

<index_name> ::=
  <identifier>

<index_spec> ::=
  <index_column_name>,...
| <dbfunction_name> (<column_name>,...) [ASC|DESC]

<indicator_name> ::=
  <parameter_name>

<initial_select> ::=
  <query_spec>

<inner_transaction_statement> ::=
  INNER TRANSACTION BEGIN
| INNER TRANSACTION COMMIT
| INNER TRANSACTION ROLLBACK

<insert_expression> ::=
  <extended_expression>
| <subquery>

<insert_statement> ::=
  INSERT [INTO] <table_name>
    [(<column_name>,...)]
    VALUES (<insert_expression>,...)
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
| INSERT [INTO] <table_name>
    [(<column_name>,...)]
    <query_expression>
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
| INSERT [INTO] <table_name> SET <set_insert_clause>,...
    [duplicates_clause]
    [IGNORE TRIGGER]
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>

<integer> ::=
  [<sign>]<unsigned_integer>

<internal_oracle> ::=
  INTERNAL
| ORACLE

<join_predicate> ::=
  <expression> [<outer_join_indicator>] <comp_op> <expression> [<outer_join_indicator>]

<join_spec> ::=
  ON <search_condition>

<joined_table> ::=
  <from_table_spec> CROSS JOIN <from_table_spec>
| <from_table_spec> [INNER] JOIN <from_table_spec> <join_spec>
| <from_table_spec> [LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER]] JOIN
    <from_table_spec> <join_spec>

<key_definition> ::=
  PRIMARY KEY (<column_name>,...)

<key_or_not_null_spec> ::=
  [PRIMARY] KEY
| NOT NULL [WITH DEFAULT]

<key_spec> ::=
  <column_name> = <value_spec>

<keyword> ::=
  <not_reserved_keyword>
| <reserved_keyword>

<language_specific_character> ::=
<!  <every letter that occurs in a Northern, Central,
    or Southern European language and is not included in the <letter> list>
  | <for UNICODE-enabled databases: every character that is not included
    in the ASCII code list from 0 to 127>
!>

<letter> ::=
  A | B | C | D | E | F | G | H | I | J | K | L | M
| N | O | P | Q | R | S | T | U | V | W | X | Y | Z
| a | b | c | d | e | f | g | h | i | j | k | l | m
| n | o | p | q | r | s | t | u | v | w | x | y | z

<like_expression> ::=
  <expression>
| '<pattern_element>...'

<like_predicate> ::=
  <expression> [NOT] LIKE <like_expression> [ESCAPE <expression>]

<limit_clause> ::=
  LIMIT <row_count>
| LIMIT <offset>,<row_count>

<literal> ::=
  <string_literal>
| <numeric_literal>

<local_variable> ::=
  <variable_name> <routine_data_type>

<local_variable_list> ::=
  <local_variable>
| <local_variable_list>;<local_variable>

<local_variables> ::=
  VAR <local_variable_list>;

<lock_option> ::=
  WITH LOCK [(IGNORE)|(NOWAIT)] [EXCLUSIVE | OPTIMISTIC] [ISOLATION LEVEL <unsigned_integer>]

<lock_spec> ::=
  TABLE <table_name>,...
| <row_spec> ...
| TABLE <table_name>,... <row_spec> ...

<lock_statement> ::=
  LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN EXCLUSIVE MODE
| LOCK [(WAIT)|(NOWAIT)] <row_spec> ... OPTIMISTIC
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE <lock_spec> IN EXCLUSIVE MODE

<mantissa> ::=
  <fixed_point_literal>

<mapchar_set_name> ::=
  <identifier>

<match_char> ::=
<!  every character except
    %
  | X'1F'
  | <underscore>
  | X'1E'
!>

<match_set> ::=
  <underscore>
| X'1E'
| <match_char>

<match_string> ::=
  %
| X'1F'

<minutes> ::=
  <expression>

<modify_column_definition> ::=
  <column_name> <data_type> <column_attributes>
| <column_name> <data_type>
| <column_name> <column_attributes>

<modify_definition> ::=
  MODIFY (<modify_column_definition>,...)

<monitor_statement> ::=
  MONITOR INIT

<new_index_name> ::=
  <index_name>

<new_password> ::=
  <password>

<new_schema_name> ::=
  <schema_name>

<new_synonym_name> ::=
  <synonym_name>

<new_table_name> ::=
  <table_name>

<new_user_name> ::=
  <user_name>

<new_usergroup_name> ::=
  <usergroup_name>

<next_stamp_statement> ::=
  NEXT STAMP [INTO] <parameter_name>

<not_reserved_keyword> ::=
<!  <table_with_not_reserved_keywords>  !>

<null_predicate> ::=
  <expression> IS [NOT] NULL

<numeric_literal> ::=
  <fixed_point_literal>
| <floating_point_literal>

<object_spec> ::=
  COLUMN <table_name>.<column_name>
| DBPROC[EDURE] <dbproc_name>
| DOMAIN <domain_name>
| FOREIGN KEY <table_name>.<referential_constraint_name>
| INDEX <index_name> ON <table_name>
| SEQUENCE <sequence_name>
| [PUBLIC] SYNONYM <synonym_name>
| TABLE <table_name>
| TRIGGER <trigger_name>.<table_name>
| USER <user_name>
| USERGROUP <usergroup_name>
| <parameter_name>

<offset> ::=
  <unsigend_integer>
| <parameter_name>

<old_index_name> ::=
  <index_name>

<old_password> ::=
  <password>

<old_synonym_name> ::=
  <synonym_name>

<old_table_name> ::=
  <table_name>

<order_clause> ::=
  ORDER BY <sort_spec>,...

<outer_join_indicator> ::=
  (+) <!  This SQL clause is
          no longer recommended to be used
          and might be removed from future versions.  !>

<parameter_name> ::=
  :<identifier>
| ?

<parameter_spec> ::=
  <parameter_name> [<indicator_name>]

<password> ::=
  <identifier>
| <first_password_character>[<identifier_tail_character>...]

<pattern_element> ::=
  <match_string>
| <match_set>

<position> ::=
  POS (<unsigned_integer>)
| POS (<parameter_spec>)
| ABSOLUTE <integer>
| ABSOLUTE <parameter_spec>
| RELATIVE <integer>
| RELATIVE <parameter_spec>

<predicate> ::=
  <between_predicate>
| <bool_predicate>
| <comparison_predicate>
| <default_predicate>
| <exists_predicate>
| <in_predicate>
| <join_predicate>
| <like_predicate>
| <null_predicate>
| <quantified_predicate>
| <rowno_predicate>
| <sound_predicate>

<priv_spec> ::=
  ALL [PRIV[ILEGES]] ON [TABLE] <table_name>,...
| <privilege>,...  ON [TABLE] <table_name>,...
| <role_name>

<privilege> ::=
  ALTER
| DELETE
| INDEX
| INSERT
| REFERENCES [(<column_name>,...)]
| SELECT [(<column_name>,...)]
| SELUPD [(<column_name>,...)]
| UPDATE [(<column_name>,...)]

<quantified_predicate> ::=
  <expression> <comp_op> <quantifier> <expression_list>
| <expression> <comp_op> <quantifier> <subquery>
| <expression_list> <equal_or_not> <quantifier> (<expression_list>,...)
| <expression_list> <equal_or_not> <quantifier> <subquery>

<quantifier> ::=
  ALL
| SOME
| ANY

<query_expression> ::=
  <query_term>
| <query_expression> UNION [ALL] <query_term>
| <query_expression> EXCEPT [ALL] <query_term>

<query_primary> ::=
  <query_spec>
| (<query_expression>)

<query_spec> ::=
  SELECT [<distinct_spec>] [<top_spec>] <select_column>,... <table_expression>

<query_statement> ::=
  <declare_cursor_statement>
| <recursive_declare_cursor_statement>
| <select_statement>

<query_term> ::=
  <query_primary>
| <query_term> INTERSECT [ALL] <query_primary>

<recursive_declare_cursor_statement> ::=
  DECLARE <result_table_name> CURSOR FOR WITH RECURSIVE <reference_name> (<alias_name>,...)
    AS (<initial_select> UNION ALL <recursive_select>) <final_select>

<recursive_select> ::=
  <query_spec>

<reference_name> ::=
  <identifier>

<referenced_column> ::=
  <column_name>

<referenced_table> ::=
  <table_name>

<referencing_column> ::=
  <column_name>

<referential_constraint_definition> ::=
  FOREIGN KEY [<referential_constraint_name>] (<referencing_column>,...)
    REFERENCES <referenced_table> [(<referenced_column>,...)] [<delete_rule>]

<referential_constraint_name> ::=
  <identifier>

<regular_token> ::=
  <literal>
| <keyword>
| <identifier>
| <parameter_name>

<release_savepoint_statement> ::=
  RELEASE SAVEPOINT <sql_savepoint_name>

<release_statement> ::=
  COMMIT [WORK] RELEASE
| ROLLBACK [WORK] RELEASE

<rename_column_statement> ::=
  RENAME COLUMN <table_name>.<column_name> TO <column_name>

<rename_index_statement> ::=
  RENAME INDEX <old_index_name> [ON <table_name>] TO <new_index_name>

<rename_schema_statement> ::=
  RENAME SCHEMA <schema_name> TO <new_schema_name>

<rename_synonym_statement> ::=
  RENAME [PUBLIC] SYNONYM <old_synonym_name> TO <new_synonym_name>

<rename_table_statement> ::=
  RENAME TABLE <old_table_name> TO <new_table_name>

<rename_user_statement> ::=
  RENAME USER <user_name> TO <new_user_name>

<rename_usergroup_statement> ::=
  RENAME USERGROUP <usergroup_name> TO <new_usergroup_name>

<rename_view_statement> ::=
  RENAME VIEW <old_table_name> TO <new_table_name>

<reserved_keyword> ::=
<!  <table_with_reserved_keywords>  !>

<result_column_name> ::=
  <identifier>

<result_expression> ::=
  <expression>

<result_table_name> ::=
  <identifier>

<revoke_statement> ::=
  REVOKE <priv_spec>,... FROM <grantee>,... [<cascade_option>]
| REVOKE <schema_priv_spec> FROM <grantee>,...
| REVOKE EXECUTE ON <dbproc_name> FROM <grantee>,...
| REVOKE EXECUTE ON <dbfunction_name> FROM <grantee>,...
| REVOKE SELECT ON <sequence_name> FROM <grantee>,... [<cascade_option>]

<role_name> ::=
  <identifier>

<rollback_statement> ::=
  ROLLBACK [WORK]

<rollback_to_statement> ::=
  ROLLBACK TO [SAVEPOINT] <sql_savepoint_name>

<routine> ::=
  [<local_variables>] <statement_list>;

<routine_data_type> ::=
  <data_type>
| CURSOR
| PREPAREDSTATEMENT

<routine_sql_statement> ::=
  <call_statement>
| <close_statement>
| <create_table_temp>
| <declare_cursor_statement>
| <delete_statement>
| <drop_table_temp>
| <fetch_statement>
| <insert_statement>
| <lock_statement>
| <recursive_declare_cursor_statement>
| <select_statement>
| <single_select_statement>
| <subtrans_statement>
| <unlock_statement>
| <update_statement>

<row_count> ::=
  <unsigned_integer>
| <parameter_name>

<row_spec> ::=
  ROW <table_name> KEY <key_spec>,...
| ROW <table_name> CURRENT OF <result_table_name>

<rowno_column> ::=
  ROWNO [[AS] <result_column_name>]

<rowno_predicate> ::=
  ROWNO <unsigned_integer>
| ROWNO <parameter_spec>
| ROWNO = <unsigned_integer>
| ROWNO = <parameter_spec>

<sample_definition> ::=
  SAMPLE <unsigned_integer> ROWS
| SAMPLE <unsigned_integer> PERCENT

<savepoint_statement> ::=
  SAVEPOINT <sql_savepoint_name>

<scalar_subquery> ::=
  <subquery>

<schema_authorization_identifier> ::=
  <identifier>

<schema_element> ::=
  <create_table_statement>
| <create_view_statement>
| <create_dbproc_statement>
| <create_function_statement>
| <create_sequence_statement>

<schema_name> ::=
  <identifier>

<schema_name_clause> ::=
  <schema_name>
| <schema_name> AUTHORIZATION <schema_authorization_identifier>

<schema_priv_spec> ::=
  <schema_privilege> ON <schema_name>,...

<schema_privilege> ::=
  CREATEIN
| DROPIN

<search_and_result_spec> ::=
  <search_expression>,<result_expression>

<search_condition> ::=
  <boolean_term>
| <search_condition> OR <boolean_term>

<search_expression> ::=
  <expression>

<searched_case_function> ::=
  WHEN <search_condition>
    THEN <result_expression>
      [...]
    [ELSE <default_expression>]
  END

<searched_case_statement> ::=
  CASE
    <searched_case_when_clause> ...
    [<case_else_clause>]
  END [CASE]

<searched_case_when_clause> ::=
  WHEN <search_condition> THEN statement;

<seconds> ::=
  <expression>

<select_column> ::=
  <table_columns>
| <derived_column>
| <rowno_column>
| <stamp_column>

<select_statement> ::=
  <query_expression> [<order_clause>] [<limit_clause>] [<update_clause>]
    [<lock_option>] [FOR REUSE]

<sequence_name> ::=
  <identifier>

<set_function_name> ::=
  AVG
| COUNT
| MAX
| MIN
| STDDEV
| SUM
| VARIANCE

<set_function_spec> ::=
  COUNT (*)
| <all_function>
| <distinct_function>

<set_insert_clause> ::=
  <column_name> = <extended_value_spec>

<set_statement> ::=
  SET ROLE ALL [EXCEPT <role_name>,...]
| SET ROLE NONE
| SET ROLE <role_name>,... [IDENTIFIED BY <password>]
| SET ISOLATION LEVEL <unsigned_integer>
| SET CURRENT_SCHEMA = <schema_name>

<set_update_clause> ::=
  <column_name> = <extended_expression>
| <column_name>,... = (<extended_expression>,...)
| (<column_name>,...) = (<extended_expression>,...)
| <column_name> = <subquery>
| (<column_name>,...) = <subquery>

<sign> ::=
  +
| -

<simple_case_function> ::=
  CASE <check_expression>
    WHEN <search_expression> THEN <result_expression>
      [...]
    [ELSE <default_expression>]
  END

<simple_case_statement> ::=
  CASE <expression>
    <simple_case_when_clause> ...
    [<case_else_clause>]
  END [CASE]

<simple_case_when_clause> ::=
  WHEN <literal>[, ...] THEN <statement>;

<simple_identifier> ::=
  <first_character>[<identifier_tail_character>...]

<single_select_statement> ::=
  SELECT [<distinct_spec>] <select_column>,... INTO <parameter_spec>,...
    FROM <from_table_spec>,... [<where_clause>] [<group_clause>]
    [<having_clause>] [<lock_option>]

<sort_spec> ::=
  <unsigned_integer> [ASC | DESC]
| <expression> [ASC | DESC]

<sound_predicate> ::=
  <expression> [NOT] SOUNDS [LIKE] <expression>

<source_user> ::=
  <user_name>

<special_character> ::=
<!  every character except
    <digit>
  | <letter>
  | <extended_letter>
  | <hex_digit>
  | <language_specific_character>
  | <!  character for the end of a line in a file  !>
!>

<special_function> ::=
  <case_function>
| DECODE (<check_expression>,<search_and_result_spec>,...[,<default_expression>])
| GREATEST (<expression>,<expression>,...)
| LEAST (<expression>,<expression>,...)
| VALUE (<expression>,<expression>,...)

<special_identifier> ::=
  <special_identifier_character>...

<special_identifier_character> ::=
<!  any character  !>

<sql_comment> ::=
  /*<sql_comment_text>*/
| --<sql_comment_text>

<sql_comment_text> ::=
<!  comment text  !>

<sql_savepoint_name> ::=
  <identifier>

<sql_statement> ::=
  <alter_index_statement>
| <alter_password_statement>
| <alter_table_statement>
| <alter_user_statement>
| <alter_usergroup_statement>
| <call_statement>
| <close_statement>
| <comment_on_statement>
| <commit_statement>
| <connect_statement>
| <create_dbproc_statement>
| <create_domain_statement>
| <create_function_statement>
| <create_index_statement>
| <create_role_statement>
| <create_schema_statement>
| <create_sequence_statement>
| <create_synonym_statement>
| <create_system_trigger_statement>
| <create_table_statement>
| <create_trigger_statement>
| <create_user_statemen>t
| <create_usergroup_statement>
| <create_view_statement>
| <delete_statement>
| <drop_dbproc_statement>
| <drop_domain_statement>
| <drop_function_statement>
| <drop_index_statement>
| <drop_role_statement>
| <drop_schema_statement>
| <drop_sequence_statement>
| <drop_synonym_statement>
| <drop_system_trigger_statement>
| <drop_table_statement>
| <drop_trigger_statement>
| <drop_user_statement>
| <drop_usergroup_statement>
| <drop_view_statement>
| <exists_table_statement>
| <explain_statement>
| <fetch_statement>
| <grant_statement>
| <grant_user_statement>
| <grant_usergroup_statement>
| <inner_transaction_statement>
| <insert_statemen>t
| <lock_statement>
| <monitor_statement>
| <next_stamp_statement>
| <query_statement>
| <release_statement>
| <rename_column_statement>
| <rename_index_statement>
| <rename_schema_statement>
| <rename_synonym_statement>
| <rename_table_statement>
| <rename_user_statement>
| <rename_usergroup_statement>
| <rename_view_statement>
| <revoke_statement>
| <rollback_statement>
| <rollback_to_statement>
| <savepoint_statement>
| <set_statement>
| <single_select_statement>
| <subtrans_statement>
| <unlock_statement>
| <update_statement>
| <update_statistics_statement>

<stamp_column> ::=
  STAMP [ [AS] <result_column_name>]

<statement> ::=
  BEGIN <statement_list> END
| BREAK
| CONTINUE
| CONTINUE EXECUTE
| EXECUTE <expression>
| <if_statement>
| <while_statement>
| <assignment_statement>
| <case_statement>
| OPEN :<local_variable> FOR <select_statement>
| PREPARE <local_variable> FOR <expression>
| RETURN [<expression>]
| STOP (<expression> [,<expression>])
| TRY <statement_list>; CATCH <statement>
| <routine_sql_statement>

<statement_list> ::=
  <statement>
| <statement_list> ; <statement>

<string_function> ::=
  ALPHA(<string_spec>[,<unsigned_integer>])
| ASCII(<string_spec>)
| CONCAT(<string_spec>,<string_spec>)
| EXPAND(<string_spec>,<unsigned_integer>)
| GET_OBJECTNAME (<string_literal>)
| GET_SCHEMA(<string_literal>)
| INITCAP(<string_spec>)
| LFILL(<string_spec>,<string_literal>[,<unsigned_integer>])
| LOWER(<string_spec>)
| LPAD(<string_spec>,<expression>,<string_literal>[,<unsigned_integer>])
| LTRIM(<string_spec>[,<string_spec>])
| MAPCHAR(<string_spec>[,<unsigned_integer>][,<mapchar_set_name>])
| REPLACE(<string_spec>,<string_spec>[,<string_spec>])
| RFILL(<string_spec>,<string_literal>[,<unsigned_integer>])
| RPAD(<string_spec>,<expression>,<string_literal>[,<unsigned_integer>])
| RTRIM(<string_spec>[,<string_spec>])
| SOUNDEX(<string_spec>)
| SQLMODE()
| SUBSTR(<string_spec>,<expression>[,<expression>])
| TRANSLATE(<string_spec>,<string_spec>,<string_spec>)
| TRIM(<string_spec>[,<string_spec>])
| UPPER(<string_spec>)
| <string_spec> || <string_spec>
| <string_spec> & <string_spec>

<string_literal> ::=
  ''
| '<character>...'
| <hex_literal>

<string_spec> ::=
  <expression>

<subquery> ::=
  (<query_expression>)

<subtrans_statement> ::=
  SUBTRANS BEGIN
| SUBTRANS END
| SUBTRANS ROLLBACK

<synonym_name> ::=
  <identifier>

<table_columns> ::=
  *
| <table_name>.*
| <reference_name>.*

<table_description_element> ::=
  <column_definition>
| <constraint_definition>
| <referential_constraint_definition>
| <key_definition>
| <unique_definition>

<table_expression> ::=
  <from_clause> [<where_clause>] [<group_clause>] [<having_clause>]

<table_name> ::=
  [<schema_name>.]<identifier>

<term> ::=
  <factor>
| <term> * <factor>
| <term> / <factor>
| <term> DIV <factor>
| <term> MOD <factor>

<time_expression> ::=
  <expression>

<time_function> ::=
  ADDTIME  (<time_or_timestamp_expression>,<time_expression>)
| MAKETIME (<hours>,<minutes>,<seconds>)
| SUBTIME  (<time_or_timestamp_expression>,<time_expression>)
| TIMEDIFF (<time_or_timestamp_expression>,<time_or_timestamp_expression>)

<time_or_timestamp_expression> ::=
  <expression>

<token> ::=
  <regular_token>
| <delimiter_token>

<top_spec> ::=
  TOP <unsigned_integer>
| TOP <parameter_name>

<trigger_event> ::=
  INSERT
| UPDATE [(<column_list>)]
| DELETE

<trigger_name> ::=
  <identifier>

<trigonometric_function> ::=
  COS     (<expression>)
| SIN     (<expression>)
| TAN     (<expression>)
| COT     (<expression>)
| COSH    (<expression>)
| SINH    (<expression>)
| TANH    (<expression>)
| ACOS    (<expression>)
| ASIN    (<expression>)
| ATAN    (<expression>)
| ATAN2   (<expression>,<expression>)
| RADIANS (<expression>)
| DEGREES (<expression>)

<underscore> ::=
  _

<unique_definition> ::=
  [CONSTRAINT <index_name>] UNIQUE (<column_name>,...)

<unlock_statement> ::=
  UNLOCK <row_spec> ... IN SHARE MODE
| UNLOCK <row_spec> ... IN EXCLUSIVE MODE
| UNLOCK <row_spec> ... IN SHARE MODE <row_spec> ... IN EXCLUSIVE MODE
| UNLOCK <row_spec> ... OPTIMISTIC

<unsigned_integer> ::=
  <numeric_literal>

<update_clause> ::=
  FOR UPDATE [OF <column_name>,...] [NOWAIT]

<update_statement> ::=
  UPDATE [OF] <table_name>
    [<reference_name>]
    SET <set_update_clause>,...
    [KEY <key_spec>,...] <!  This SQL clause is
          no longer recommended to be used
          and might be removed from future versions.  !>
    [WHERE <search_condition>]
    [NOWAIT]
    [IGNORE TRIGGER]
| UPDATE [OF] <table_name>
    [<reference_name>]
    SET <set_update_clause>,...
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
| UPDATE [OF] <table_name>
    [<reference_name>]
    (<column_name>,...)
    VALUES (<extended_value_spec>,...)
    [KEY <key_spec>,...]
    [WHERE search_condition]
    [NOWAIT]
    [IGNORE TRIGGER]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>
| UPDATE [OF] <table_name>
    [<reference_name>]
    (<column_name>,...)
    VALUES (<extended_value_spec>,...)
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>

<update_statistics_statement> ::=
  UPDATE STAT[ISTICS] COLUMN <table_name>.<column_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] COLUMN (<column_name>,...) FOR <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] COLUMN (*) FOR <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] <table_name> [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] [<schema_name>.][<identifier>]* [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] AS PER SYSTEM TABLE [ESTIMATE [<sample_definition>]

<user_mode> ::=
  DBA
| RESOURCE
| STANDARD

<user_name> ::=
  <identifier>

<usergroup_mode> ::=
  RESOURCE
| STANDARD

<usergroup_name> ::=
  <identifier>

<value_spec> ::=
  <literal>
| <parameter_spec>
| NULL
| USER
| USERGROUP
| SYSDBA
| CURRENT_SCHEMA
| UID
| [<schema_name>.]<sequence_name>.NEXTVAL
| [<schema_name>.]<sequence_name>.CURRVAL
| <table_name>.CURRVAL
| DATE
| TIME
| TIMESTAMP
| UTCDATE
| TIMEZONE
| UTCDIFF
| TRUE
| FALSE
| TRANSACTION

<variable_name> ::=
  <identifier>

<vertical_slash> ::=
  |

<where_clause> ::=
  WHERE <search_condition>

<while_statement> ::=
  WHILE <search_condition> DO <statement>
End of the code.


Database Fill Level - SAP Documentation

Procedure documentation Database Fill Level

The Space user menu of the DBA Cockpit gives you, among other things, a display of the database fill level history of your database. You can only use the display for the basis database of the SAP system.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Space [image] DB Fill Level [image] .

Caution Caution

For SAP NetWeaver 7.1, use the database assistant to call the Database Fill Level display.

End of the caution.

Result

The system displays the following: History of the DB fill level for the data area and log area.

You receive information about the fill level of the database for the previous four weeks. You can set this output time frame. A collector logs the fill level of the data area and of the log area of the database once a day, so that you can monitor the growth of the data over a specified period. You can display these statistics in a graphic.

Deleting Statistics Data

Deleting statistics data can be done manually by specifying a time period/date or automatically by specifying a time period (in weeks).

More Information

Database Administration in CCMS, Monitoring the Data Area, Monitoring the Log Area


-25216: File option FWV required - SAP Documentation

Background documentation -25216: File option FWV required

Explanation

The command to export or import data contains an error.The INTEGER, REAL, DECIMAL, and ZONED formats for individual columns to be loaded or unloaded are only allowed if the format FWV is selected for the data stream.

User Response

Correct the format and re-execute the command.


Displaying Information About Tasks - SAP Documentation

Procedure documentation Displaying Information About Tasks

Prerequisites

You are logged on to the database as the database system administrator.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Task Manager tab page.

    The running tasks are displayed.

    Task Types

    Name

    Description

    Database Analyzer task

    Tasks for Database Analyzer

    Database Analyzer tasks are taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter. More information: Support Parameter

    Event task

    Tasks for events

    Event tasks are also taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter.

    Floating Service task

    Database Analyzer and Event tasks are taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter.

    Idle task

    Used for internal task scheduling

    Log Writer

    Log Writers write log entries from the log queue to the log area, for example after a COMMIT or during a savepoint.

    There is a log writer for each log partition. More information: Log Area

    You define the maximum number of log writers with the special database parameter MaxLogWriterTasks. More information: Special Database Parameters

    Pager (formerly Data Writer)

    Pagers write the data from the data cache to the data volumes at each savepoint. Writing a savepoint can take a long time for a large data cache. If necessary, Pagers also become active between savepoints, to write the changed data asynchronously.

    During a restart of the database, Pagers read the converter pages from the data volumes into the converter.

    The system calculates the number of Pagers required. It is primarily dependent on the size of the data cache and the number of data volumes.

    Server task

    Server tasks parallelize database functions. They are required, for example, to back up data and log entries, create indexes and to permanently delete tables. During a restart of the database, Server tasks import log entries and process transactions in parallel.

    You can configure the number of Server tasks that are available using the MaxServerTasks special database parameter.

    Server tasks can have special names that reflect how they are used, for example Savepoint, BackupMedium, BackupVolume, AutosaveCoordinator, AutosaveMedium.

    Timer task

    The Timer task is responsible for time-outs of SQL lock requests and checks whether log entries can be backed up.

    Trace Writer task

    The Trace Writer task writes the trace entries in the working memory when the database trace is switched on.

    User task

    User tasks execute SQL statements.

    When a database user opens a database session, the database system assigns one User task to this database user.

    User tasks create the main load for the processor.

    You can configure the number of available User tasks using the special database parameter MaxUserTasks.

    Utility task

    The Utility task performs administration tasks.
    Task States

    Old Name

    New Name

    (as of software version 7.7.03.15 )

    Description

    AsynClose

    Stream Close

    Task is closing I/O ports after backup or restore.

    AsynCntl

    -

    Task is determining parameters or initializing a backup device.

    AsynIO

    Stream IO

    Task is executing I/O operation (during backup or restore).

    -

    Stream Init

    Task is initializing backup or restore operation.

    AsynOpen

    Stream Open

    Task is opening I/O ports for backup or restore.

    AsynWaitRead/Write

    Stream Wait(R)/(W)

    Task is waiting for the end of an I/O operation during backup or restore (W: Write, R: Read).

    Command reply

    Command reply

    Task is sending the result of a request to the application.

    Command wait

    Command wait

    Database session without a request.

    Connect wait

    Connect wait

    Task is already running and waiting for the database session to be created.

    Continue

    Continue

    Tasks is in the process of releasing another task from the Stopped state.

    DcomObjCalled

    LCApp Called

    Task is executing an SAP liveCache application routine.

    Inactive

    Inactive

    Task is free (not linked) and cannot run. The task does not have a stack.

    InsertEvent

    Insert Event

    Task is generating an event.

    -

    IO CPort Wait

    Task is waiting for an RTE Completion Port.

    -

    IO Job Execute

    Task is executing an I/O job.

    -

    IO Job Wait

    Task is waiting for the end of an I/O job.

    IO wait (W/R)

    IO wait (W/R)

    Task is waiting for the result of an I/O operation (W: Write, R: Read).

    Locked

    Locked

    Task was locked as the kernel was shut down (to avoid this task being rescheduled).

    Mark for Start

    Startable

    Task is free (not linked) and cannot run. The task already has a stack (system has already allocated all resources) and is waiting for the start.

    RescheduleMsec

    RescheduleMsec

    Short-term wait situation, task will run again automatically after a predefined time span (in microseconds).

    Runnable

    ShareLck Yield

    Task can run now, but has been displaced due to long runtime or priority of another task.

    Runnable

    ExclLock Yield

    Task can run now, but has been displaced due to long runtime or priority of another task.

    Running

    Running

    Task is running, using CPU.

    Spinlock loop

    Spinlock Loop

    Task is trying to obtain a spinlock.

    SpinlockYield

    Spinlock Yield

    Task gives up control voluntarily. This situation occurs when the task has just tried to obtain a spinlock but without success.

    Stopped

    Stopped

    Task was stopped by the kernel and is waiting to run again.

    Terminated

    Terminated

    Task or database session was ended.

    UNKNOWN

    UNKNOWN

    Task state is unknown.

    Vattach

    Volume Attach

    Task is opening I/O ports (volumes, normal operation).

    Vbegexcl

    Enter ExclLock

    Task is waiting to be allowed to enter a protected area exclusively.

    Vdetach

    Volume Detach

    Task is closing I/O ports (volumes).

    Vdevsize

    -

    Task is determining the size of a volume or formatting a volume.

    Vdualvectorio

    Dual Vector IO

    Task is performing a vector I/O operation (read or write) on two volumes in parallel.

    vdiaginit

    Trace init

    Task is initializing the trace volume.

    Vendexcl

    Leave ExclLock

    Task is leaving a protected area.

    VenterRWRegion

    Enter ShareLck

    Task is waiting to be allowed to enter a conditionally shared area.

    Vfclose

    File Close

    Task is closing a file.

    Vfopen

    File Open

    Task is opening a file.

    Vfwrite

    File Write

    Task is writing to a file.

    VleaveRWRegion

    Leave ShareLck

    Task is exiting a protected, conditionally shared area.

    -

    VolumeFormatW

    Task is waiting for a volume to be formatted.

    Vopmsg

    Message Output

    Task is writing a message to one of the following database files: knldiag, knldiag.err, opmsg[n]

    Vrelease

    Connect Close

    Task is ending the database session.

    Vshutdown

    DB OFFLINE

    Task is changing the operational state of the database from ONLINE to OFFLINE.

    Vsleep

    Sleeping

    Short-term wait situation, task will run again automatically after a predefined time span.

    Vsuspend

    Suspend

    Task is suspended and waiting to be awoken explicitly by another task (Vresume).

    There are special Vsuspend wait situations that are displayed under a specific name.

    More information: Vsuspend Task States table

    Vvectorio

    Vector IO

    Task is executing a vector I/O operation (read or write).

    -

    Volume Format

    Task is formatting volume(s).

    -

    IOComPort Wait

    Task is waiting for an I/O order confirmation from the I/O completion port.

    -

    Aborting

    Task is exiting the database session.

    Yielding

    -

    Task gives up control voluntarily.

    -

    Initialized

    Task was initialized.

    WaitForEvent

    Wait For Event

    Task is waiting for an event.

  4. You can show and hide tasks according to the following criteria:

    • Active: running tasks

    • Runnable: tasks that could run

    • User: user tasks

    • System: all tasks other than user tasks

    • All: all tasks

  5. To display further information about a task, select the task and choose Details for Tasks underneath the task overview.

Time Measurement

In the task overview, you can also activate or deactivate the database-internal time measurement of database activities.

Caution Caution

Only activate time measurement when asked to do so by support.

Time measurement has a negative impact on the performance of your system.

End of the caution.

If internal time measurement is active, the system collects detailed information about database activities (for example, the average response times of SQL statements or the duration of log I/O operations). This information is used, for example, by the Database Analyzer or XCONS.

More Information

  • Concepts of the Database System, Tasks

  • Database Analyzer

  • XCONS


Analyzing SQL Statements (EXPLAIN) - SAP Documentation

Procedure documentation Analyzing SQL Statements (EXPLAIN)

You can use the EXPLAIN statement to find out which search strategy the SQL Optimizer selected for an SQL statement in the database system.

Note Note

To select the best search strategy, the SQL Optimizer uses statistical table information. Refresh the statistical information regularly.

More information: Updating the SQL Optimizer Statistics

End of the note.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the necessary privileges for the tables you are accessing with the SQL statement.

    More information: SQL Reference Manual, Privileges: Overview

Procedure

  1. Choose SQL Editor in the context menu of the database user who is to execute the SQL statement.

  2. Enter the SQL statement.

    More information: Entering and Executing SQL Statements

  3. To analyze the SQL statement, choose Explain SQL in the context menu of the SQL editor.

Result

Structure of the EXPLAIN Result Table

Column

Description

Data Type

SCHEMANAME

Schema name/owner

CHAR(64)

TABLENAME

Table Name

CHAR(64)

COLUMN_OR_INDEX

Shows which key column, inverted column or index is used by the system for the strategy

CHAR(64)

STRATEGY

Shows which search strategy or strategies the system uses and whether the system generates a result table.

The system generates a result table when RESULT IS COPIED is contained in the last result line of the STRATEGY column.

More information: SQL Optimizer,

  • List of All Search Strategies

  • STRATEGY Column

CHAR(40)

PAGECOUNT

Cost determination result for the selected search strategy

This column shows which sizes are assumed for the tables or, in the case of certain strategies, for the indexes.

These sizes affect which search strategy is selected by the system.

To update the defined sizes, use the UPDATE STATISTICS statement or the relevant database tool function.

You can query the defined sizes by selecting the system table OPTIMIZERINFORMATION. You can query the current sizes of tables or indexes by selecting the TABLESTORAGEDETAILS and INDEXSTORAGEDETAILS system tables. When you discover substantial differences between the values in OPTIMIZERINFORMATION and TABLESTORAGEDETAILS, then execute the UPDATE STATISTICS statement for these tables.

If the system discovers during a search in a table that the values determined by the last UPDATE STATISTICS statement are extremely low, a row is entered in the SYSUPDSTATWANTED system table that contains the table name. In all other cases, rows are entered in this system table that describe columns in tables. The UPDATE STATISTICS statement should be executed for tables and table columns that are described in the SYSUPDSTATWANTED system table.

The last row contains the estimated SELECT cost value in the PAGECOUNT column. This estimated SELECT cost value forms the basis of the COSTLIMIT and COSTWARNING information in the SQL statements for creating and changing users (such as the CREATE USER and ALTER USER statements).

CHAR(10)

More Information

Configuring and Starting SQL Performance Monitoring

Analyzing SQL Performance Bottlenecks

SQL Optimizer,

  • How SQL Statements Are Processed

  • Analyzing Search Strategies Using the EXPLAIN Statement

SQL Reference Manual, EXPLAIN Statement (explain_statement)


-10221: Command info too long - SAP Documentation

Background documentation -10221: Command info too long

Explanation

Failed to call method SQLDBC_PreparedStatement::setCommandInfo, because the character string entered is too long. The maximum length permitted is 40 characters.

User Response

Check the length of the character string that was entered as the first parameter for the SQLDBC_PreparedStatement::setCommandInfo() method.


-8047: Password required - SAP Documentation

Background documentation -8047: Password required

Explanation

You tried to use a SET statement to activate a role which requires you to specify a password.

User Response

Repeat the SQL statement, specifying the password this time.


-24929: ERR_USRFRM - invalid user record format - SAP Documentation

Background documentation -24929: ERR_USRFRM - invalid user record format

Explanation

The DBM user data is inconsistent.

User Response

If you are migrating data, check that all the migration steps have been executed correctly. If the error persists, contact Support.


-24977: ERR_COMMAND - unknown command <command> - SAP Documentation

Background documentation -24977: ERR_COMMAND - unknown command <command>

Explanation

This particular DBM command was not recognized.

User Response

Enter a correct command. Bear case-sensitivity in mind.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-2020: Data buffer too small - SAP Documentation

Background documentation -2020: Data buffer too small

Explanation

There is currently no space available in the data cache. The execution of the SQL statement was canceled. The database system implicitly performs a SHUTDOWN

User Response

Restart the database with a larger data cache.


-10856: Invalid row array size 0 - SAP Documentation

Background documentation -10856: Invalid row array size 0

Explanation

The SQLDBC_PrepareStatement::setRowArraySize method that was called could not be executed, because 0 was entered as the size of the input array.Measurement commands that have parameters must always be bound to parameter arrays. All bound parameter arrays must have the same dimension and be above 0.

User Response

Define your parameters as arrays, and set the dimension of these arrays as RowArraySize.


-28533: Integer out of packed range - SAP Documentation

Background documentation -28533: Integer out of packed range

Explanation

An 8 byte integer value needs to be converted into a value with the type OmsTypePacked_8_3 that is outside the permitted range.

User Response

Contact Support.


-3024: Invalid numeric expression - SAP Documentation

Background documentation -3024: Invalid numeric expression

Explanation

Division by 0 does not belong to a selected column of the outermost QUERY specification.

User Response

Check whether this error can be prevented by suitable specifications (predicates).


-24970: ERR_XPNOMODIFY - parameter must not be modified - SAP Documentation

Background documentation -24970: ERR_XPNOMODIFY - parameter must not be modified

Explanation

The database parameter used cannot be modified.

User Response

Set the database parameter back to its initial value.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


Database Manager CLI - SAP Documentation

Background documentation Database Manager CLI

The Database Manager CLI database tool is used to administer database. The tool allows you to create, monitor, back up, and restore databases.

Database Manager CLI is a command line tool and is suited to both interactive operation and batch operation. It can be used on all operating systems supported by the database system.

Database Manager CLI is part of the SAP MaxDB software package. For more information about downloading the SAP MaxDB software and documentation, see the Glossary under Download.

You can use various Java to access the functions of Database Manager CLI. You can, for example, use DBM commands to create your own programs for managing your databases automatically.

Programming Interfaces
Programming Language | Module | Documentation
Java | powertoys.DBM | Java Manual

Features

How Database Manager CLI Works

Command Reference for Working with Database Manager CLI

Overview of All DBM Commands

More Information

Database Administration

Concepts of the Database System

Overview of the available documentation: Glossary, Documentation.


-24935: ERR_NOUSERS - no users found - SAP Documentation

Background documentation -24935: ERR_NOUSERS - no users found

Explanation

No user entries found.

User Response

Generate the required user entries with the DBM command db_create.


Time Stamp Specifications - SAP Documentation

Background documentation Time Stamp Specifications

You use this syntax rule to specify the data format of the plain text values in which TIMESTAMP columns are input and output. A time stamp consists of a date and time value and microseconds. This format only applies to the export or import Loader command in which it is specified. If a time stamp format is not specified in a command, either the Loader default or a value specified with the SET TIMESTAMP command is used. You use the SET TIMESTAMP command to specify the time format for all subsequent commands. In a Loader session, this applies until a new SET command is executed.

Structure

Syntax Syntax

  1. <set_timestamp_command> ::=
  SET TIME <standard_timestamp_mask>

<timestamp_spec> ::=
  TIME <standard_timestamp_mask>
| TIME '<free_mask_timestamp>'

<standard_timestamp_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.
<standard_timestamp_mask>
'YYYY' | Four-digit year format
'MM' | Two-digit month format (01–12)
'DD' | Two-digit day format (01–31)
'HH' | Two-digit hour format (0–24)
'MM' | Two-digit minute format (00-59)
'SS' | Two-digit second format (00-59)
'NNNNNN' | Six-digit microsecond format
Format | General Format | Example
EUR/JIS/USA | 'YYYY-MM-DD-HH.MM.SS.NNNNNN' | '2008-01-23-14.30.08.456234'
INTERNAL | 'YYYYMMDDHHMMSSNNNNNN' | '20080123143008456234'
ISO | 'YYYY-MM-DD HH:MM:SS.NNNNNN' | '2008-01-23 14:30:08.456234'

Years must have four digits. Months and days must have two digits. Hours, minutes, and seconds must have two digits. Microseconds can have any number of digits from 0 to 6.

<set_timestamp_command>

This setting of a standardized timestamp mask using the SET TIMESTAMP command applies to the entire Loader session as long as the time mask is not changed by another SET TIMESTAMP command.

<timestamp_spec>

You can change the current timestamp mask for individual commands by using the syntax element timestamp_spec to define the data format (field_format_spec).

TIMESTAMP <standard_timestamp_mask>

You use the standard_timestamp_mask to specify the format for plain text values in which TIMESTAMP columns are input and output (default value: INTERNAL).

TIMESTAMP '<free_mask_timestamp>'

You use any timestamp mask free_mask_timestamp to specify the format for plain text values in which TIMESTAMP columns are input and output.

Example

Example Example

EXPORT COLUMNS * FROM hotel.reservation

DATA OUTSTREAM 'reservation_csv.data'

  TIMESTAMP ISO

End of the example.

Standard time stamp mask ISO is specified.

Example Example

EXPORT COLUMNS * FROM hotel.reservation

DATA OUTSTREAM 'reservation_csv.data'

  TIMESTAMP 'YYYY-MM-DD-HH-MM-SS-NNNNNN'

Example of the content of the data stream:

"2008-11-15-13-14-12-987654"

End of the example.

Free mask YYYY-MM-DD-HH-MM-SS-NNNNNN is specified for time stamp information.

More Information

Date Specifications

Time Specifications

Loader Commands and SQL Statements


SAP Library - SAP MaxDB Security Guide

Start Level 1 Node: SAP MaxDB Security Guide SAP MaxDB Security Guide End Level 1 Node: SAP MaxDB Security Guide
Start Level 2 Node: Technical System Landscape Technical System Landscape End Level 2 Node: Technical System Landscape
Start Level 2 Node: User Administration and Authentication User Administration and Authentication End Level 2 Node: User Administration and Authentication
Start Level 3 Node: Changing Passwords of Standard Users Changing Passwords of Standard Users End Level 3 Node: Changing Passwords of Standard Users
Start Level 3 Node: Checking Log Files for Failed Logon Attempts Checking Log Files for Failed Logon Attempts End Level 3 Node: Checking Log Files for Failed Logon Attempts
Start Level 2 Node: Authorizations Authorizations End Level 2 Node: Authorizations
Start Level 3 Node: Defining Clear Authorizations for Users Defining Clear Authorizations for Users End Level 3 Node: Defining Clear Authorizations for Users
Start Level 2 Node: Network and Communication Security Network and Communication Security End Level 2 Node: Network and Communication Security
Start Level 3 Node: Securing Communication Channels Securing Communication Channels End Level 3 Node: Securing Communication Channels
Start Level 3 Node: Accessing Databases Behind a Firewall Accessing Databases Behind a Firewall End Level 3 Node: Accessing Databases Behind a Firewall
Start Level 3 Node: Using Web Tools Behind a Firewall Using Web Tools Behind a Firewall End Level 3 Node: Using Web Tools Behind a Firewall
Start Level 2 Node: Data Storage Security Data Storage Security End Level 2 Node: Data Storage Security
Start Level 3 Node: Changing Passwords of SAP Standard Operating System Users Changing Passwords of SAP Standard Operating System Users End Level 3 Node: Changing Passwords of SAP Standard Operating System Users
Start Level 3 Node: Restricting Access to Database Resources (Unix and Linux up to D Restricting Access to Database Resources (Unix and Linux up to D End Level 3 Node: Restricting Access to Database Resources (Unix and Linux up to D
Start Level 3 Node: Restricting Access to Database Resources (Microsoft Windows) Restricting Access to Database Resources (Microsoft Windows) End Level 3 Node: Restricting Access to Database Resources (Microsoft Windows)
Start Level 3 Node: Encrypting Backups Encrypting Backups End Level 3 Node: Encrypting Backups
Start Level 2 Node: Dispensable Functions with Impact on Security Dispensable Functions with Impact on Security End Level 2 Node: Dispensable Functions with Impact on Security
Start Level 3 Node: Switching Off the Global Listener and SAP MaxDB X Servers Switching Off the Global Listener and SAP MaxDB X Servers End Level 3 Node: Switching Off the Global Listener and SAP MaxDB X Servers
Start Level 3 Node: Starting the Global Listener Without NI Support (Unix and Linux) Starting the Global Listener Without NI Support (Unix and Linux) End Level 3 Node: Starting the Global Listener Without NI Support (Unix and Linux)
Start Level 3 Node: Removing Demo Data Removing Demo Data End Level 3 Node: Removing Demo Data
Start Level 2 Node: Other Security-Relevant Information Other Security-Relevant Information End Level 2 Node: Other Security-Relevant Information
Start Level 3 Node: Checking User Input in SQL Statements Checking User Input in SQL Statements End Level 3 Node: Checking User Input in SQL Statements
Start Level 2 Node: Trace and Log Files Trace and Log Files End Level 2 Node: Trace and Log Files
Start Level 3 Node: Restricting Access to Log Files Restricting Access to Log Files End Level 3 Node: Restricting Access to Log Files
Start Level 2 Node: Appendix Appendix End Level 2 Node: Appendix


-7012: More than one update row not allowed - SAP Documentation

Background documentation -7012: More than one update row not allowed

Explanation

An attempt was made to modify several rows using an UPDATE statement, whereby a new value was specified for a LOB column. This is not allowed.

User Response

Modify the UPDATE statement so that only one row is updated at a time, or do without the value modification for the LOB column.


-111: Incompatible incremental backup - SAP Documentation

Background documentation -111: Incompatible incremental backup

Explanation

The database version to be loaded is not the follow-up version of the current database state.

User Response

Choose the correct database version.


Wait Situations - SAP Documentation

Procedure documentation Wait Situations

In the SQL Locks user menu of the DBA Cockpit, you can find, among other things, a display of wait situations for exclusive locks (exclusive wait situations). Use this analysis in the following situation, for example: You have been monitoring tasks with the task state Vwait in the Task Manager for some time.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] SQL Locks [image] Wait Situations [image] .

Result

The system displays a list of all current wait situations for SQL locks in the database.

Note Note

Exclusive locks mean that other users cannot access the locked entry. These locks can significantly interfere with the performance of the SAP system and the database system.

End of the note.

When you encounter SQL locks, be sure to find out which application is causing the locks. Using the Appl. ID in the wait situations display, you can identify the SAP work process that is holding the lock. Using the Global Work Process Overview (transaction SM66), you can get additional information, such as the user and the report. More information can also be found using a bottleneck analysis.

More Information

You can also use options provided in the Database Console for further analysis.

Concepts of the Database System, Locks


Database Trigger - SAP Documentation

Background documentation Database Trigger

A database trigger is a special database procedure (sequence of statements) that the system executes after an SQL statement has changed data in a base table (or a view table based on this base table).

More Information

Database Studio, Creating Database Triggers, Deleting Database Triggers

SQL Tutorial, Database Triggers

SQL Reference Manual, Trigger Name, CREATE TRIGGER Statement


LOGSTATISTICS - SAP Documentation

Example documentation LOGSTATISTICS

Use of the system table SYSINFO.LOGSTATISTICS

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table LOGSTATISTICS to determine the following database information, among other things:

  • Size of the log area and used log area

    SELECT usablesize, usedsize, usedsizepercentage

    FROM SYSINFO.LOGSTATISTICS

  • Number of log queues and their size(s)

    SELECT queuecount, queuesize

    FROM SYSINFO.LOGSTATISTICS

  • Size of the log area that has not yet been backed up

    SELECT notsavedsize, notsavedpercentage

    FROM SYSINFO.LOGSTATISTICS


-10605: Illegal schema modification, parameters/columns have changed type/number incompatibly - SAP Documentation

Background documentation -10605: Illegal schema modification, parameters/columns have changed type/number incompatibly

Explanation

The method cannot be executed, because the SQL statement was parsed and now the table definition is incompatible. After the SQL statement was parsed, the table definition was probably changed by another application with a DDL statement.

User Response

Parse the SQL statement again. If necessary, bind the parameter again.


Changing the Properties of Database Users - SAP Documentation

Procedure documentation Changing the Properties of Database Users

Prerequisites

  • The database is in the ONLINE operational state.

  • You are logged on to the database as a database system administrator or database user with user class DBA and are owner of the database user whose properties you want to change.

  • The database user whose properties you want to change is not currently logged on to the database.

Procedure

This function has not been implemented in Database Studio yet. Use the corresponding SQL statement instead.

More information:

  • Entering and Executing SQL Statements

  • SQL Reference Manual, SQL Statements Overview

More Information

  • Creating Database Users

  • Deleting Database Users

Database Administration, Database Users


-7002: KEY not allowed - SAP Documentation

Background documentation -7002: KEY not allowed

Explanation

  1. In the CREATE TABLE statement, you only have to list the key columns first, if they are defined by KEY in the syntax element key_or_not_null_spec.

  2. In a CREATE TABLE statement you must not specify KEY in key_or_not_null_spec as well as a key definition.

User Response

Specify the key columns in the SQL statement correctly.


-24966: ERR_LOGON - logon to DBM server failed - SAP Documentation

Background documentation -24966: ERR_LOGON - logon to DBM server failed

Explanation

An invalid user/password combination was used or the statement used requires you to be already logged on.

User Response

Eter the correct user/password combination or log on to the DBM server first.f the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-892: Variable may be overflow - SAP Documentation

Background documentation -892: Variable may be overflow

Explanation

This warning is set if a numeric value greater than allowed by the column definition can be transferred to a table. At runtime, the error -751 can be returned; i.e. the SQL statement will not be executed then.

User Response

To avoid error -751 check the size of the value before transferring it into the table. The handling of this error must be programmed.


-709: Connect failed, check SERVERDB - SAP Documentation

Background documentation -709: Connect failed, check SERVERDB

Explanation

An error was detected while processing the connection (CONNECT statement).

User Response

  • Check the database name and correct it if necessary.

  • Check whether the database is in operation status ONLINE. If not, start the database.

  • If the data transfer to the database has been interrupted, restore it.


Log Area - SAP Documentation

Background documentation Log Area

The log volumes of a database form the log area. The database system stores the redo log entries (after images) in the log area.

The general database parameter MaxLogVolumes specifies the maximum number of log volumes you can configure for a database. More information: Database Administration, General Database Parameters

Log Partitions

To speed up the writing of log entries to the log area, you can divide the log area into several log partitions. Multiple log writer tasks can then write log entries in parallel to the different log partitions.

To configure the maximum number of log partitions, use the special database parameter MaxLogWriterTasks (see Database Administration, Special Database Parameters).

One log partition can consist of one or multiple log volumes and, if applicable, the related mirrored log volumes. When creating a log volume, you assign it to a log partition. If you do not assign the first log volume to a partition, the system automatically assigns it to the first log partition. Note that later, you cannot move log volumes from one log partition to another.

This graphic is explained in the accompanying text.

Log Partitions

Usually one log writer belongs to one user kernel thread (UKT) and writes to one log partition.

For more information, see Database Manager CLI, db_addvolume

How Does the System Write Redo Log Entries?

The system distributes the redo log entries among all the log partitions, and within the log partitions among all the log volumes.

The redo log entries are written to the log volumes by the log writer tasks. The system uses one log writer task for each log partition, which means that log partitions are written in parallel. If the log partitions are on different hard disks, you can thus improve the performance.

This graphic is explained in the accompanying text.

Log Partitions

LOG FULL Situation

The system overwrites the log partitions cyclically. However, redo log entries in the log area can only be overwritten once they have been backed up.

If you do not perform any log backups, the database system will at some stage have filled up one of the log partitions with redo log entries, and the database comes to a stand-still. Therefore regularly perform log backups or activate automatic log backup.

  • Database Administration, Backing Up Log Entries

  • Database Studio, Activating or Deactivating Automatic Log Backup

  • Database Manager CLI, autolog_on

Note Note

When a log partition is full, you have to perform a log backup. Adding a new log volume does not help: The current write position is usually not the place at which the system adds the new log volume.

End of the note.

This graphic is explained in the accompanying text.

Log partition is full (LOG FULL situation), and the system cannot use a new log volume yet

Log Segments

The system uses log segments for automatic log backup. After as many redo log entries as were configured in the log segment size were written to the log area, the system starts a log backup (otherwise after the time specified).

You configure the size of the log segments with the general database parameter AutoLogBackupSize. It is unrelated to the size of the individual log volumes, but may not exceed the total of all log volumes. Make sure that enough space remains in the log area when a log segment is being backed up to receive any new redo log entries that are written during the backup.

More information: Database Administration, General Database Parameters

Overwrite Mode

You can also set the overwrite mode for the log area, so that the database system overwrites the log area without first performing log backups. Note, however, that this interrupts the backup history, and you can no longer restore the database to its most recent state: If a hard disk is damaged, you may lose data.

Recommendation Recommendation

Only activate overwrite mode in special situations, and only for as long as is absolutely necessary.

End of the recommendation.
Mirroring

For the security of your data, we recommend that you mirror the log area. If hardware-based mirroring is not possible, the database system can mirror the log area.

Log Settings

Name

Description

Log mode

Specifies whether the database system supports software-based mirroring of the log volumes.

  • The log volumes are not mirrored

    Default value

  • The log volumes are mirrored (software-based)

    Only use this setting if hardware-based mirroring, for example using a RAID system, is not possible. Software-based mirroring reduces the performance of your database system..

    When software-based mirroring is activated, the database system writes redo log entries to two log areas in parallel (primary and secondary log area). The database system can only overwrite the log areas with new log entries after the log entries in the primary log area have been backed up.

Overwrite mode for the log area

Specifies whether the database system can overwrite redo log entries in the log area even if they have not been backed up.

  • OFF

    The database system can only overwrite the log area once the corresponding redo log entries have been backed up. We therefore recommend that you activate the automatic log backup function or regularly carry out interactive log backups.

  • ON

    The database system cyclically overwrites the log area without first backing up the redo log entries. This results in gaps in the backup history. This, in turn, means that you can only restore your database up to the time of the last data backup.

    Caution Caution

    Switching on overwrite mode interrupts the backup history. If you have to restore the database after an error, no redo log entries are available for this period of time, and you lose all data since the last data backup.

    End of the caution.

If overwrite mode is on and you switch it off, you then have to carry out a complete data backup.

Redo log management

Specifies whether the database system writes redo log entries.

  • ON

    Default value

    The system writes redo log entries.

  • OFF

    Caution Caution

    Do not switch redo log management off in normal database operation. When redo management is switched off, the system does not write regular savepoints. This means that if you restart your database after a database crash, you lose all data since the last savepoint. If you have to restore your database, you can only restore it to the state of the last data backup.

    Only consider switching redo log management off in special situations, for example in a test system or during a large load job.

    End of the caution.

If redo log management is off and you switch it back on, you then must carry out a complete data backup.

More Information

Volumes (Permanent Storage)

How Databases Log Data Changes


Log Area - SAP Documentation

Procedure documentation Log Area

In the Space user menu of the DBA Cockpit, you can find, among other things, comprehensive display and administration options for the log area.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Log Area [image] .

Caution Caution

For SAP NetWeaver 7.1, this status information is displayed in the Log Area menu, which is different from the menu described below.

End of the caution.

Result

The display contains the following information and administration options:

  • Display / Information on the log area

    • Occupiable Area, Occupied Area (Actually Occupied Space in Log Area), Free Area

    • Unsaved Log Area

    • Log Segment Size

    • Last Log I/O Sequence Number

    • Mirroring the Log Area, Automatic Overwrite of the Log Area, Redo Log Management, Automatic Log Backups

  • Configuration of log volumes

    Total size of the log area in the unit of measurement that you specified and other configuration information

  • Show/hide log volumes

    You can show or hide the following displays and change options for the log volumes:

    • Display of log volumes (size, type, device/path and file name, log partition, occupation and access information and so on)

    • Add or change log volumes

      Select Add/Change Volume and enter the required information where prompted. Creating a new volume might take some time, as the new volume has to be formatted

Note Note

If more than 60 % of the log area is used, you should back up the log segments to release space for other transactions. You can automate this process by Activating Automatic Log Backups.

End of the note.

More Information

  • Monitoring the Log Area

  • Data Area

  • Database Alert Monitor/liveCache Alert Monitor, Log Area

  • Glossary, Log Settings


320: View violation - SAP Documentation

Background documentation 320: View violation

Explanation

An INSERT statement or UPDATE statement was specified for a view table. At least one of the rows specified in the SQL statement does not satisfy the search conditions of all underlying view tables defined using WITH CHECK OPTION.

User Response

Display the definition of the view table using a QUERY statement issued on the DOMAIN.VIEWDEFS system table. Correct the INSERT or UPDATE statement according to this definition.


Database Administration - SAP Documentation

Background documentation Database Administration

As the administrator of an SAP MaxDB database, you must carry out certain administration tasks on a regular basis. Backups are one example of such a task. Many administration tasks can be automated. Certain events may lead to additional administration tasks, for example a database restore after a hardware failure.

The following tools are available for managing SAP MaxDB databases:

  • Computer Center Management System (CCMS)

    Tool for configuring, managing and monitoring SAP systems, including databases

    Only available in SAP systems

  • Database Studio

    Tool for configuring, managing and monitoring SAP MaxDB databases

    From version 7.7 onwards, Database Studio replaces the database tools Database Manager GUI and SQL Studio and also offers additional functions (such as a GUI for the Loader program).

  • Database Manager CLI

    Command line tool for configuring and managing SAP MaxDB databases

Prerequisites

You have installed the database software and created a database.

More information: Glossary, Installation

Activities

  • Creating Databases

  • Periodic Administration Tasks

  • Automating Administration Tasks

  • Changing Database Properties

  • Monitoring Databases

  • Backing Up Databases

  • Replication and High Availability

  • Exporting and Importing

  • Managing Users

  • Analyzing Database Performance

  • Troubleshooting

  • Restoring Databases

  • Developing Database Applications

More Information

Concepts of the Database System

SAP MaxDB Security Guide

Glossary


-10104: Invalid value for KEY - SAP Documentation

Background documentation -10104: Invalid value for KEY

Explanation

You entered a value that is not allowed for the KEY option of property SQLDBC_ConnectProperties for method SQLDBC_Connection::connect.

User Response

  • Use the XUSER list command to check whether the XUSER entry provided is available for the database instance and whether or not it is valid.

  • If you entered KEY=SQLOPT, check whether the -U <user_key> option was set in the SQLOPT environment variables.


medium_put - SAP Documentation

Background documentation medium_put

With this command you create a new backup template or change the data for a backup template that already exists. The properties of the backup template defined in this way are stored in the configuration file dbm.mmm of the Database Manager.

Changes to backup templates only apply when the backup process is next started. If automatic log backup is switched on and you change the backup template for the automatic log backup, the changes will only apply after the automatic log backup has been stopped and started again.

The directory defined using the property location/device in which the backup template is to be created, must already exist. The backup template is not created physically until it is first used for a backup.

Prerequisites

You have the server authorization Backup.

Structure

medium_put <medium_name> <location> <type> <backup_type> [<size> [<block_size> [<overwrite> [<autoloader> [<os_command> [<tool_type>]]]]]]

Options

Option

Description

<medium_name>

Name of the backup template; can comprise a group name and a member name, separated by a backslash (\):

<medium_name> ::= [<group_name>\]<member_name>

To create a backup template for a group of parallel backup media, execute the DBM command several times over. To assign the backup template to the same group, always enter the same name for <group_name>, with a different <member_name> each time.

<location>

Name of the device/file with which it can be addressed through operating system functions

The system assigns the version numbers for the backup files for log backups.

Note the standards for different types of backup templates (<type>) under different operating systems:

Standards for backup template of type PIPE

on Unix:

You can select any path you want. If you enter a relative path, the backup template is stored in the working directory of the database instance ([<path>/]<file_name>).

on Microsoft Windows:

The path must comply with this convention: \\.\pipe\<pipe_name>.

Standards for backup template of type FILE

auf Unix:

You can enter an absolute or relative path. An absolute path must begin with a slash (/). If you enter a relative path, it is interpreted as relative to the working directory of the database instance.

on Microsoft Windows:

You must enter an absolute path as follows:

\\<computer_name>\<share>\[<path>\]<file_name>

or with the drive:

<drive>:\[<path>]\<file_name>

If you enter a relative path, it is interpreted as relative to the working directory of the database instance.

Standards for backup template of type TAPE

on Unix:

You must enter an absolute path.

on Microsoft Windows:

The path must comply with this convention: \\.\tape<running_number>.

Standards for the backup tool NSR:

Enter an absolute pathname. This must be identical for both the backup and restore operations. Note that parts of the path name that represent only links are replaced with the actual directory or file name by NetWorker.

<type>

Type of backup template

Possible values for backups are:

TAPE | FILE | PIPE | UNKNOWN

Possible values for log backups are:

FILE | PIPE | UNKNOWN

Specify TAPE for backups to a non-rewindable tape, FILE for backups to a file, and PIPE for backups to a pipe. If you enter one of these template types, the system checks that your entries are correct.

If you want to avoid this check, enter the type UNKNOWN. Note, however, that log backups are only possible to files and pipes. For other file types, you will receive an error message when you save.

The system default is UNKNOWN.

<backup_type>

Type of backup for which the backup template is to be used

Possible values are:

DATA | PAGES | LOG | AUTO

Enter DATA for a complete backup, PAGES for an incremental backup, LOG for an interactive log backup, and AUTO for an automatic log backup.

Note Note

There can be only one backup template of type AUTO. If a backup template for this backup type already exists and you define another medium of type AUTO, then the system changes the backup type of the existing medium to the backup type LOG.

End of the note.

<size>

Maximum number of pages that can be written to the data carrier

The default value of the system is 0, that is, the size of the data carrier is not limited. The system will keep backing up to this data carrier until either the backup is complete, or the operating system does not allow further backups to this data carrier because it is full. If this happens, you receive an error message and can then continue the backup using another data carrier.

<block_size>

Number of pages transferred when the data carrier is accessed. This value is only evaluated for the data carrier type TAPE. The system default is 8.

<overwrite>

Mandatory only for the backup type FILE and only for data backups. It defines the behavior if the file already exists.

Possible values are: YES | NO

If you enter YES and the file already exists, it is overwritten by the new backup.

If you enter NO and the file already exists, the backup fails.

The system default is NO.

This entry is not interpreted for log backups.

<autoloader>

Details of whether the data carrier the medium automatically

Only relevant on Microsoft Windows

Possible values are: YES | NO

The system default is NO.

<os_command>

Operating system command to be executed before saving to a succeeding data carrier (backup_replace) or restoring a succeeding data carrier (recover_replace)

<tool_type>

Backup tool to be used

Possible values are: NONE | BACK | NSR | TSM

NONE: No backup tool is used.

BACK: Backint for MaxDB/ Backint for Oracle

NSR: NetWorker

TSM: TSM by IBM/Tivoli

If you are using UNIX and you enter the value NONE with PIPE as the <type>, the pipe must be created before the backup process starts. If you are using Microsoft Windows, the pipe must not yet exist.

If you enter a value for NONE, you have to enter PIPE for <type> and 0 for <size>. If you are using either UNIX or Microsoft Windows, the pipe must not exist before the backup process begins.

For the value NSR, note the additional information listed under <location>.

The system default is NONE.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Backup Templates and Data Carriers, Configuration Files


-22000: Null values not allowed on more than one LOB column - SAP Documentation

Background documentation -22000: Null values not allowed on more than one LOB column

Explanation

In an INSERT or UPDATE statement, at most one LOB column may contain a NULL value if LOB columns are inserted using SQLParamData and SQLPutData.

User Response

Only include one LOB column in the statement, or use empty strings instead of NULL values.


-28528: Library not released - SAP Documentation

Background documentation -28528: Library not released

Explanation

Unloading of a library failed.

User Response

Internal error.


-3062: Invalid month - SAP Documentation

Background documentation -3062: Invalid month

Explanation

An invalid month specified in the date value in the chosen language or format.

User Response

Check the chosen language and format and repeat the SQL statement with the correct day of the month. For the MONTH format element, the months must be written in full; for MON, they must be specified with their three-letter abbreviation.


-25231: ROUND or TRUNC specification not allowed for this column - SAP Documentation

Background documentation -25231: ROUND or TRUNC specification not allowed for this column

Explanation

Error when exporting or importing data.The ROUND, TRUNC, or SCALE specification is only possible for numerical table columns, that is for table columns of type INTEGER, SMALLINT, FLOAT, or FIXED.

User Response

Correct the entry and re-execute the command.


Message History - SAP Documentation

Procedure documentation Message History

The Kernel Messages user menu of the DBA Cockpit contains, among other things, a display of the log files that were backed up during a database crash, as well as the kernel message history. Normally, at least the kernel log knldiag, the database trace log knltrace, and the memory dump rtedump are backed up if the database crashes. These files are in a subdirectory of the directory diaghistory, where they can be used for diagnoses.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] History [image] .

Result

The existing subdirectories of the diaghistory directory are displayed, sorted according to the time your backup was performed. The available kernel message history (KnlMsg_<timestamp> files) is displayed. You can open and analyze any of the log files.

More Information

Database Administration, Log Files


Date and Time Format (datetimeformat) - SAP Documentation

Background documentation Date and Time Format (datetimeformat)

The data and time format (datetimeformat) specifies the way in which date values, time values and time stamp values are represented.

In SQL statements, it determines the format in which the date, time, and timestamp values can be represented in these SQL statements, and the way in which results are displayed.

Structure

Syntax Syntax

  1. <datetimeformat> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.

Note Note

The ISO date and time format is used by ODBC and JDBC applications and cannot be replaced with a different date and time format.

End of the note.
Date Value
Date and Time Format (datetimeformat)
'YYYY' | Four-digit year format (0001-9999)
'MM' | Two-digit month format (01-12)
'DD' | Two-digit day format (01-31)
Date and Time Format (datetimeformat)
Format | General Format | Example
EUR | 'DD.MM.YYYY' | '23.01.2008'
INTERNAL | 'YYYYMMDD' | '20080123'
ISO/JIS | 'YYYY-MM-DD' | '2008-01-23'
USA | 'MM/DD/YYYY' | '01/23/2008'

In all formats, with the exception of INTERNAL, leading zeros may be omitted in the identifiers for the month and day.

Time value
'HHHH'/'HH' | Four-digit/two-digit hour format
'MM' | Two-digit minute format (00-59)
'SS' | Two-digit second format (00-59)
Format | General Format | Example
EUR | 'HH.MM.SS' | '14.30.08'
INTERNAL | 'HHHHMMSS' | '00143008'
ISO/JIS | 'HH:MM:SS' | '14:30:08'
USA | 'HH:MM AM (PM)' | '2:30 PM'

In all time formats, the hour identifier must consist of at least one digit. In the time format for the USA, the minute identifier can be omitted completely. In all the other formats, with the exception of INTERNAL, the minute and second identifiers must comprise at least one digit.

In the ISO and USA formats, the hours are displayed modulo 24. In the EUR and JIS formats, a number of hours greater than 99 causes an error. In the INTERNAL format, you can specify up to 9999 hours.

Time Stamp Value
'YYYY' | Four-digit year format (0001-9999)
'MM'/'DD' | Two-digit month format (01-12)/day format (01-31)
'HH'/'MM'/'SS' | Two-digit hour format (00-24)/Minute format (00-59)/Second format (00-59)
'MMMMMM' | Six-digit microsecond format
Format | General Format | Example
EUR/JIS/USA | 'YYYY-MM-DD-HH.MM.SS.MMMMMM' | '2008-01-23-14.30.08.456234'
ISO | 'YYYY-MM-DD HH:MM:SS.MMMMMM' | '2008-01-23 14:30:08.456234'
INTERNAL | 'YYYYMMDDHHMMSSMMMMMM' | '20080123143008456234'

The microsecond identifier can be omitted in all time stamp formats. In all formats, with the exception of INTERNAL, the month and day identifiers must consist of at least one digit.

More Information

Special Database Parameters DateTimeFormat

CHAR(a,t)


Database Studio Preferences: Editors - SAP Documentation

Background documentation Database Studio Preferences: Editors

Editors
Property | Comments
Confirm saving | When closing the respective editor, display a dialog box asking you whether you want to save any changes.
Editors –> SQL

Property

Comments

Stop batch SQL statement execution on error

When you execute a list of SQL statements that is separated by comment characters, the system stops the execution of the SQL statements when an error occurs.

Clear SQL editor log before SQL statement execution

The log from the last executed SQL statement is deleted before the next SQL statement is executed.

Close results before SQL statement execution

When you execute an SQL statement in an SQL Editor, Database Studio closes all old results windows in that SQL Editor.

Display time of statement execution start

-

Display the duration of failed statements

-

Connection parameters for SQL window:

  • Auto Commit Mode

  • SQL Mode

  • Isolation Level

Connection parameters that the system uses to execute SQL statements from the SQL editor:

  • AUTOCOMMIT mode

  • SQL mode

  • Isolation level

New Item Color in Catalog Editor

Color of new elements in graphical editors

Editors –> Templates
Property | Comments
The settings always refer to the editor type that is currently open. For more information, see the Eclipse documentation.
Name | Word to be completed when you press the key combination CTRL+Space You can create more than one template with the same name. If more than one template exists for one word, the system displays a list of values that you can select to complete the word.
Context | Editor in which you can use the template
Description | Description
Automatically Insert | If selected, code assist will automatically insert the template if it is the only proposal available at the caret position. More information: Eclipse documentation at http://www.eclipse.org/documentation
Pattern | Values that should be available for completing the word


-24925: ERR_PREPARE: preparation of backup operation failed - SAP Documentation

Background documentation -24925: ERR_PREPARE: preparation of backup operation failed

Explanation

The system could not finish the necessary preparations for using the backup tool.

User Response

Fix the problem that is described in the extended error description.

If you cannot fix the problem, contact support.


-36: Foreign key integrity violated - SAP Documentation

Background documentation -36: Foreign key integrity violated

Explanation

In an INSERT or UPDATE statement issued on a join view table, the column values that functionally depend on the referencing columns of the referencing table conflict with the existing column values.

User Response

This conflict may be solved by changing either the column values specified in the INSERT or UPDATE statement or the existing values.


-25225: Wrong number specification - SAP Documentation

Background documentation -25225: Wrong number specification

Explanation

The command to export or import data contains an error.The specification of the thousands separator and the decimal point that are to be used when exporting or importing numerical values from the Loader does not have the correct syntax (data format).

User Response

Correct the entry and re-execute the command.


-3047: Invalid table for RESTORE CATALOG - SAP Documentation

Background documentation -3047: Invalid table for RESTORE CATALOG

Explanation

A RESTORE CATALOG statement specified a table that contains none of the data generated by the SAVE CATALOG statement.

User Reponse

Specify a table whose data was generated by the SAVE CATALOG statement.


-28813: Unknown consistent version - SAP Documentation

Background documentation -28813: Unknown consistent version

Explanation

An attempt was made to access an object in a consistent view that liveCache no longer recognizes.This is an internal liveCache error that cannot be caused by incorrect handling of the OMS API.

User Response

Contact Support.


-40: Lock collision - SAP Documentation

Background documentation -40: Lock collision

Explanation

When the option (NOWAIT) is specified in the LOCK statement or in the LOCK option, this message signals that the lock request conflicts with the locks of other users.

User Response

In interactive mode, another job can be activated which does not require the desired lock.As an alternative, you can wait for the lock to be released by specifying the same SQL statement without the '(NOWAIT)' option.


SAP Library - WebDAV Servlet

Start Level 1 Node: WebDAV Servlet WebDAV Servlet End Level 1 Node: WebDAV Servlet
Start Level 2 Node: Installing the WebDAV Servlet Installing the WebDAV Servlet End Level 2 Node: Installing the WebDAV Servlet
Start Level 2 Node: Calling the WebDAV Servlet Calling the WebDAV Servlet End Level 2 Node: Calling the WebDAV Servlet


AUTOCOMMIT Command - SAP Documentation

Background documentation AUTOCOMMIT Command

You can use the Loader command AUTOCOMMIT to set up a database session that activates/deactivates AUTOCOMMIT mode for a database session. If the AUTOCOMMIT command is not used, AUTOCOMMIT mode is implicitly activated.

Structure

Syntax Syntax

  1. <autocommit_command> ::=
  AUTOCOMMIT ON
| AUTOCOMMIT OFF
End of the code.
AUTOCOMMIT ON

The AUTOCOMMIT mode is activated (Loader default value). Loader terminates each SQL statement implicitly with a COMMIT. If you execute COMMIT and ROLLBACK statements while AUTOCOMMIT mode is activated, Loader ignores these statements.

With commands for importing data, a COMMIT is used to complete the insertion of a certain number of data records. The user can define this number using the SET TRANSACTION SIZE command. This mode is not relevant when data is exported since the table contents in the database are not modified.

AUTOCOMMIT OFF

AUTOCOMMIT mode is deactivated. All transactions must be terminated explicitly using a COMMIT. You can group commands in units so that they can be completed or reset together. This mode is not valid for commands that are not processed as part of the transaction concept of the database and that are therefore always implicitly completed with COMMIT.

Note Note

Large transactions (such as those involving a large number of data records to be loaded) require a correspondingly large log area.

End of the note.

More Information

Opening a Session: Loader Commands


-7078: No backup is running - SAP Documentation

Background documentation -7078: No backup is running

Explanation

An attempt was made to cancel a backup but no backup was running.

User Response

No user action required.


-4019: Unknown trigger name - SAP Documentation

Background documentation -4019: Unknown trigger name

Explanation

There is no trigger with the specified name.

User Response

Use QUERY statement issued on the DOMAIN.TRIGGERS system table to view the trigger names already in use.


-1006: Too many variables - SAP Documentation

Background documentation -1006: Too many variables

Explanation

A maximum of 2000 parameters may be specified per SQL statement.

User Response

Reduce the number of parameters specified in the SQL statement. Some parameters must be replaced with constant values. If this is not possible, split the SQL statement into several SQL statements.


-887: Too long WHENEVER action - SAP Documentation

Background documentation -887: Too long WHENEVER action

Explanation

A maximum of 50 bytes are available to define the WHENEVER action.

User Response

Reduce the number of characters, e.g. by shortening the names.


Creating Database Procedures - SAP Documentation

Procedure documentation Creating Database Procedures

A database procedure is a series of statements that forms an independent part of a program.

Database procedures are also called Stored Procedures.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the CREATEIN privilege for the schema in which you want to create the database procedure.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Open the SQL editor.

    More information: Entering and Executing SQL Statements

  2. Create the database procedure using the CREATE DBPROCEDURE statement.

    More information: SQL Reference Manual, CREATE DBPROC[EDURE] Statement (create_dbproc_statement)

Result

The database procedure is displayed in the Procedures folder in the explorer window (read-only) .

Example

The database procedure avg_price determines the average price for single rooms in hotels located within the specified zip code range.

CREATE DBPROCEDURE hotel.avg_price (IN zip CHAR(5), OUT avg_price FIXED(6,2)) AS

VAR sum FIXED(10,2); price FIXED(6,2); hotels INTEGER;

TRY

SET sum = 0; SET hotels = 0;

DECLARE dbproccursor CURSOR FOR

SELECT price FROM hotel.room,hotel.hotel WHERE zip = :zip AND

room.hno = hotel.hno AND type = 'single';

WHILE $rc = 0 DO BEGIN

FETCH dbproccursor INTO :price;

SET sum = sum + price;

SET hotels = hotels + 1;

END;

CATCH

IF $rc <> 100 THEN STOP ($rc, 'unexpected error');

CLOSE dbproccursor;

IF hotels > 0 THEN SET avg_price = sum / hotels

ELSE STOP (100, 'no hotel found');

More Information

SQL Tutorial, Database Procedures


-706: SQL statement too long (buffer overflow) - SAP Documentation

Background documentation -706: SQL statement too long (buffer overflow)

Explanation

The SQL statement does not fit the buffer used for communication between the application program and the database.

User Response

Change the statement or break down the SQL statement into two or more SQL statements.


FOREIGNKEYS - SAP Documentation

Example documentation FOREIGNKEYS

Use of the system table DOMAIN.FOREIGNKEYS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create referential constraints. Proceed as described in SQL Tutorial, Foreign Key Dependencies Between Tables.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table FOREIGNKEYS to determine the following database information, among other things:

  • All referential constraints in which the RESERVATION table is the referencing table

    SELECT fkeyname, tablename

    FROM DOMAIN.FOREIGNKEYS

    WHERE tablename = 'RESERVATION'

  • All referential constraints generated with the DELETE CASCADE rule

    SELECT schemaname, fkeyname

    FROM DOMAIN.FOREIGNKEYS

    WHERE rule = 'DELETE CASCADE'

More Information

Columns in a referential constraint: see FOREIGNKEYCOLUMNS


Syntax Rules: Sorted Alphabetically - SAP Documentation

Component documentation Syntax Rules: Sorted Alphabetically

The syntax used for Loader commands is the Backus Naur Form (BNF). Each Loader command comprises one or more keywords, arguments and syntax rules. Blank characters are permitted in commands and are not interpreted by the Loader. The following conventions apply:

Syntax Notation

Explanation

KEYWORDS

Keywords are shown in uppercase letters for the sake of clarity. They can be entered in uppercase or lowercase letters.

If you use keywords as names of columns, tables, or database users, you must place them in double quotation marks.

<xyz>

Terms in angle brackets are placeholders for end symbols explained in this document. Do not use angle brackets when entering a Loader statement.

These are user inputs. Note that you might have to place these entries in single quotation marks, if the syntax rule requires this. End symbols are numbers, characters, literals, or keywords and are not expanded further.

<! text !>

Texts enclosed in angled brackets and exclamation points indicate that the syntactical unit is explained by means of a text. Do not enter the angled brackets or exclamation points when specifying a Loader command.

rule ::= rule section

Rules are the building blocks of Loader commands. Rule sections describe how these building blocks are put together to form more complex clauses and also dictate the notation that is used.

A rule section is any combination of rules and end symbols.

rule1 rule2

The two rules are written one after the other, separated by at least one blank.

[rule]

Optional rule. This rule can be omitted entirely. Do not enter the square brackets when specifying a command.

rule1 | rule2 | ... | rule<n>

Alternative rules. You can use exactly one of the rules.

rule,...

The rule can be repeated as often as required. The individual repetitions must be written one after the other and separated by a comma and any number of blanks.

rule ...

The rule can be repeated as often as required. The individual repetitions must be written one after the other and separated by spaces.

The following overview lists the syntax rules required for the Loader commands, in alphabetical order. The syntax rules can also be displayed semantically: Syntax Rules: Sorted Semantically. You will find a detailed description of the Loader commands in the Loader documentation. For examples of using syntax, see the Loader Tutorial.

Syntax Syntax

  1. <autocommit_command> ::=
  AUTOCOMMIT ON
| AUTOCOMMIT OFF

<backup_tool_spec> ::=
  BACKINT
| NETWORKER
| TSM

<bool_spec> ::=
  BOOLEAN '<true_value>/<false_value>'

<catalog_data_instream_part_spec> ::=
  <catalog_instream_spec>
| <data_instream_part_spec>
| <catalog_instream_spec> <data_instream_part_spec>

<catalog_data_instream_table_spec> ::=
  <catalog_instream_spec>
| <data_instream_table_spec>
| <catalog_instream_spec> <data_instream_table_spec>

<catalog_data_outstream_part_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_part_spec>
| <catalog_outstream_spec> <data_outstream_part_spec>

<catalog_data_outstream_table_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_table_spec>
| <catalog_outstream_spec> <data_outstream_table_spec>

<catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>

<catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>

<character> ::=
  <!  SQL Reference Manual  !>

<code_page_spec> ::=
  CODEPAGE [<literal>]

<code_spec> ::=
  <standard_code_spec>
| CODESET <literal>

<column_assignment> ::=
  <column_name> '<literal>'
| <column_name> <column_function>

<column_dataformat_spec> ::=
  CSV <csv_format_spec> ...
| FWV [BINARY] <fwv_format_spec> ...
| FWV BINARY <fwv_format_spec> ... <noheader_spec>

<column_function> ::=
  DATE
| FALSE
| STAMP
| TIME
| TIMESTAMP
| TRUE
| USER
| USERGROUP
| <sequence_number>

<column_id> ::=
  <unsigned_integer>

<column_name> ::=
  <identifier>

<column_spec> ::=
  <column_name>
| <column_id>

<compare_operator> ::=
  <
| >
| =
| <=
| >=
| !=

<condition> ::=
  (<condition>)
| <condition> AND <condition>
| <condition> OR <condition>
| NOT <condition>
| <simple_condition>

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<csv_format_spec> ::=
  <separator_spec>
| <delimiter_spec>
| <null_spec>
| <field_format_spec>

<data_instream_column_spec> ::=
  DATA <instream_columnformat_spec> [<import_lobcolumn_spec> ...]

<data_instream_columns_spec> ::=
  DATA <instream_columnformat_spec>
    [<import_column_spec> ... <import_lobcolumn_spec> ...] [<usage_spec>]

<data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>

<data_instream_table_spec> ::=
  <data_instream_part_spec>
| <data_instream_columns_spec>

<data_outstream_column_spec> ::=
  DATA <outstream_columnformat_spec> [<export_lobcolumn_spec> ...]

<data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>

<data_outstream_table_spec> ::=
  <data_outstream_part_spec>
| <data_outstream_column_spec>

<database_computer> ::=
  <!  USE DB command  !>

<database_name> ::=
  <!  USE DB command  !>

<database_spec> ::=
  <database_name> [ON <database_computer> [ENCRYPTION <protocol_name>]]

<database_user> ::=
  <!  SQL Reference Manual  !>

<date_spec> ::=
  DATE <standard_date_mask>
| DATE '<free_mask_date>'

<decimal_symbol> ::=
  <!  SET command  !>

<delimiter> ::=
  <character>

<delimiter_spec> ::=
  DELIMITER '<character>'

<digit_grouping_symbol> ::=
  <!  SET command  !>

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<ebid_spec> ::=
  EBID '<literal>'

<exclude_include> ::=
  EXCLUDE
| INCLUDE

<export_column_spec> ::=
  <map_column_field>
| <field_assignment>

<export_columns_command> ::=
  EXPORT COLUMNS <select_expression>
    [MAP COLUMNS <export_column_spec> ...] <data_outstream_column_spec>

<export_command> ::=
  <export_db_command>
| <export_user_command>
| <export_schema_command>
| <export_table_command>
| <export_columns_command>

<export_db_command> ::=
  EXPORT DB
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<export_lobcolumn_spec> ::=
  LOB <outstream_lob_spec>

<export_schema_command> ::=
  EXPORT SCHEMA <schema_name>
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<export_table_command> ::=
  EXPORT TABLE <table_name>
    [<order_clause>]
    <catalog_data_outstream_table_spec>
    [<package_spec>]

<export_user_command> ::=
  EXPORT USER
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<false_value> ::=
  <!  SET command  !>

<field_assignment> ::=
  '<literal>' <field_spec>

<field_format_spec> ::=
  <bool_spec>
| <code_spec>
| <date_spec>
| <number_spec>
| <time_spec>
| <timestamp_spec>

<field_function> ::=
  <field_type> [HEX]
| <numerical_functions>
| <field_type> [HEX] <numerical_functions>

<field_spec> ::=
  <unsigned_integer>
| <unsigned_integer> - <unsigned_integer>

<field_type> ::=
  /* empty */
| CHAR
| DECIMAL [<unsigned_integer>]
| INTEGER
| REAL
| ZONED [<unsigned_integer>]

<free_mask_date> ::=
  <!  Date specifications  !>

<free_mask_time> ::=
  <!  Time specifications  !>

<free_mask_timestamp> ::=
  <!  Time stamp specifications  !>

<fwv_format_spec> ::=
  <null_spec>
| <int_spec>
| <field_format_spec>

<identifier> ::=
  <!  SQL Reference Manual  !>

<if_condition> ::=
  IF <condition>

<import_column_spec> ::=
  <map_field_column> [<null_condition>]
| <column_assignment>

<import_columns_command> ::=
  IMPORT COLUMNS TABLE <table_name>
    [<if_condition>]
    [<duplicates_clause>]
    <import_column_spec> ...
    <data_instream_column_spec>

<import_command> ::=
  <import_db_command>
| <import_user_command>
| <import_schema_command>
| <import_table_command>
| <import_columns_command>

<import_db_command> ::=
  IMPORT DB
    [<duplicates_clause>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<import_lobcolumn_spec> ::=
  LOB <instream_lob_spec>

<import_schema_command> ::=
  IMPORT SCHEMA <schema_name>
    [<duplicates_clause>]
    [<map_schema_spec>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<import_table_command> ::=
  IMPORT TABLE <table_name>
    [<if_condition>]
    [<duplicates_clause>]
    <catalog_data_instream_table_spec>
    [<package_spec>]

<import_user_command> ::=
  IMPORT USER
    [<duplicates_clause>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<instream_columnformat_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [<column_dataformat_spec>] [<start_spec>]

<instream_csv_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [CSV [<csv_format_spec> ...]] [<start_spec>]

<instream_ddl_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' [DDL]

<instream_fwv_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    FWV [<fwv_format_spec> ...] [<start_spec>]

<instream_lob_spec> ::=
  INSTREAM [FILE] <column_spec> <lob_code_spec>
| INSTREAM [FILE] <column_spec> '<stream_name>' [<lob_code_spec>]

<instream_pages_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' [PAGES]

<instream_records_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' RECORDS [<records_format_spec>]

<instream_tableformat_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' [<table_dataformat_spec>]

<int_spec> ::=
  INTEGER HILO
| INTEGER LOHI

<isolation_level_spec> ::=
  ISOLATION LEVEL <unsigned_integer>

<literal> ::=
  <!  SQL Reference Manual  !>

<lob_code_spec> ::=
  <code_spec>
| BINARY

<map_column_field> ::=
  <column_name> <field_spec> <field_function> <null_assign>

<map_field_column> ::=
  <column_name> <field_spec> <field_function>

<map_schema_spec> ::=
  MAP SCHEMA [<schema_map_name> | <schema_to_schema>,...]

<mediumtype_spec> ::=
  FILE
| PIPE
| TAPE [<ebid_spec>]

<noheader_spec> ::=
  NOHEADER <unsigned_integer>

<null_assign> ::=
  [IF] NULL SET '<literal>'

<null_condition> ::=
  NULL [IF] <condition>
| DEFAULT NULL

<null_spec> ::=
  NULL '<literal>'

<number_spec> ::=
  DECIMAL '/[<digit_grouping_symbol>]/<decimal_symbol>/'

<numerical_functions> ::=
  <scale_spec>
| <round_or_trunc_spec>
| <scale_spec> <round_or_trunc_spec>

<order_clause> ::=
  ORDER BY <column_name>,...

<outstream_columnformat_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [<column_dataformat_spec>] [<start_spec>]

<outstream_csv_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [CSV [<csv_format_spec> ...]] [<start_spec>]

<outstream_ddl_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' [DDL]

<outstream_fwv_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    FWV [<fwv_format_spec> ...] [<start_spec>]

<outstream_lob_spec> ::=
  OUTSTREAM [FILE] <column_spec> '<stream_name>' [<lob_code_spec>]

<outstream_pages_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' [PAGES]

<outstream_records_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' RECORDS [<records_format_spec>]

<outstream_tableformat_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' [<table_dataformat_spec>]

<package_guid> ::=
  <unsigned_integer>

<package_spec> ::=
  PACKAGE <outstream_csv_spec>

<password> ::=
  <!  SQL Reference Manual  !>

<protocol_name> ::=
  <!  USE DB command  !>

<records_format_spec> ::=
  <field_format_spec> ...

<remark_command> ::=
  REMARK "<literal>"

<restart_spec> ::=
  RESTART <package_guid>

<round_or_trunc_spec> ::=
  ROUND <unsigned_integer>
| TRUNC <unsigned_integer>

<scale_spec> ::=
  SCALE <unsigned_integer>

<schema_map_name> ::=
  <identifier>

<schema_name> ::=
  <identifier>

<schema_to_schema> ::=
  <schema_name> TO <schema_name>

<select_expression> ::=
  <!  <select_statement> without key word SELECT>  !>

<separator> ::=
  <character>

<separator_spec> ::=
  SEPARATOR '<character>'

<sequence_number> ::=
  SEQNO
| SEQNO <integer>
| SEQNO <integer> <integer>

<set_column_spec> ::=
  SET <import_column_spec>

<set_command> ::=
  SET
| SET <bool_spec>
| SET <code_page_spec>
| SET <isolation_level_spec>
| SET <null_spec>
| SET <number_spec>
| SET BACKUPTOOL <backup_tool_spec>
| SET CODETYPE <standard_code_spec>
| SET CONFIGURATION <exclude_include>
| SET CSV '/<separator>/<delimiter>/'
| SET CURRENT_SCHEMA = <schema_name>
| SET DATE <standard_date_mask>
| SET FORMAT <standard_date_mask>
| SET LOGFILEPATH '<loader_log_file_path>' [DELETELOGFILE]
| SET MAXERRORCOUNT <unsigned_integer>
| SET TIME <standard_time_mask>
| SET TIMESTAMP <standard_timestamp_mask>
| SET TRANSACTION SIZE <unsigned_integer>

<simple_condition> ::=
  POS <field_spec> <field_type> [HEX] <compare_operator> '<literal>'

<sql_mode> ::=
  INTERNAL
| ORACLE

<sql_mode_command> ::=
  SQLMODE <sql_mode>

<standard_code_spec> ::=
  ASCII
| UCS2
| UTF8

<standard_date_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA

<standard_time_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA

<standard_timestamp_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA

<start_spec> ::=
  START <unsigned_integer> [MAXROWS]
| START <unsigned_integer> [MAXRECORDS]
| START <unsigned_integer> <unsigned_integer>

<stream_name> ::=
  <!  Data stream  !>

<table_dataformat_spec> ::=
  PAGES
| RECORDS <records_format_spec>

<table_name> ::=
  [<schema_name>.]<identifier>

<time_spec> ::=
  TIME <standard_time_mask>
| TIME '<free_mask_time>'

<timestamp_spec> ::=
  TIMESTAMP <standard_timestamp_mask>
| TIMESTAMP '<free_mask_timestamp>'

<true_value> ::=
  <!  SET command  !>

<unsigned_integer> ::=
  <!  SQL-Referenzhandbuch  !>

<update_column_spec> ::=
  <map_field_column>
| <column_assignment>

<update_columns_command> ::=
  UPDATE COLUMNS TABLE <table_name>
    [<if_condition>]
    <update_column_spec> ...
    <set_column_spec> ...
    <data_instream_column_spec>

<usage_spec> ::=
  RECORDS USAGE
| PAGE WITH <unsigned_integer> % USAGE
| PAGE WITH <unsigned_integer> RECORDS USAGE

<use_database_command> ::=
  USE DB <database_spec>

<use_schema_command> ::=
  USE SCHEMA <schema_name>

<use_schema_map_command> ::=
  USE SCHEMAMAP <schema_map_name>

<use_user_command> ::=
  USE USER <user_spec>
    [SCHEMA <schema_name>] [DB <database_spec>] [<isolation_level_spec>]

<user_spec> ::=
  <database_user> <password>
End of the code.


-23057: Reconnect failed - SAP Documentation

Background documentation -23057: Reconnect failed

Explanation

An attempt to restore an interrupted connection to the database instance has failed.

User Response

Check the status of the database instance.End the database session and log on to the database instance again.


-889: Input line longer than 512 characters - SAP Documentation

Background documentation -889: Input line longer than 512 characters

Explanation

A line of a precompiler input file must not exceed 512 characters.

User Response

Shorten the line concerned.


param_extget - SAP Documentation

Background documentation param_extget

With this command you display the name, data type, and current value of the database parameter specified.

Prerequisites

You have the server permission ParamRead.

Structure

param_extget <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<parameter_name> <type> <value>

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameter
<type> | Data type of the database parameter
<value> | Current value This is the value that is copied from the database parameter file at the start of the session. If the parameter is not in the parameter file, the default value from the default parameter file is displayed.

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


-28524: Duplicate schema - SAP Documentation

Background documentation -28524: Duplicate schema

Explanation

When liveCache called the omsCreateSchema function, it established that a liveCache schema with the specified name already exists.This is not allowed.

User Response

Contact Support.


-28521: Already in version - SAP Documentation

Background documentation -28521: Already in version

Explanation

When liveCache called the function omsOpenVersion, it established that the caller is already in an OMS version.This is not allowed.

User Response

Contact Support.


-28541: DB procedure parameters invalid - SAP Documentation

Background documentation -28541: DB procedure parameters invalid

Explanation

The stack of the “user-defined method” is invalid.

User Response

Internal error.


-65: Work rolled back - SAP Documentation

Background documentation -65: Work rolled back

Explanation

The user transaction was canceled implicitly and reset with a rollback statement because the log area is full.

User Response

The error text contains a precise description of the error. Back up the log area (log backup).


-835: INCLUDE file open error - SAP Documentation

Background documentation -835: INCLUDE file open error

Explanation

The INCLUDE file could not be opened.

User Response

Check whether the file is available or the spelling of the filename is correct. For the exact error description, see the file appldiag.


HISTORYCLEANUPSTATISTICS - SAP Documentation

Object documentation HISTORYCLEANUPSTATISTICS

The system table SYSINFO.HISTORYCLEANUPSTATISTICS contains details about the activities which have taken place since the last database system start and which belong to tasks that delete information.

Structure

HISTORYCLEANUPSTATISTICS
TASKID | FIXED(10) | ID of the task
ACTIVE | CHAR(3) | Task is currently active (YES | NO)
RESUMETASKCOUNT | FIXED(20) | Number of activations of this task
ALLOBJECTCOUNT | FIXED(20) | Number of objects deleted via this task
ALLROWCOUNT | FIXED(20) | Number of table lines deleted via this task
ALLINDEXCOUNT | FIXED(20) | Number of index entries deleted via this task
CLEANUPCOUNT | FIXED(20) | Number of history entries deleted via this task that are no longer required
CREATEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to CREATE objects
INSERTOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to INSERT objects
UPDATEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to UPDATE objects
DELETEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to DELETE objects
LOCKUPDATEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to UPDATE FOR LOCK objects
RELEASEOBJECTPAGECOUNT | FIXED(20) | Number of pages released due to deletion of the last object stored on them
RELEASECONTAINERPAGECOUNT | FIXED(20) | Number of pages released due to deletion of complete containers
CREATECONTAINERCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to CREATE containers
DROPCONTAINERCOUNT | FIXED(20) | Number of deleted containers
DROPTREECOUNT | FIXED(20) | Number of table or index trees deleted via this task

More Information

HISTORYCLEANUPSTATISTICSRESET

Concepts of the Database System, How Databases Log Data Changes


-1001: Too many lock objects specified - SAP Documentation

Background documentation -1001: Too many lock objects specified

Explanation

The LOCK statement contains too many tables or table rows that need to be locked.

User Response

The SQL statement must be formulated using two successive LOCK statements.


Executing Database Procedures - SAP Documentation

Procedure documentation Executing Database Procedures

Prerequisites

  • You are logged on to the database as a database user.

  • You have the EXECUTE privilege for the database procedure.

    More information: SQL Reference Manual, Privileges: Overview

  • The database is in the ONLINE operational state.

Procedure

  1. Open the SQL editor.

    More information: Entering and Executing SQL Statements

  2. Execute the database procedure using the CALL statement.

    More information: SQL Reference Manual, CALL Statement (call_dbproc_statement)

Example

CALL hotel.avg_price (20005, :avg_price)

| AVG_PRICE | | ------------- | | 135.00 |

More Information

SQL Tutorial, Database Procedures


MEMORYALLOCATORDETAILS - SAP Documentation

Object documentation MEMORYALLOCATORDETAILS

The system table SYSINFO.MEMORYALLOCATORDETAILS contains allocator details.

Structure

MEMORYALLOCATORDETAILS
ALLOCATORNAME | CHAR(40) | Name of the allocator
INITIALSIZE | FIXED(20) | Initial amount of memory reserved by the allocator (bytes)
LIMITSIZE | FIXED(20) | Upper limit of memory that can be reserved by the allocator (bytes)
SUPPLEMENTSIZE | FIXED(20) | Minimal number of bytes allocated from the base allocator when this allocator must grow
CHECKLEVEL | FIXED(20) | Information about the current degree of allocator self-control (database parameter CheckAllocator)
CALLSTACKLEVEL | FIXED(20) | Depth of the call stack stored for each allocated memory chunk
MEMORYRETURNSTRATEGY | CHAR(40) | Decription of the strategy how memory is returned to the base allocator FREE_RAW_EXTENDS: all reserved memory may be returned to the base allocator FREE_RAW_EXTENDS_EXCEPT_INITIAL: all reserved memory except the initial size may be returned to the base allocator NOT_FREE_RAW_EXTENDS: no memory will be returned to the base allocator

More Information

MEMORYALLOCATORSTATISTICS


-8024: RESTORE CATALOG failed - SAP Documentation

Background documentation -8024: RESTORE CATALOG failed

Explanation

Parts of the database catalog are deleted and then restored during certain data definition statements.If an unexpected error occurs, error -8024 is displayed.

User Response

Create a database trace of the last database activities and save it.Send the database trace to Support so that they can trace and rectify the error.


-25341: Error generating 'create table/index statements': <error_text> - SAP Documentation

Background documentation -25341: Error generating 'create table/index statements': <error_text>

Explanation

Error executing the Loader command for exporting data.When you execute the EXPORT command, data is exported and commands for creating tables (CREATE TABLE) and indexes (CREATE INDEX) are generated.An error has occurred here. The error is described in more detail in the error message text specified in the error message.

User Response

Correct the cause of the error and re-execute the command.


UPDATE COLUMNS Command - SAP Documentation

Background documentation UPDATE COLUMNS Command

You can use the Loader command UPDATE COLUMNS to update the values of individual columns in tables.

Prerequisites

The table whose column values you want to update must be in the database.

Structure

Syntax Syntax

  1. <update_columns_command> ::=
  UPDATE COLUMNS TABLE <table_name>
    [<if_condition>]
    <update_column_spec> ...
    <set_column_spec> ...
    <data_instream_column_spec>

<update_column_spec> ::=
  <map_field_column>
| <column_assignment>

<set_column_spec> ::=
  SET <import_column_spec>

<data_instream_column_spec> ::=
  DATA <instream_columnformat_spec> [<import_lobcolumn_spec> ...]
End of the code.

Loader generates an internal UPDATE statement from the UPDATE COLUMNS command and then executes it.

<update_column_spec>, <set_column_spec>

You use the syntax rule update_column_spec to define the qualification columns. The qualification columns must be listed before the target columns set_column_spec in an UPDATE COLUMNS command. If you use map_field_column qualification columns, each row in the target table that is identified using the value(s) of the qualification column(s) of this data record is updated for each data record in the data stream. You therefore use the syntax rule map_field_column to assign the data fields of the qualification columns in the data stream to the columns in the target table and can thus specify the external data types.

Result

The individual row values in the specified table columns are updated. All of the changes made to the target table(s) have also been written to the log area of the database.

Errors: If errors occur while an UPDATE COLUMNS command is being executed, Loader terminates the process and displays an error message. A log file is written.

Example

Loader Tutorial, UPDATE COLUMNS

More Information

Loader Log File

Loader Commands and SQL Statements


-10857: Missing database name for connection - SAP Documentation

Background documentation -10857: Missing database name for connection

Explanation

An attempt was made to connect to the database using the SQLDBC_Connection::connect method, but no name was specified for the database instance.

User Response

Enter the name of the database instance in the properties of the SQLDBC_Connection::connect method:

  • f you want to establish the connection using the KEY property, use the XUSER list command to check whether an XUSER entry exists for the database instance.

  • If you want to establish the connection using the KEY=SQLOPT property, check whether the -d <database_name> option was set in the SQLOPT environment variables.


25603: Output of literal '<literal>' will be truncated - SAP Documentation

Background documentation 25603: Output of literal '<literal>' will be truncated

Explanation

A warning appears when you use the Loader command for exporting data. The length of the literal exceeds the output length that has been defined. The literal will only be partially displayed. This warning does not cause the command to terminate.

User Response

No user action is required.


-760: Memory allocation failed - SAP Documentation

Background documentation -760: Memory allocation failed

Explanation

The available main memory is too small or write-protected.

User Response

Check the program for a possible programming error. Increase the main memory or contact your support organization.


Creating Synonyms - SAP Documentation

Procedure documentation Creating Synonyms

A synonym is an alternative name for a database table. Within a database schema, each synonym has a unique name that is different from all other table names. You can use synonyms to shorten a long or complicated table names.

Prerequisites

  • You are logged on to the database as a database user.

  • You have privileges for the table.

    More information: SQL Reference Manual, Privileges: Overview

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the table for which you want to define the synonym.

  2. In the context menu of the table, choose [image] New [image] Synonym [image] .

  3. Enter the name of the synonym.

    More information: SQL Reference Manual, Synonym Name

  4. To make the synonym visible for all database users (public synonym), choose Public.

  5. In the context menu of the editor window, choose Create Synonym.

    The system creates the synonym in the following schema:

    • Private synonym: default schema (usually the schema of the database user who is logged on)

    • Public synonym: PUBLIC schema

More Information

SQL Reference Manual, CREATE SYNONYM Statement (create_synonym_statement)


-3071: Invalid datasource name - SAP Documentation

Background documentation -3071: Invalid datasource name

Explanation

The specified datasource name does not comply with the syntax for the datasource.

User Response

Correct the datasource name specified in the SQL statement.


-1102: Too complicated SQL statement (Too many subqueries) - SAP Documentation

Background documentation -1102: Too complicated SQL statement (Too many subqueries)

Explanation

  1. The SQL statement contains too many subqueries. The number of permissible subqueries depends on the kind of SQL statement.

  2. Subqueries were specified in a table expression both in the WHERE clause and in the HAVING clause of an SQL statement containing at least one corresponding subquery. This is not allowed.

User Response

Simplify the SQL statement or split it into several SQL statements.


-3037: Invalid volume name - SAP Documentation

Background documentation -3037: Invalid volume name

Explanation

The volume name specified during installation is invalid. This name depends on the environment in which the database system is running. Usually, it is an operating system file name.

User Response

The error message contains the incorrect volume name. Ensure that the name meets the conventions laid out for the environment in which the database system is running.


-1556: Data space full - SAP Documentation

Background documentation -1556: Data space full

Explanation

The data space of the database instance is full.

User Response

You need to increase the data space of the database instance by adding further data volumes. Any SQL statements that were started beforehand will be executed.


-807: Connection down, session released - SAP Documentation

Background documentation -807: Connection down, session released

Explanation

All database connections were closed with RELEASE.

User Response

Establish a new connection using CONNECT.


Schemas - SAP Documentation

Background documentation Schemas

You can use schemas to group database objects that logically belong together. A database object can belong to precisely one schema. Schemas are created implicitly or explicitly:

  • When you create a new database, the database system creates the database system administrator and implicitly creates a schema with the name of the database system administrator and other schemas for the database system administrator. In the demo database DEMODB, for example, were created the schemas DBADMIN, DOMAIN and SYSINFO.

  • When you create a new database user, the database system implicitly creates a schema with the name of the database user. In the demo database DEMODB, for example, was created the schema MONA.

  • Database administrators can create schemas explicitly. In the demo database DEMODB, for example, users DBADMIN or MONA can create schemas.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Schema

Open a database session for the database administrator MONA and use the CREATE SCHEMA statement to create schemas.

CREATE SCHEMA schema_1

//

CREATE SCHEMA schema_2

The schemas SCHEMA_1 and SCHEMA_2 are created.

See also: SQL Reference Manual, CREATE SCHEMA Statement (create_schema_statement)

Setting Schema for a Database Session

Open a database session for the database administrator MONA and use the SET statement to specify a schema different from schema MONA as the current schema for the database session. This means that if a schema name is not specified in subsequent SQL statements, this schema is assumed implicitly.

SET CURRENT_SCHEMA = schema_1

The schema SCHEMA_1 is specified as the current schema for the database session.

See also: SQL Reference Manual, SET Statement (set_statement)

Creating Database Objects in a Schema

If the database user does not enter a schema when creating the database object, the database system assigns the database object automatically to the current schema. Open a database session for the database administrator MONA and use the SET statement to specify the SCHEMA_1 as the current schema. The database user MONA creates the table PERSON_1. Table PERSON_1 is then created in the SCHEMA_1.

CREATE TABLE person_1 (pno_1 FIXED(6), name_1 CHAR(20), city_1 CHAR(20))

If you didn't use the SET Statement to specify SCHEMA_1 as current schema, the table PERSON_1 is created in the schema MONA, because the schema of the user logged on (MONA) is the current schema.

The database user who creates the database object can explicitly assign the database object to a schema. In the next example the database user MONA creates the table PERSON_2 and assigns it to the schema SCHEMA_2.

CREATE TABLE schema_2.person_2 (pno_2 FIXED(6), name_2 CHAR(20), city_2 CHAR(20))

Use in SQL statements the specification of the schema if the object belongs to another schema then the current schema. After inserting data into tables you can for example access table data using the following SELECT statement:

SELECT * FROM schema_2.person_2

For more information about accessing system table data, see Definitions of the System Tables.

Renaming Schemas

Open a database session for the database administrator MONA (the current schema is MONA) and use the RENAME SCHEMA statement to rename a schema.

RENAME SCHEMA schema_2 schema_3

Schema SCHEMA_2 is renamed to SCHEMA_3.

See also: SQL Reference Manual, RENAME SCHEMA Statement (rename_schema_statement)

Deleting Schemas

Open a database session for the database administrator MONA (the current schema is MONA) and use the DROP SCHEMA statement to delete schemas.

DROP SCHEMA schema_1

//

DROP SCHEMA schema_3

Schemas SCHEMA_1 and SCHEMA_3 are deleted.

See also: SQL Reference Manual, DROP SCHEMA Statement (drop_schema_statement)

More Information

More examples for Authorization, Data Definition


25601: Output of NULL values for column <column_name> will be truncated - SAP Documentation

Background documentation 25601: Output of NULL values for column <column_name> will be truncated

Explanation

A warning appears when you use the Loader command for exporting data. The character string for the value NULL is longer than the output length that has been defined for a column. The character string has only been partially displayed. This warning does not cause the command to terminate.

User Response

No user action is required.


-24963: ERR_VOLCHECK - error while checking volume - SAP Documentation

Background documentation -24963: ERR_VOLCHECK - error while checking volume

Explanation

The volume you have tried to configure is invalid. The system was unable to find/create a volume with the parameters specified.

User Response

Check your entries and the configuration of your operating system. Make corrections as appropriate and reconfigure the volume.


-1004: Too many correlated columns - SAP Documentation

Background documentation -1004: Too many correlated columns

Explanation

The SQL statement contains at least one correlated subquery. An attempt was made to use more than 64 correlated columns. At most 64 correlated columns can be used. Every single usage of a correlated column is counted.

User Response

Rearrange the SQL statement in such a way that 64 correlated columns suffice.Alternatively, you may want to try to achieve the effect of this SQL statement using several SQL statements.


-23101: Data in clipboard truncated - SAP Documentation

Background documentation -23101: Data in clipboard truncated

Explanation

When the contents of an LOB column are exported to the clipboard, a maximum of 1048576 bytes are transferred. If there is more data than this in the results, it will be ignored.

User Response

You can export all the contents of an LOB column that exceeds 1048576 bytes to a file.


25966: Error at record <record_count> in input file <file_name> - SAP Documentation

Background documentation 25966: Error at record <record_count> in input file <file_name>

Explanation

You have executed a command to import data (IMPORT) of a table in the PAGE format. An error occurred in the data record <record_count>. See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


IMPORT TABLE Command - SAP Documentation

Background documentation IMPORT TABLE Command

You can use the Loader command IMPORT TABLE to control the import of application data and/or the corresponding database catalog information for a user’s objects.

Prerequisites

The objects imported with an IMPORT TABLE command belong to the user logged on to the database at the time of import. You have either exported the required data with the corresponding EXPORT command or the data is available in the specified data format.

Structure

Syntax Syntax

  1. <import_table_command> ::=
  IMPORT TABLE <table_name>
    [<if_condition>]
    [<duplicates_clause>]
    <catalog_data_instream_table_spec>
    [<package_spec>]

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<catalog_data_instream_table_spec> ::=
  <catalog_instream_spec>
| <data_instream_table_spec>
| <catalog_instream_spec> <data_instream_table_spec>
<catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>
<data_instream_table_spec> ::=
  <data_instream_part_spec>
| <data_instream_columns_spec>
<data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>
<data_instream_columns_spec> ::=
  DATA <instream_columnformat_spec>
    [<import_column_spec> ... <import_lobcolumn_spec> ...] [<usage_spec>]

<package_spec> ::=
  PACKAGE <oustream_csv_spec>
End of the code.
<catalog_instream_spec>, <data_instream_table_spec>

Depending on whether database catalog and/or application data is imported, the following data streams are generated during the import:

  • Data stream with database catalog information CATALOG <instream_ddl_spec>

  • Data stream with application data data_instream_table_spec

System table SYSLOADER.TRANSFORMATIONMODEL and additional system tables are filled.

See: Data Stream

Syntax Syntax

  1. IMPORT TABLE <table_name>
  [<if_condition>]
  [<duplicates_clause>]
  <catalog_instream_spec> <data_instream_table_spec>
  [<package_spec>]
End of the code.

This IMPORT TABLE command imports the data from the specified table (database catalog and application data).

Syntax Syntax

  1. IMPORT TABLE <table_name>
  <catalog_instream_spec>
  [<package_spec>]
End of the code.

This IMPORT TABLE command imports the database catalog information of a table belonging to the application.

Syntax Syntax

  1. IMPORT TABLE <table_name>
  [<if_condition>]
  [<duplicates_clause>]
  <data_instream_table_spec>
  [<package_spec>]
End of the code.

This IMPORT TABLE command imports the application data from the specified table.

More information on the syntax element data_instream_table_spec:

<data_instream_part_spec> ::= DATA <instream_tableformat_spec>

To import the data in the PAGES or RECORDS formats, use syntax variant DATA <instream_tableformat_spec>. We recommend this option if you do not need the data in a readable format and you want to import the data from one SAP MaxDB database to another. All the data, including the LOB data, is in the specified data stream.

<data_instream_columns_spec> ::= DATA <instream_columnformat_spec> [<import_column_spec>... <import_column_spec>...] [<usage_spec>]

To import the data in CSV or FWV [BINARY] formats, use syntax variant DATA <instream_columnformat_spec>. We recommend this option if you need the data in a readable form, for example for tools from other providers. It is possible to import the data from one SAP MaxDB database to another, but it takes much longer than if you use RECORDS or PAGES format. If you use CSV and FWV [BINARY] formats, extra data streams are created for the LOB data during export. If you want to import LOB values, you need to specify a separate data stream for these column values. You can do this with the import_lobcolumn_spec syntax element (Importing LOB Values).

<usage_spec>

You can use the syntax rule usage_spec to specify whether data that is available in the CSV or FWV [BINARY] format is to be imported with a mass INSERT (RECORDS USAGE) or with pages (PAGE WITH ...). When importing sorted application data to a table, you can control the performance with usage_spec. You can import by pages (PAGE WITH ...) if the table definition of the target table satisfies certain conditions. If you select PAGE WITH ..., the data is entered directly in the pages of the database and no log entries are written. This improves the performance compared to the RECORDS USAGE option. However, the table is write-protected until you back up the new application data.

See: Performance Improvement in the IMPORT TABLE Command

<if_condition>

You can select individual data records from a DATA data stream in the formats CSV, FWV or RECORDS and then import only these records to the specified table.

See: Selecting Data records

<duplicates_clause>

You use the DUPLICATES clause to specify how to proceed when importing data from a data stream if a row with the same key as the new row already exists in the table. This clause is not evaluated if the data is imported into the database in PAGES format.

REJECT DUPLICATES | The new line is rejected with an error message (default value).
IGNORE DUPLICATES | The new line is not inserted.
UPDATE DUPLICATES | The new line overwrites the existing line.
<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

Result

The application data and/or database catalog are imported to the data_instream_table_spec and catalog_instream_spec data streams. If necessary, all entries in the TRANSFORMATIONMODEL table are exported to the package_spec data stream.

Errors: The import cannot be completed successfully. The Loader logs the cause of the error in the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, IMPORT TABLE

More Information

Importing: Loader Commands

EXPORT TABLE Command

Loader Log File

Loader System Tables


-2014: Identifier too long - SAP Documentation

Background documentation -2014: Identifier too long

Explanation

The specified identifier is too long for the SQL mode used.

User Response

Pay attention to the restrictions in the table when specifying the identifier.

SQL Mode | Length of Identifier
ANSI | 18 characters maximum
DB2 | 18 characters maximum
ORACLE | 30 characters maximum
INTERNAL | 32 characters maximum


-1405: Missing indicator variable, output parameter with NULL value - SAP Documentation

Background documentation -1405: Missing indicator variable, output parameter with NULL value

Explanation

The indicator variable required for returning the NULL value to the SQL variable is missing.

User Response

Specify the indicator variable with the parameter.


-24906: ERR_EBFDIRTY: invalid format of external backup history - SAP Documentation

Background documentation -24906: ERR_EBFDIRTY: invalid format of external backup history

Explanation

The External Backup History file is not in the expected format.

User Response

Depending on whether you require the information in this file or not, either contact Support or create a backup copy of this file and replace it with an empty file with the same name.


-24987: ERR_TOSMALL - packet size too small for answer - SAP Documentation

Background documentation -24987: ERR_TOSMALL - packet size too small for answer

Explanation

The client application has provided insufficient memory space for the DBM server’s response.

User Response

Modify your DBM command so that the response is smaller.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


EXPORT SCHEMA Command - SAP Documentation

Background documentation EXPORT SCHEMA Command

You can use the Loader command EXPORT SCHEMA to export the data belonging to the application of the specified schema.

Prerequisites

Only the owner of the schema can execute the EXPORT SCHEMA command.

Structure

Syntax Syntax

  1. <export_schema_command> ::=
  EXPORT SCHEMA <schema_name>
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<catalog_data_outstream_part_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_part_spec>
| <catalog_outstream_spec> <data_outstream_part_spec>
<catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>
<data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>

<package_spec> ::=
  PACKAGE <oustream_csv_spec>

<restart_spec> ::=
  RESTART <package_guid>
<package_guid> ::=
  <unsigned_integer>
End of the code.
<catalog_outstream_spec>, <data_outstream_part_spec>

Depending on whether the database catalog and/or application data is exported, the following data streams are generated during export:

  • Data stream for database catalog definitions CATALOG <outstream_ddl_spec>

  • Data stream for application data DATA <outstream_tableformat_spec>

System table SYSLOADER.TRANSFORMATIONMODEL and additional system tables are filled. Only one of the formats PAGES or RECORDS is possible for the data stream of the outstream_tableformat_spec application data.

See: Data Stream, PAGES, RECORDS

If the name of the schema is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in double quotation marks.

Syntax Syntax

  1. EXPORT SCHEMA <schema_name>
  [<configuration_spec>]
  <catalog_outstream_spec> <data_outstream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT SCHEMA command exports the data belonging to the application of the specified schema.

Syntax Syntax

  1. EXPORT SCHEMA <schema_name>
  <catalog_outstream_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT SCHEMA command exports the database catalog information belonging to the application of the schema.

Syntax Syntax

  1. EXPORT SCHEMA <schema_name>
  [<configuration_spec>]
  <data_outstream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT SCHEMA command exports the application data of the specified schema.

<configuration_spec>

You can exclude tables from the export.

  • If you do not specify a data stream using CONFIGURATION <instream_csv_spec>, all the application data is exported.

  • If you specify a data stream using CONFIGURATION <instream_csv_spec>, you can exclude the application data of selected tables from the export of the outstream_tableformat_spec application data. The tables must be identified in the data stream by specifying their schema and table name. The information about which tables are not exported is stored in the system tables. One way of displaying this information is to display the system table SYSLOADER.TRANSFORMATIONMODEL. The tables excluded from the export of the application data have the value TRUE in the EXCLUDE column.

The database catalog entries CATALOG <outstream_ddl_spec> are always exported for all tables, regardless of the restrictions set using CONFIGURATION <instream_csv_spec>.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

<restart_spec>

You can restart the export or import using the package_guid (ID created by Loader for every command at runtime. This integer is always 24 bytes long). The user can determine the package_guid of the corresponding export or import commands from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command with the corresponding package_guid using the restart_spec syntax element.

See: Restarting

Result

The application data and/or the database catalog are exported to the data_outstream_part_spec and catalog_outstream_spec data streams. If necessary, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to the package_spec data stream. You can use the corresponding IMPORT command to restore the database catalog and/or the application data.

Errors: The export cannot be completed successfully. Loader writes the cause of the error to the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, EXPORT SCHEMA

More Information

Exporting: Loader Commands

IMPORT SCHEMA Command

Loader Log File

Loader System Tables


-10332: No callback function supplied for stream parameter (<number>) - SAP Documentation

Background documentation -10332: No callback function supplied for stream parameter (<number>)

Explanation

No callback function was supplied for a liveCache stream.

User Response

Check the parameters supplied.


BW Feature Package - SAP Documentation

Background documentation BW Feature Package

BW Feature Package improves the performance of BI systems running on SAP MaxDB. It is available for SAP customers as of SAP MaxDB version 7.6.01.

More Information

SAP Note 1040431

SAP MaxDB Wiki: https://wiki.sdn.sap.com/wiki/x/W0o


-7006: Reserved identifier not allowed - SAP Documentation

Background documentation -7006: Reserved identifier not allowed

Explanation

In the current SQL mode, the specified name is a reserved keyword and must not be used to identify database objects.

User Response

Correct the SQL statement using another <identifier>.


-24971: ERR_XPNOCHECK - no running parameter check - SAP Documentation

Background documentation -24971: ERR_XPNOCHECK - no running parameter check

Explanation

A restart was not possible after correcting a single parameter because no check run was active when the database parameters were checked.

User Response

Start the database parameter check again.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


Deleting Databases - SAP Documentation

Procedure documentation Deleting Databases

Note Note

You can also delete databases using Installation Manager.

For more information, see your installation documentation.

End of the note.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for managing installations.

    More information: Glossary, Server Permission

  • The database is in the OFFLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Delete Database...

  3. You can select the following options:

    Option

    Description

    Force DBM servers to stop

    Stops all DBM servers immediately, regardless of whether or not they are still executing commands.

    If you do not choose this option, Database Studio waits until the DBM servers have executed all their current commands.

    Do not delete database files

    Database Studio only deletes the database service, but the files (volumes, log files, and so on) remain in the file system. You have to use operating system tools to access these files; you can no longer access them using database tools.

  4. To delete the database, choose Delete.

More Information

Initializing Databases


-28837: Consistent view is still bound to another transaction - SAP Documentation

Background documentation -28837: Consistent view is still bound to another transaction

Explanation

An internal transaction inherited the consistent view from the outer transaction.

User Response

Internal error.


ADO.NET - SAP Documentation

Background documentation ADO.NET

SAP MaxDB provides an ADO.NET interface which you can use to access SAP MaxDB databases from the Microsoft ADO.NET framework.

More Information

ADO.NET Interface


-735: No syntax check for CONNECT command - SAP Documentation

Background documentation -735: No syntax check for CONNECT command

Explanation

CONNECT statements that are not used to establish the connection to the database instance for the check run are not checked for syntax errors during precompilation.

User Response

Pay special attention to the correct spelling when entering the statement.


Restoring Databases: Overview - SAP Documentation

Background documentation Restoring Databases: Overview

  • Restoring Databases

  • Initializing Databases

  • Recreating Damaged Indexes

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Restoring Databases


Kernel Threads - SAP Documentation

Procedure documentation Kernel Threads

The Performance user menu of the DBA Cockpit contains, among other things, a display of the activities of the individual tasks.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] Kernel Threads [image] .

Result

The system displays an overview of the running activities of the individual tasks. You can set up a view of the tasks that meets your current requirements. This thread overview helps you to identify the type of activities in your database system and possible bottlenecks by using the displays for the wait and lock situations. The following user menus are available:

  • Task Manager

  • Thread Overview

  • Thread Statistics

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases


-10301: Invalid host type (<name>) for parameter (<number>) - SAP Documentation

Background documentation -10301: Invalid host type (<name>) for parameter (<number>)

Explanation

The method that was called could not be executed, because the <name> data type entered in the SQLDBC_PreparedStatement::bindParameter method is invalid.

User Response

  • Only choose values for the data type (SQLDBC_Hosttype) specified in the SQLDBC_Types.h file.

  • Check whether your version of the SQLDBC interface supports the data type entered.


-8003: Log and data must be compatible - SAP Documentation

Background documentation -8003: Log and data must be compatible

Explanation

You have either imported a data backup that does not match with the log area, or you have imported a log backup that does not match with the data area.

User Response

  • Check whether the database ID of the backup and database instance are correct.

  • Use the backup that belongs to your database instance.


-128: Log backup is not possible because the log overwrite mode has been enabled - SAP Documentation

Background documentation -128: Log backup is not possible because the log overwrite mode has been enabled

Explanation

You tried to save the log area, either by starting an interactive log backup or by attempting to activate the automatic log backup. This is not allowed in the current database state, because automatic overwrite mode for the log area is enabled. Enabling automatic log overwrite mode canceled the backup history, and the last data backup can no longer be used to fully restore the database instance. Therefore, it doesn't make any sense at present to back up the log.

User Response

  1. Disable automatic overwrite mode for the log area.

  2. Create a complete data backup to start a new backup history.

  3. Repeat the failed command.


-3019: Invalid exponent - SAP Documentation

Background documentation -3019: Invalid exponent

Explanation

  1. A numeric final or temporary result is greater or less than the values which can be represented by a floating point number.

  2. A numeric value is greater or less than permitted by the data type of a specified column.

User Response

  1. If a numeric intermediate result is too large or too small, the attempt can be made to prevent an overflow or underflow by rearranging the arithmetic operations.

  2. Use a QUERY statement issued on the DOMAIN.COLUMNS system table to find out the data type of the affected column. Correct the parameter values accordingly.


-25601: Error restoring table <table_name>. Table does not exist – table must be created before import. - SAP Documentation

Background documentation -25601: Error restoring table <table_name>. Table does not exist – table must be created before import.

Explanation

You have attempted to import data in the PAGES format (provided by the database) into a table that the Loader does not find in the database catalog.

User Response

If the database contains a table with the specified name, make sure that the table is qualified fully in the command. If the table does not exist, create it. Execute the command again.


-24958: ERR_BAOVERWRITE - file already exists, cannot overwrite - SAP Documentation

Background documentation -24958: ERR_BAOVERWRITE - file already exists, cannot overwrite

Explanation

This error can occur when you back up data.You specified a backup template that was already used for a backup and was defined with the property cannot overwrite.

User Response

Use a different backup template, change the definition of the backup template or delete the existing backup using the operating system functions.

Caution Caution

If you delete or overwrite a backup on a data carrier, all the data saved on the data carrier is lost.

End of the caution.


-28011: Container-entry is out of date - SAP Documentation

Background documentation -28011: Container-entry is out of date

Explanation

A container is registered in the local container directory, which has been deleted and recreated in the kernel in the meantime. Therefore the locally saved information is outdated.

User Response

Contact Support.


WebDAV Servlet - SAP Documentation

Background documentation WebDAV Servlet

SAP MaxDB provides a WebDAV servlet webdavServletMaxDB-<version>.war that implements the WebDAV protocol in accordance with RFC2518 (see http://www.w3.org).

You can use an SAP MaxDB database as a document store and access the documents stored in it directly via the WebDAV servlet using a web client such as Microsoft Windows Explorer. You can use the WebDAV servlet on any operating system supported by the database system.

Note Note

The WebDAV servlet is a new implementation of the SAP MaxDB WebDAV interface. If you have already used WebDAV for access to an SAP MaxDB database in software version 7.5, the installation program automatically adapts your WebDAV document store for use with the new WebDAV servlet.

End of the note.

Prerequisites

As runtime environment for the SAP MaxDB WebDAV servlet, you need a servlet container, for example Apache Tomcat.

Activities

Installing the WebDAV Servlet

Calling the WebDAV Servlet

More Information

Concepts of the Database System,

  • Repositories

  • Architecture of the Interfaces

You can use the following tools to access objects in a document store:

  • Database Studio

    More information: Editing Objects in a Repository


-4009: Unknown referential constraint name - SAP Documentation

Background documentation -4009: Unknown referential constraint name

Explanation

There is no referential CONSTRAINT definition of the specified name.

User Response

Use a QUERY statement issued on the DOMAIN.FOREIGNKEYS system table to view the CONSTRAINT definitions already in use. Change the name of the referential CONSTRAINT statement in the SQL statement accordingly.


-1116: Too long trigger parameters - SAP Documentation

Background documentation -1116: Too long trigger parameters

Explanation

You defined a trigger whose parameters exceed the total length allowed.

User Response

Try to reduce the number of parameters.


300: Integrity violation - SAP Documentation

Background documentation 300: Integrity violation

Explanation

Insertions or updates would violate integrity constraints specified in the definition of the base or view table.

User Response

The error message specifies the column which would violate the integrity constraints. Correct the input value for the corresponding column.


-28518: Not in Critical Section - SAP Documentation

Background documentation -28518: Not in Critical Section

Explanation

The omsLeave function was called for an instance of OmsCriticalSection although this instance is not in the critical section.This is not allowed.

User Response

Contact Support.


-8040: Key does not exist - SAP Documentation

Background documentation -8040: Key does not exist

Explanation

The attempt was made to delete the key for the specified table. The specified table has no user-defined key. The key implicitly generated with the column SYSKEY cannot be deleted.

User Response

The SQL statement is not needed because there is already the desired table definition.


Data Area - SAP Documentation

Procedure documentation Data Area

In the Space user menu of the DBA Cockpit, you can find, among other things, comprehensive display and administration options for the data area.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Data Area [image] .

Caution Caution

For SAP NetWeaver 7.1, this status information is displayed in the Data Area or Volumes menu, which is different from the menu described below.

End of the caution.

Result

The display contains the following information and administration options:

  • Display / Configuration of data volumes

    Total size of the data area in the unit of measurement that you specified and other configuration information

  • Show/hide utilization details

    You can show or hide the following details about the utilization of the data area:

    • Occupiable Area, Occupied Area (Actually Occupied Space in Data Area), Free Area

    • Permanently occupied area (SQL data; for SAP liveCache technology, also OMS data and references to undo log entries)

    • Temporarily occupied area (for SAP liveCache technology, this also includes, for example, data that belongs to consistent views and was displaced from the OMS heap)

    • Size of an incremental backup (specifies how many pages an incremental data backup would consist of at this point in time)

    • Shadow area

  • Show/hide data volumes

    You can show or hide the following displays and change options for the data volumes:

    • Display of data volumes (size, type, device/path and file name, occupation and access information and so on)

    • Add, change or delete data volumes

      Select Add Volume/Change Volume/Delete Volume and enter the required information where prompted. Creating a new volume might take some time, as the new volume has to be formatted.

More Information

  • Monitoring the Data Area

  • Log Area

  • Database/liveCache Alert Monitor, Data Area

  • Glossary, Consistent View, OMS, OMS Heap


-8888: SERVERDB not accessible - SAP Documentation

Background documentation -8888: SERVERDB not accessible

Explanation

To tried to start a database session. This is impossible for one of the following reasons:

  1. The database name was specified incorrectly.

  2. The database instance has not been started yet.

User Response

  1. Check the specified database name.

  2. Start the database instance. Pay attention to errors that might occur.


-28819: Object has been updated by other transactions - SAP Documentation

Background documentation -28819: Object has been updated by other transactions

Explanation

An instance of the type OmsOutOfDate was captured as a DbpError.

User Response

Contact Support.


-711: Implicit CONNECT: missing user or SERVERDB - SAP Documentation

Background documentation -711: Implicit CONNECT: missing user or SERVERDB

Explanation

During execution of an implicit CONNECT, the user entries or the database name could not be found.

User Response

Open an XUSER file, or enter the CONNECT parameters using runtime options.


-25228: Incorrect date-time format, all patterns accepted in the SET menu are valid - SAP Documentation

Background documentation -25228: Incorrect date-time format, all patterns accepted in the SET menu are valid

Explanation

The command to export or import data contains an error.The specification for the representation of date or time values (specified template) is invalid.

User Response

Correct the specification so that the display matches the date or time value, and re-execute the command.


Data Carrier Type - SAP Documentation

Background documentation Data Carrier Type

Loader uses a data carrier to physically store the data stream outside the database during export/import. With the syntax element mediumtype_spec you can specify the type of the data carrier for the data stream in import and export commands.

Structure

Syntax Syntax

  1. <mediumtype_spec> ::=
  FILE
| PIPE
| TAPE [<ebid_spec>]

<ebid_spec> ::=
  EBID '<literal>'
End of the code.

Loader differentiates between the data carrier types for the data stream specified in mediumtype_spec. If you do not specify a data carrier type, Loader uses the file system (FILE) as the data carrier for the data stream.

FILE | Data carrier for the data stream is the file system.
PIPE | Data carrier for the data stream is a pipe.
TAPE | (Relevant for EXPORT DB only): Data carrier for the data stream is a tape. Communication with the tape uses a third-party backup tool.
TAPE [<ebid_spec>] | (Relevant for IMPORT DB only): Data carrier for the data stream is a tape. Communication with the tape uses a third-party backup tool. With EBID '<literal>'you specify the external backup ID of the data stream to be imported.

Using Third-Party Backup Tools: Data carrier type TAPE is supported when you export/import the entire database and/or the entire database catalog (EXPORT/IMPORT DB). In these cases the third-party backup tool set for the Loader session is used for exporting/importing.

More Information

Exporting and Importing Using Third-Party Backup Tools

EXPORT DB Command

IMPORT DB Command

Data Description


-7003: NOT NULL not allowed - SAP Documentation

Background documentation -7003: NOT NULL not allowed

Explanation

Columns with NOT NULL specification cannot be added to a table with the ALTER TABLE statement.

User Response

Repeat the SQL statement after removing the specification NOT NULL.


-25002: No database connection possible - missing database name; specify the database name in the USE USER command - SAP Documentation

Background documentation -25002: No database connection possible - missing database name; specify the database name in the USE USER command

Explanation

You have not specified a database name in the command to log on a database user. Therefore the database user could not be logged on to the database.

User Response

Correct the command and then re-execute it.


-768: Invalid escape value - SAP Documentation

Background documentation -768: Invalid escape value

Explanation

The input host variable is longer than one character.

User Response

Use a correct host variable.


EXPORT DB - SAP Documentation

Background documentation EXPORT DB

You can use the EXPORT DB command to export all data required for use of a database. Only the owner of the schema may execute the EXPORT DB command.

Prerequisites

You can use all of the demo data in database DEMODB. Start the Loader and log onto database DEMODB as database system administrator DBADMIN with the password SECRET.

Use the session mode: loadercli -d demodb -u dbadmin,secret.

Activities

The data of the DEMODB database is to be exported. You can make entries after the keyword CATALOG and/or DATA to select what is to be exported, the database catalog and/or the data belonging to the application.

Export of the Database Catalog

You can export the database catalog information for all database users belonging to the application of the database.

EXPORT DB

  CATALOG OUTSTREAM 'demodb_ddl.catalog'

The database catalog (CATALOG) is exported in the DDL (default value) format.

See also: Loader, Data Stream

Export of the Application Data

You can export the application data for all database users.

EXPORT DB

  DATA OUTSTREAM 'demodb_pages.data'

The application data (DATA) is exported in the PAGES format (default value).

EXPORT DB

  DATA OUTSTREAM 'demodb_records.data' RECORDS

The application data (DATA) is exported in the RECORDS format.

A PAGES export uses a database format (based on a page), and is therefore faster than an export that uses the RECORDS format of the Loader. You may not change a data file in either case as the binary format is specific to the Loader.

See also: Loader, PAGES, RECORDS

Export of the Database Catalog and the Application Data

You can export the data belonging to a database application

EXPORT DB

  CATALOG OUTSTREAM 'demodb_ddl.catalog'

  DATA OUTSTREAM 'demodb_pages.data'

Note the sequence of the syntax elements. Always enter the syntax element for exporting the database catalog first, and then the syntax element for exporting the application data.

Excluding Tables from the Export

By specifying a data stream after the keyword CONFIGURATION, you can exclude the application data of tables specified in this data stream. The tables must be identified by specification of their schema and table name.

The CITY and HOTEL tables are to be excluded from the export. Create the hotel_table.configuration file with the following contents:

HOTEL,CITY

HOTEL,HOTEL

Specify the following export command in the Loader session mode. Note the sequence of the syntax elements. First, enter the syntax element that excludes the table from the export.

EXPORT DB

  CONFIGURATION INSTREAM 'hotel_table.configuration'

  CATALOG OUTSTREAM 'demodb_ddl.catalog'

  DATA OUTSTREAM 'demodb_pages.data'

The database catalog entries of all tables are always imported, regardless of the restrictions stipulated in hotel_table.configuration.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL table are exported to the specified data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

EXPORT DB

  CATALOG OUTSTREAM 'demodb_ddl.catalog'

  PACKAGE OUTSTREAM 'demodb_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Complete Syntax of the EXPORT DB Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

EXPORT DB

  CONFIGURATION INSTREAM FILE 'hotel_table.configuration' CSV ASCII

  CATALOG OUTSTREAM FILE 'demodb_ddl.catalog' DDL

  DATA OUTSTREAM FILE 'demodb_pages.data' PAGES

  PACKAGE OUTSTREAM FILE 'demodb_csv.package' CSV

For a complete syntax description, see EXPORT DB Command in the Loader documentation.

More Information

Other example commands for Exporting

Corresponding import command IMPORT DB

Session Mode


-899: Error unknown - SAP Documentation

Background documentation -899: Error unknown

Explanation

An unknown error has occurred.

User Response

Contact Support.


-25320: The LOB value could not be loaded into column - SAP Documentation

Background documentation -25320: The LOB value could not be loaded into column

Explanation

The Loader command to import or update data contains an error.An error occurred when importing a value into a column of data type LOB. The error message contains extra text outlining the cause of the failed upload.

User Response

Correct the cause of the error and re-execute the command.


-28102: Too many index partitions - SAP Documentation

Background documentation -28102: Too many index partitions

Explanation

The attempt to create too many partitions for an index failed.

User Response

At the moment a maximum of 64 partitions is allowed. Set the parameter OMS_MAX_KEY_PARTITIONS accordingly.


-806: DB session number not allowed - SAP Documentation

Background documentation -806: DB session number not allowed

Explanation

The specified database session number is invalid.

User Response

Insert a database session number between 1 and 8 into the application program.


-2025: Invalid number of backup devices - SAP Documentation

Background documentation -2025: Invalid number of backup devices

Explanation

The number of backup media specified for a backup or restore operation does not correspond to the general database parameter MaxBackupMedia.

User Response

Check the value of this parameter and modify it if necessary.


TRIGGERS - SAP Documentation

Example documentation TRIGGERS

Use of the system table DOMAIN.TRIGGERS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define triggers. Proceed as described in SQL Tutorial, Database Triggers.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table TRIGGERS to determine the following database information, among other things:

  • UPDATE-Trigger for the table HOTEL

    SELECT triggername, definition

    FROM DOMAIN.TRIGGERS

    WHERE tablename = 'HOTEL'

    AND UPDATE = 'YES'

  • Table and action for which the trigger HOTEL_UPDATE was defined

    SELECT owner, triggername, insert, update, delete

    FROM DOMAIN.TRIGGERS

    WHERE triggername = 'HOTEL_UPDATE'


Monitoring Statistics - SAP Documentation

Procedure documentation Monitoring Statistics

In the Performance user menu of the DBA Cockpit, you can find, among other things, a monitor for analyzing the current status of an SAP liveCache database since the last start of liveCache Monitoring.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] Monitoring Statistics [image] .

Result

These monitoring statistics deliver data such as statistical data about the accesses to individual caches and pages, SQL statistics and information about lock behavior and database traces.

More Information

Caches, Activities Overview, SQL Locks, Database Trace


-28908: Function must be deterministic - SAP Documentation

Background documentation -28908: Function must be deterministic

Explanation

A function was specified in the CREATE INDEX-statement providing a result which is not deterministic. This is not allowed.

User Response

Change the function in such a way that a deterministic result is provided.


-7080: Query in statement not allowed - SAP Documentation

Background documentation -7080: Query in statement not allowed

Explanation

The search condition of an IF or WHILE statement contains a QUERY statement. This is not allowed.

User Response

Execute the QUERY statement outside of the IF or WHILE statement, and save the results in program variables. Then use these results in the IF or WHILE statement.


-25210: Invalid SCALE spec. Scale range: -127 <= SCALE <= 127 - SAP Documentation

Background documentation -25210: Invalid SCALE spec. Scale range: -127 <= SCALE <= 127

Explanation

The command to export or import data contains an error.A number specified for SCALE must be between -127 and +127.

User Response

Correct the entry you made for SCALE and re-execute the command.


-10210: Invalid command state (no prepared SQL command) - SAP Documentation

Background documentation -10210: Invalid command state (no prepared SQL command)

Explanation

The SQLDBC_PreparedStatement::execute method that was called could not be executed, because the statement was not prepared using the SQLDBC_PreparedStatement::prepare method.

User Response

Prepare (parse) SQL statements using the SQLDBC_PreparedStatement::prepare method.


-25392: [SAP AG][SQLOD32 DLL][MaxDB] <error_text> - SAP Documentation

Background documentation -25392: [SAP AG][SQLOD32 DLL][MaxDB] <error_text>

Explanation

An exception occurred while processing an SQL statement. The cause of the error is described in more detail in <error_text>.

User Response

Fix the error and execute the SQL statement again.


-3102: Invalid subtrans structure - SAP Documentation

Background documentation -3102: Invalid subtrans structure

Explanation

In a database procedure, more or fewer subtransactions were dynamically opened than were closed. The subtransactions opened but not closed until the end of the database procedure were rolled back.

User Response

Check which error in the database procedure generated this nesting of subtransactions. Correct the database procedure.


-750: FFETCH or ARRAY-FETCH and FETCH mix not allowed - SAP Documentation

Background documentation -750: FFETCH or ARRAY-FETCH and FETCH mix not allowed

Explanation

ARRAY FETCH and FETCH statements cannot be issued on the same result set.

User Response

All statements which refer to the same result set must be specified either as ARRAY FETCH or FETCH.


-7008: Updates of this table not allowed - SAP Documentation

Background documentation -7008: Updates of this table not allowed

Explanation

The specified table cannot be updated. The following possible reasons are possible:

  1. The table specified in an SQL statement with CURRENT OF and result table name is not the table indicated in the FROM clause of the QUERY statement which generated the result table.

  2. The SQL statement contains a correlated subquery which uses the table to be updated.

  3. The QUERY expression was specified with FOR UPDATE. However, the QUERY expression contains statement parts which cannot be used together with a FOR UPDATE specification (DISTINCT, GROUP CLAUSE, UNION, INTERSECT, EXCEPT, SUBQUERY).

  4. In the DB2 SQL mode, the QUERY expression of an SQL statement with CURRENT OF <result_table_name> contains a FOR FETCH ONLY statement.

User Response

  1. Replace the table name with that used in the FROM clause of the QUERY statement or repeat the QUERY statement using the required table name.

  2. In the case of the correlated subquery, the desired effect can be achieved by generating a named result table which is then used in the subquery.

  3. You must delete the FOR UPDATE or DISTINCT specification, or similar.

  4. Repeat the QUERY expression, omitting FOR FETCH ONLY, or delete the CURRENT OF <result_table_name> specification from the SQL statement.


-886: DECLARE SECTION BEGIN or END missing - SAP Documentation

Background documentation -886: DECLARE SECTION BEGIN or END missing

Explanation

The declare section has an incorrect delimiter statement.

User Response

Each declare section must be included in the BEGIN DECLARE SECTION and END DECLARE SECTION.


From -11100 to -11199 - SAP Documentation

Background documentation From -11100 to -11199

-11100 | Unknown error
-11101 | Initialization failed [<description>].
-11104 | Session not connected.
-11105 | Cannot get column name for column <number>.
-11106 | No result set found.
-11107 | Statement not prepared.
-11108 | Invalid parameter index <number>.
-11109 | Column/Parameter <number> truncated.
-11111 | Parameter/Column (<number>) not bound.
-11113 | Number of parameters does not match number of result columns.
-11115 | Syntax error. Expected: <description>.
-11116 | Wrong parameter type. Expected: <description>.


Displaying Information About the Database Analyzer - SAP Documentation

Procedure documentation Displaying Information About the Database Analyzer

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for using Database Analyzer.

    For more information, see Glossary, Server Permission.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Analyzer tab page.

    Information About the Database Analyzer

    Property

    Description

    Level

    Filter the information from the DBAN.prt file by warning level

    Warning levels 1 to 3: bottleneck warnings with low, medium, and high priority

    State

    To start or stop the Database Analyzer, click State.

    For more information, see Starting or Stopping Database Analyzer.

    Configuration File

    Name of the configuration file to be used

    If you do not specify a configuration file, Database Analyzer uses the dbanalyzer<version>.cfg file in the <dependent_path>/env/ database directory.

    For more information, see Database Analyzer, Database Analyzer Configuration File.

    Log Directory

    Log file directory

    For more information, see Database Administration, Log Files.

    Interval

    Time interval between two analyses

    Default value: 900 s

    Process ID

    Process ID of the Database Analyzer

    Session ID

    Session ID of the database session

More Information

Database Analyzer documentation


-25333: Error getting index definitions for table <table_name> (<SQL_error_text>) - SAP Documentation

Background documentation -25333: Error getting index definitions for table <table_name> (<SQL_error_text>)

Explanation

Error executing the Loader command for exporting data.When you execute an EXPORT command, the data as well as index definition of the table is exported for each table that has to be exported. This means that the exported table can be completely restored when you call the IMPORT command.An error occurred in the export of the index definition of the table. You can find the cause of the error in the SQL error text.

User Response

Analyze the cause of the error and re-execute the command.


-4023: Unknown function name - SAP Documentation

Background documentation -4023: Unknown function name

Explanation

There is no function with the specified name.

User Response

  1. Do without the specified function.

  2. Check whether the specified function is only unavailable in the SQL mode you are using.Open a database session using the SQL mode in which the function is available.

  3. Generate a database function with the specified name and the required functionality.


-4003: Unknown user name - SAP Documentation

Background documentation -4003: Unknown user name

Explanation

There is no user with this name.

User Response

Repeat the SQL statement with a valid user name.


-25364: Name of table to import <table_name> and the table currently being processed in data file <file_name> do not match - SAP Documentation

Background documentation -25364: Name of table to import <table_name> and the table currently being processed in data file <file_name> do not match

Explanation

You attempted to import the data of the tables of an entire database, of a database user, or of a schema with the format PAGES or RECORDS. The table names of the entries in the Loader system tables and the data file are different. See the log file for additional messages describing the cause of the error.

User Response

Fix the cause of the error and restore the initial situation on the target system. Then re-execute the IMPORT command.


Displaying Information About Snapshots - SAP Documentation

Procedure documentation Displaying Information About Snapshots

A snapshot stores the state of the data area at the time of the snapshot. Once you have made a snapshot, you can continue to work normally with the data for the database and make changes to the data. You can later return to the state the data area was in at the time of the snapshot or accept all changes since the snapshot.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

    More information: Glossary, Server Permission

  • The database is in the ONLINE or ADMIN operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Snapshots tab page.

    Snapshots: Information

    Property

    Description

    ID

    When creating a snapshot, the system assigns it a unique ID (number).

    Create Date

    Creation date

    Used Size

    Space that the snapshot currently uses in the data area

    Max. needed Size

    Maximum size that the snapshot can reach (if all data that is part of the snapshot is subsequently changed)

    Consistent

    Shows whether the snapshot is not only structurally consistent, but transactionally consitent as well

    Comment

    Comment

More Information

Making Snapshots of the Data Area

Database Administration, Snapshot of the Data Area


-836: Invalid C preprocessor command - SAP Documentation

Background documentation -836: Invalid C preprocessor command

Explanation

The C preprocessor command line is incorrect.

User Response

Correct the command in accordance with the C rules.


-883: Invalid runtime options - SAP Documentation

Background documentation -883: Invalid runtime options

Explanation

The precompiler or runtime options are incorrect.

User Response

Correct the options.


DB Procedures - SAP Documentation

Procedure documentation DB Procedures

In the Space user menu of the DBA Cockpit, you can find, among other things, a display of the database procedures.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Space [image] DB Procedures [image] .

Result

As well as an ABAP application, an application also includes a range of DB procedures in which time-critical parts of the application are implemented in C++. In a liveCache system, DB procedures can process both SQL data and OMS data. The DB Procedures user menu gives you an overview of all loaded database procedures, their input and output parameters, and other details.

More Information

Task Manager

SQL Reference Manual, Name of a Database Procedure (dbproc_name)


Bottlenecks - SAP Documentation

Procedure documentation Bottlenecks

The Database Analyzer user menu of the DBA Cockpit contains, among other things, a bottleneck analysis. You can display the logs of the Database Analyzer. You can stop and start the Database Analyzer, for example, to change the settings for the collection interval. You can also manage the performance data.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Database Analyzer [image] Bottlenecks [image] .

Result

You see the results of today's Database Analyzer bottleneck analysis (log DBAN.prt), if it exists. All entries in the Database Analyzer log (warnings and information) of today's first measuring point - and others, where applicable - are opened immediately for viewing. You can open information on the day's other measuring points for viewing by expanding the desired measuring time.

There are different display options for opening the Database Analyzer log for a day of your choice:

  • Choose Expand All Measuring Times to open the entire Database Analyzer log of the selected day for viewing, along with the entries containing warnings and information of each measuring time.

  • Choose Display a Day's Measuring Times to obtain a list of all measuring times of the selected day. The entries in the Database Analyzer log (warnings and information) of the day's first measuring point - and others, where applicable - are opened immediately for viewing. You can open information on the other measuring points for viewing by expanding the desired measuring time.

  • Select the desired measuring times of a certain day and choose Expand Selected Measuring Times to view the Database Analyzer information for the selected measuring times along with the warning and information entries.

You can restrict the measuring point display to measuring points with high-priority warnings or measuring points with any warnings. To do this, select the option Warnings with High Priority or Warnings in the Filter for Measuring Times area.

Choose Collapse All when you wish to close the display of all detailed information again.

If you would like to view the monitor class logs (analysis areas) from the Database Analyzer and the collected performance data (aggregated data), switch to Expert Analysis using [image] Goto [image] Expert Analysis [image] .

Changing the Collection Interval

If you need to change the collection interval for performance data, proceed as follows:

  1. In the Bottleneck Analysis, choose [image] Bottleneck Analysis [image] DB Analyzer [image] Stop Analysis [image] .

  2. Choose [image] Bottleneck Analysis [image] DB Analyzer [image] Start Analysis [image] .

  3. Specify a collection interval for the performance data.

Managing Performance Data

Choose [image] Goto [image] Managing Performance Data [image] in the Bottleneck Analysis. You can execute any administration activities automatically or manually:

  • Transferring the log files from the Database Analyzer to the database

  • Deleting the log files from the Database Analyzer

  • Collecting (aggregating) performance data from the Database Analyzer

See also: Managing Performance Data

Displaying Logs

To view more log files from the Database Analyzer proceed as follows:

In the Bottleneck Analysis, choose [image] Goto [image] Self-Monitoring [image] <DBAN.err | DBAN.inf | DBAN.pid | DBAN.sid>

Starting the Database Analyzer Explicitly

If necessary, you can start the Database Analyzer explicitly in the following ways:

  1. In the Bottleneck Analysis, choose [image] Bottleneck Analysis [image] DB Analyzer [image] Start Analysis [image] .

  2. Specify a collection interval for the performance data.

Activating DB Time Measurement

In the Task Manager, you can activate or deactivate the internal time measurement for database activities.

You can use this function to, for example, calculate the average response times for an SQL command.

  1. Choose [image] Edit [image] Activate DB Time Measurement [image] .

  2. Perform the desired time measurements.

  3. Choose [image] Edit [image] Deactivate DB Time Measurement [image] .

Evaluation of measurement data can be done via the analysis of bottlenecks using the Database Analyzer.

More Information

Database/liveCache Alert Monitor, Database Analyzer

For additional analysis, you can use the SQL Performance display, among others.

Database Analyzer, Database Analyzer Log Files, Database Analyzer Messages


-28609: Stored procedure not found - SAP Documentation

Background documentation -28609: Stored procedure not found

Explanation

The user has tried to call a saved procedure. However, this procedure could not be found in the assigned DB procedure.

User Response

Check whether the procedure is the same as your DB procedure definition in the database catalog.


-10904: Internal error: Expected result count - SAP Documentation

Background documentation -10904: Internal error: Expected result count

Explanation

The method that was called failed during the transfer of results, because the database kernel did not provide the necessary data, or the internal structure of the buffer for the connection to the database instance is inconsistent.

User Response

Check the kernel log for more information about the error.


-3998: Wrong password - SAP Documentation

Background documentation -3998: Wrong password

Explanation

You want to activate a role. However, the password entered is not the same as the one specified when the role was defined.

User Response

Correct the password.


Creating Databases - SAP Documentation

Procedure documentation Creating Databases

Prerequisites

  • You are logged on as an operating system user to the computer on which you want to create the database.

  • Depending on your operating system and system configuration, you might have to be logged on as a special operating system user.

    More information: Database Administration, Special Operating System Users and User Groups

  • To create a database on a remote computer, the global listener and the X server (SAP MaxDB communication server) of the installation in which you want to create the new database must be running on the remote computer.

    More information: Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers

  • To create a database on a remote computer that uses Microsoft Windows, you must have administration rights for the remote computer as well as the Log on as Batch Job authorization.

    More information: Operating System Documentation

Procedure

  1. In the context menu of Servers, choose [image] Administration Tasks [image] Create Database...

  2. Select your installation mode:

    • Create a new database

      Simple mode (system default)

      All important database properties are pre-configured, but you can still adjust some of them during the creation of the database.

    • Create a new database in advanced mode

      Advanced mode

      You configure the database properties during the creation of the database.

Simple Mode (System Default)

  1. Enter the following data:

    Property

    Description

    Database Server

    Name or IP address of the computer on which you want to create the database

    To create the database on the local computer, leave the field blank or enter <Local>.

    Database Name

    More information: Database Administration, Conventions for Database Names

    Login Name

    Only necessary if you create the database on a remote computer

    Name of the operating system user on the remote computer

    Password

    Only necessary if you create the database on a remote computer

    Password of the operating system user on the remote computer

  2. Enter the following data:

    Property

    Description

    User Name

    Name of the database system administrator

    The system administrator is the user with the most extensive database authorizations.

    More information: Database Administration, Database System Administrator

    Password

    Password of the database system administrator

    More information: Database Administration, Conventions for User Names and Passwords

    Installation

    Version and path of the database software that you want to use to create the database

  3. Optional: Configure important database properties using the following database paramaters:

    Property

    Database Parameter

    Description

    Memory Cache Size

    CacheMemorySize

    Size of the working memory (RAM) used by the database system

    Note that this parameter only roughly determines the size of the working memory used by the database. There are database functions which also need a certain amount of working memory, but whose memory consumption is not configured with this parameter.

    Max. User Tasks

    MaxUserTasks

    Maximum number of user tasks (number of database users that can be concurrently logged on to the database)

    Max. SQL Locks

    MaxSQLLocks

    Maximum number of SQL locks

    Run Directory Path

    RunDirectoryPath

    Path of the database run directory

    More information: Database Administration, General Database Parameters

  4. The system saves the data and log entries of the database in the volumes.

    Optional: Change the configuration of the first data volume and the first log volume.

    Volumes: Properties

    Property

    Description

    Size

    Minimum size: 1000 pages or 8000 KB

    Device/File

    Device/path and file name

    Type

    Type of physical memory

    • FILE (F)

      A volume can be a part of a physical hard disk, a complete physical hard disk, or a storage system consisting of several storage units.

      Can be used on all operating systems

    • LINK (L)

      Can only be used on Unix and Linux

    • RAW (R)

      Raw device

      Can only be used on Unix and Linux

    More information: Concepts of the Database System, Volumes (Permanent Storage)

  5. Optional: Configure additional database properties.

    Property

    Description

    Load tutorial data

    More information: Concepts of the Database System, Demo Database

    Activate overwrite mode for the log area

    More information: Glossary, Overwrite Mode for the Log Area

    Automatic log backup:

    • Initial complete data backup

    • Log backup

    If automatic log backup is on, then the database system automatically backs up the redo log entries to backup files.

    • File name and complete path to the data carrier for the initial data backup

    • File name and complete path to the data carrier for log backups

    More information: Database Administration, Backing Up Log Entries

  6. Check your configuration.

  7. To create the database, choose Start.

    The database is created.

    Note that in addition to the database system administrator, the following users are created:

    • First DBM operator: user name DBM, same password as the database system administrator

    • If you have loaded the tutorial data during the creation of the database:

      Database user of type DBA: user name MONA, password RED

Advanced Mode

  1. Enter the following data:

    Property

    Description

    Database Server

    Name or IP address of the computer on which you want to create the database

    To create the database on the local computer, leave the field blank or enter <Local>.

    Database Name

    More information: Database Administration, Conventions for Database Names

    Login Name

    Only necessary if you create the database on a remote computer

    Name of the operating system user on the remote computer

    Password

    Only necessary if you create the database on a remote computer

    Password of the operating system user on the remote computer

  2. Select the version and path of the database software you want to use to create the database.

  3. Enter the following data:

    Creating Database in Advanced Mode: Advanced Options

    Property

    Description

    Windows Service

    • Set the startup type for the database service to Automatic

    • Use the login information as the account for the database service

    On Microsoft Windows only

    • Select this option if you want the database to be automatically started when you start your computer.

    • If you create a database on a remote Microsoft Windows computer, selecting this option means that the user name you provide will also be used as the user for the database service that is created.

    Automatic extension of data area

    The data of a database is permanently stored in the data volumes (data area). If the data area of a database is full, the database stops working. If you activate the automatic extension of the data area for your database, the system adds a new data volume as soon as the configured fill level of the data area is reached.

    More information: Activating or Deactivating the Automatic Extension of the Data Area

    Automatic update of statistics

    The database system needs the SQL Optimizer statistics to determine the optimal search strategy for accessing data when executing complex SQL statements.

    If you activate automatic update of statistics, the system automatically updates the SQL Optimizer statistics when necessary.

    More information: Updating SQL Optimizer Statistics

  4. Enter the user name and password for the first DBM operator.

    More information: Database Administration, DBM Operators

  5. Choose how to configure the database parameters:

    • Initialize parameters with default values

      Choose the database type in the next step.

    • Copy parameters from existing database

      Choose the database from which to import the database parameters in the next step.

    • Restore parameters from a backup

      Choose the backup from which to restore the database parameters in the next step.

  6. Adjust the database parameters if necessary.

    More information: Database Administration, Database Parameters

  7. The system saves the data and log entries of the database in the volumes.

    You can change the configuration of the first data volume and the first log volume or add new volumes.

  8. Choose the database creation mode:

    • Create and start database

      Enter a password for the database system administrator.

      After it has been created, the new database is started.

    • Create database for recovery

      After it has been created, the new database is transferred to the ADMIN operational state.

      Note that afterwards, you can only use this database for a recovery. During the recovery, the user information for the database system administrator is imported from the data data backup.

  9. Configure additional database properties.

    Property

    Description

    Load tutorial data

    More information: Concepts of the Database System, Demo Database

    Activate overwrite mode for the log area

    More information: Glossary, Overwrite Mode for the Log Area

    Automatic log backup:

    • Initial complete data backup

    • Log backup

    If automatic log backup is on, then the database system automatically backs up the redo log entries to backup files.

    • File name and complete path to the data carrier for the initial data backup

    • File name and complete path to the data carrier for log backups

    More information: Database Administration, Backing Up Log Entries

  10. Check your configuration.

  11. To create the database, choose Start.

    The database is created.

More Information

  • Logging On to the Database

  • Deleting Databases


-819: Parameter in SQL statement not allowed - SAP Documentation

Background documentation -819: Parameter in SQL statement not allowed

Explanation

Only an SQL statement without parameter specifications is permitted. Either an SQL statement with parameters but without a USING clause was passed with an EXECUTE, or an error occurred in the parameter list.

User Response

Add the USING clause, or use an SQL statement without parameters, or correct the parameter list.


-28502: Error writing OMS output stream - SAP Documentation

Background documentation -28502: Error writing OMS output stream

Explanation

A write error occurred in an internal ABAP table or in a stream. For more information, see the liveCache file knldiag.

User Response

Contact Support.


-854: Parameters must be question marks - SAP Documentation

Background documentation -854: Parameters must be question marks

Explanation

In PREPARE statements, only question marks are allowed for parameter specifications.

User Response

Replace the SQL variable with a question mark.


-876: Unknown macro number - SAP Documentation

Background documentation -876: Unknown macro number

Explanation

The macro number is not known. The SET MACRO statement was not executed for the specified macro number.

User Response

Enter the correct number or define an appropriate macro.


-844: Invalid record name - SAP Documentation

Background documentation -844: Invalid record name

Explanation

The record name is invalid or unknown.

User Response

Declare a record or use another SQL variable.


-25346: Communication packet size too small to run IMPORT for PAGES of <N>kb. Increase value of parameter _PACKET_SIZE and restart the database - SAP Documentation

Background documentation -25346: Communication packet size too small to run IMPORT for PAGES of <N>kb. Increase value of parameter _PACKET_SIZE and restart the database

Explanation

You executed a command to import data in PAGES format. The command was terminated because in the target database, the database parameter CommandBufferSize has a value that is too small for the import.

User Response

  1. Increase the value of the database parameter CommandBufferSize.

  2. Restart the database.

  3. Re-execute the command.


-894: Trace parameter structure not allowed - SAP Documentation

Background documentation -894: Trace parameter structure not allowed

Explanation

There is a syntax error in SET TRACE LINE.

User Response

Correct the SET TRACE LINE statement.


Exporting and Importing LOB Values - SAP Documentation

Background documentation Exporting and Importing LOB Values

You can use Loader EXPORT/IMPORT TABLE and EXPORT/IMPORT/UPDATE COLUMNS commands to export LOB values to data streams, import them to target tables, or modify the LOB values in a table. Using the appropriate syntax rules, you can define which data streams the LOB values are exported to or which columns of a target table the LOB values are imported to.

Note Note

No special syntax rules for handling LOB values are required if you use the PAGES or RECORDS formats.

End of the note.

Structure

Syntax Syntax

  1. <export_lobcolumn_spec> ::=
  LOB <outstream_lob_spec>
<oustream_lob_spec> ::=
  OUTSTREAM [FILE] <column_spec> '<stream_name>'
    [<lob_code_spec>]

<import_lobcolumn_spec> ::=
  LOB <instream_lob_spec>
<intream_lob_spec> ::=
  INSTREAM [FILE] <column_spec> <lob_code_spec>
| INSTREAM [FILE] <column_spec> '<stream_name>'
    [<lob_code_spec>]

<column_spec> ::=
  <column_name>
| <column_id>

<lob_code_spec> ::=
  <code_spec>
| BINARY
End of the code.

The data for LOB values is stored separately from the other data in LOB data streams. These stream_name data streams (name and path of the data stream) are always of data carrier type FILE.

Exporting LOB Values

You use syntax rule LOB OUTSTREAM [FILE] <column_spec> '<stream_name>' [<lob_code_spec>] to control the export of the LOB values.

  • Each LOB Value to be Exported Is Exported to a Separate LOB Data Stream

  • All LOB Values to be Exported are Exported to One LOB Data Stream

When you are exporting LOB values, if you specify more LOB data streams than there are LOB output columns in the column list, the Loader ignores the surplus LOB data streams. For an explanation of the column specification (column_spec) and the data stream (stream_name), see the section on Exporting LOB Values.

Importing LOB Values

You can use syntax rule LOB INSTREAM [FILE] <column_spec> <lob_code_spec> or LOB INSTREAM [FILE] <column_spec> '<stream_name>' [<lob_code_spec>] to control the import of the LOB values.

  • Each LOB Value to be Imported is in a Separate LOB Data Stream

  • All of a Column’s LOB Values that are to be Imported are in One LOB Data Stream

For an explanation of the two syntax rules for column specification (column_spec) and for the data stream (stream_name), see the section on Importing LOB Values.

<lob_code_spec>

You can also specify the code attribute for all data streams containing LOB values that are to be exported/imported to a column by specifying the syntax rule lob_code_spec. Only one code attribute can be specified for all the data streams, as the code attribute has to be specified in the command.

Example

Example Example

EXPORT TABLE hotel.hotel

DATA OUTSTREAM 'hotel_csv.data'

LOB OUTSTREAM info 'hotel_info.data'

End of the example.

The values of the INFO LOB columns are exported to the data stream hotel_info.data.

Example Example

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

LOB INSTREAM info 'hotel_info.data'

End of the example.

The values of the hotel_info.data data stream are imported to the INFO LOB column.

Example Example

The LOB values of the INFO column are imported from more than one LOB data stream.

Specification of the code attribute ASCII

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

  hno      1

  name    2

  zip      3

  address  4

  info    5 DEFAULT NULL

LOB INSTREAM info ASCII

Content of the data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","'hotel_info.data001'"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","'hotel_info.data002'"

End of the example.

Example Example

The LOB values from the INFO column are imported from one LOB data stream.

Specification of the code attribute ASCII

IMPORT TABLE hotel.hotel

DATA INSTREAM 'hotel_csv.data'

  hno      1

  name    2

  zip      3

  address  4

  info    5 DEFAULT NULL

LOB INSTREAM info 'hotel_info.data' ASCII

Content of the data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","1-915"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","916-1074"

End of the example.

More Information

Code Specification

Loader Commands and SQL Statements


Backup and Recovery - SAP Documentation

Background documentation Backup and Recovery

The following user menu in the DBA Cockpit provides information about backup templates:

  • Backup Templates

More Information

DBA Planning Calendar, Scheduling a Data Backup, Scheduling Log Backups

DBA Cockpit: SAP MaxDB


Transactions - SAP Documentation

Procedure documentation Transactions

The Performance user menu of the DBA Cockpit contains a display of active transactions.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Transactions [image] .

Result

You see an overview of the transactions.

More Information

Database Administration in CCMS, Execute Performance Analysis in CCMS

Concepts of the Database System, Transactions

SQL Reference Manual, Transactions


-24917: ERR_MAXDATA - max data size exceeded - SAP Documentation

Background documentation -24917: ERR_MAXDATA - max data size exceeded

Explanation

The total size of the data volumes exceeds the currently set maximum value.

User Response

Reduce the size of the volume to be added.


QUERYREWRITERULES - SAP Documentation

Object documentation QUERYREWRITERULES

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.QUERYREWRITERULES contains the description about possible and activated rules for the query rewrite.

Structure

QUERYREWRITERULES
RULENAME | CHAR(32) | Name of the rule
ACTIVE | CHAR(3) | Rule can be applied (YES | NO)
CONNECT | CLOB | Comment on the rule

More Information

MONITOR_REWRITE


SYSUPDSTATLOG - SAP Documentation

Object documentation SYSUPDSTATLOG

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.SYSUPDSTATLOG contains information about the last executed UPDATE STATISTICS statement.

Structure

SYSUPDSTATLOG
SCHEMANAME | CHAR(32) | Name of the table schema
TABLENAME | CHAR(32) | Name of the table
TABLEID | CHAR(8) BYTE | Internal ID of the table
COLUMNNAME | CHAR(32) | Name of the column
INDEXNAME | CHAR(32) | Name of the index
EXECUTED_AT | TIMESTAMP | Time of the start of the SQL statement which executes several UPDATE STATISTICS
IMPLICIT | CHAR(3) | No longer used
SAMPLE_PCT | FIXED(3) | Area of the table (in %) which is read for the UPDATE STATISTICS run
SAMPLE_ROW | FIXED(10) | Number of lines in the table which are read for the UPDATE STATISTICS run
EXECUTION_START | TIMESTAMP | Time of the start of the UPDATE STATISTICS run
EXECUTION_END | TIMESTAMP | Time of the end of the UPDATE STATISTICS run
SESSION | FIXED(10) | ID of the database session
TERMID | CHAR(18) | ID of the terminal used by the logged-on application
SEQNO | FIXED(5) | No longer used

More Information

SYSUPDSTATWANTED

SQL Reference Manual, UPDATE STATISTICS Statement


Database Analyzer - SAP Documentation

Procedure documentation Database Analyzer

The Database Analyzer tool for bottleneck analysis is also available in the Performance user menu of the DBA Cockpit. When the SAP system is started, the Database Analyzer starts to collect data. The Database Analyzer generates log files that are saved to the respective database server.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Database Analyzer [image] .

Result

The following user menus are available:

  • Bottlenecks

  • Expert Analysis

Starting/Stopping the Database Analyzer

When the SAP system or the liveCache starts up, the Database Analyzer is automatically started for the system's Basis database. With other systems, you need to explicitly start the Database Analyzer. The Database Analyzer must always be activated. The default collection interval for the performance data is 900 seconds.

If necessary, you can start or stop the Database Analyzer explicitly with the Bottlenecks user menu.

For liveCache you have the option of setting, via Automatic Monitoring, whether the Database Analyzer should always be activated or not.

More Information

  • Database/liveCache Alert Monitor, Database Analyzer

  • Properties

  • Database Analyzer documentation,

    Database Analyzer Log Files


From -4000 to -4999 - SAP Documentation

Background documentation From -4000 to -4999

Database Kernel Error Messages
-4000 | Unknown result table
-4001 | Unknown user name/password combination in operational state ADMIN
-4002 | Unknown password
-4003 | Unknown user name
-4004 | Unknown table name
-4005 | Unknown column name
-4006 | Unknown domain name
-4007 | Unknown synonym name
-4008 | Unknown user name/password combination
-4009 | Unknown referential constraint name
-4010 | Unknown MAPCHARSET name
-4011 | Unknown index name
-4013 | Unknown user group name
-4014 | Unknown SERVERDB name
-4016 | Unknown procedure name
-4017 | Unknown constraint
-4018 | Unknown default
-4019 | Unknown trigger name
-4020 | Unknown sequence name
-4023 | Unknown function name
-4024 | Unknown name
-4025 | Unknown or not loaded character set
-4027 | Unknown session
-4030 | Unknown schema
-4031 | Unknown datasource
-4032 | Unknown remote table
-4033 | Unknown remote column


SQLDBC Trace - SAP Documentation

Procedure documentation SQLDBC Trace

SQL Database Connectivity (SQLDBC) is a runtime environment for the development of database applications and database interfaces for SAP MaxDB. Using SQLDBC, applications can access SAP MaxDB databases, execute SQL statements, and edit data. SQLDBC consists of the runtime library libSQLDBC, the software development kit SQLDBC SDK and the tool sqldbc_cons. SQLDBC offers a comprehensive range of trace options..

The Tools user menu in the DBA Cockpit contains, among other things, the SQLDBC trace tool.

Caution Caution

Traces compromise performance. Use traces only for troubleshooting and problem analysis.

End of the caution.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] SQLDBC Trace [image] .

Result

Activating/Deactivating the Trace

To activate the trace, proceed as follows:

  1. Select the required process.

  2. Choose one of the following options:

    Trace

    Content

    SQL (Switch on SQL trace)

    SQL Statements

    (simplest trace, adequate for most analyses)

    Short (Switch on short trace)

    Method calls

    Long (Switch on long trace)

    Method calls with call parameters

    (most comprehensive trace)

    Packet (Switch on packet trace)

    Communication packages

  3. Enter the size of the trace file.

The trace files contain a file name with convention sqldbctrace-<pid>.prt, where <pid> is the process ID. The trace files are overwritten cyclically.

To deactivate the trace, select the process for writing to the trace and then select Switch Off.

Additional Functions

  • You can choose the name of the trace file. To do this, choose [image] Goto [image] Trace Directory [image] .

  • You can choose the size of the trace file. To do this, choose [image] Goto [image] Maximum File Size [image] .

Analyzing and Displaying the Trace

Select the required trace file to analyze the trace. Choose Display File.

More Information

SQLDBC Manual, Using SQLDBC Trace


-3059: Invalid day of week - SAP Documentation

Background documentation -3059: Invalid day of week

Explanation

An invalid weekday was specified in the date value in the chosen language or format.

User Response

Check the chosen language and format and repeat the SQL statement with the correct day of the week. For the format element DAY, the days of week must be written in full length; for DY, they must be specified with their three-letter abbreviation.


CONSTRAINTS - SAP Documentation

Example documentation CONSTRAINTS

Use of the system table DOMAIN.CONSTRAINTS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define and use constraints. Proceed as described in SQL Tutorial, Constraints.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table CONSTRAINTS to determine the following database information, among other things:

  • All conditions on the columns of the tables of the HOTEL schema that represent explicit value checks

    SELECT tablename, constraintname, definition

    FROM DOMAIN.CONSTRAINTS

    WHERE schemaname = 'HOTEL'

  • All conditions on the columns of the table CUSTOMER that represent explicit value checks

    SELECT tablename, constraintname

    FROM DOMAIN.CONSTRAINTS

    WHERE tablename = 'CUSTOMER'

Constraints (integrity conditions) that relate to NOT NULL definitions, primary keys, UNIQUE definitions or referential constrains are not found with this SELECT statement.

More Information

NOT-NULL columns: see COLUMNS

Primary key: see COLUMNS

UNIQUE columns: see INDEXES

Referential constraint: see FOREIGNKEYS

Columns in a referential constraint: see FOREIGNKEYCOLUMNS

Constraint of a domain: see DOMAINCONSTRAINTS


scheduler_list_jobs - SAP Documentation

Background documentation scheduler_list_jobs

With this command you can display the list of all scheduler jobs.

The job ID, owner, status, time at which the job is to be executed, time at which it was last executed, and the DBM command to be executed are displayed for each job created.

DBM operators with the server permission SchedulerMgm can see all the active and inactive jobs.

DBM operators with the server permission Scheduling only see the active and inactive jobs they own.

If an error occurred during the execution of a job, the dbm.prt log file provides more information on it. Search for the appropriate entry using the planned time, the job ID , and all DBM server PIDs displayed in the list of scheduler jobs.

Prerequisites

You have the server permission SchedulerMgm or Scheduling.

Structure

scheduler_list_jobs

Result

OK

ID <job_ID>

owner: <dbm_user>

status: <job_status>

runs: at: <job_time>|after: <job_id> [(once)]>

last run: <date_run> <time_run>

DBM Server PID <process_ID>

return code <message_number>

dbm_command: <dbm_command>

OK

ID <job_ID>

owner: <dbm_user>

status: <job_status>

runs: at: <job_time>|after: <job_id> [(once)]>

last run: <date_run> <time_run>

DBM Server PID <process_ID>

return code <message_number>

dbm_command: <dbm_command>

...

Values for the Reply Fields
Value | Description
<job_ID> | Job ID
<job_status> | Job status Possible values are: active | inactive active: The job is active. inactive: The job is inactive.
<job_time> | Defined time at which the job is to be executed
(once) | Executed once
<date_run> | Day on which the job was last executed
<time_run> | Time at which the job was last executed
<process_ID> | Process ID
<message_number> | Message number

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the list of all active and inactive scheduler jobs:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_list_jobs

OK

OK

ID 0

owner: OLEG

status: active

runs: at: 18:00:00

last run: 2005#05#02 18:00:02

DBM Server PID 2632

return code OK (0)

dbm_command: db_offline

OK

ID 1

owner: OLEG

status: active

runs: at: 19:00:00

last run: 2005#05#02 19:00:01

DBM Server PID 1652

return code ERR (-24977)

dbm_command: db_onnnline

OK

ID 2

owner: OLEG

status: active

runs: after 1

dbm_command: db_state

More Information

Database Administration, Automating Administration Tasks

Messages documentation


-24918: ERR_MISSMIRR - missing data for mirror volume - SAP Documentation

Background documentation -24918: ERR_MISSMIRR - missing data for mirror volume

Explanation

The information for a mirror volume is missing.

User Response

Correct your entry by specifying the data for the mirrored volume. Execute the command again.


-1406: Specify the indicator variable with the parameter. - SAP Documentation

Background documentation -1406: Specify the indicator variable with the parameter.

Explanation

The column's range of values is greater than that of the SQL variable. The value was truncated when it was inserted into the SQL variable.

User Response

Adapt the range of values of the SQL variable to that of the column.


-7086: Schema not allowed - SAP Documentation

Background documentation -7086: Schema not allowed

Explanation

The schema specified is not allowed. This occurs if the schema name specified in the CREATE SYNONYM statement or the CREATE DOMAIN statement is different from the current user’s name.

User Response

Correct the schema name.


Changing the Properties of Backup Templates - SAP Documentation

Procedure documentation Changing the Properties of Backup Templates

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

    For more information, see Glossary, Server Permission.

  • You have defined a backup template.

    For more information, see Defining Backup Templates.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Backup tab page.

  4. Expand Templates.

  5. Choose Edit.

  6. Change the properties of the backup template.

    Backup Template Properties

    Property

    Description

    Name

    The name of the backup template has no influence on the name of the backup created later using this backup template.

    Backup Type

    • Complete data backup

    • Incremental data backup

    • Log backup

    Device Type

    Data carrier type

    • File

    • Tape

    • Pipe

      Note Note

      For automatic log backups, you cannot use pipes.

      End of the note.

    Backup Tool

    Only if you are using a third-party backup tool

    Specify the backup tool:

    • BACK: Backint for Oracle or Backint for MaxDB

    • NSR: Networker

    • TSM: TSM

    More information: Database Administration, Using Third-Party Backup Tools

    Device/File

    Depending on the backup type enter the required information:

    • Name of the tape device in the operating system

    • Path and file name of the file in the file system

      Caution Caution

      If you do not enter a full path here, the system stores your backup in the run directory of the database.

      More information: Glossary, Run Directory

      End of the caution.

    • Path and name of the pipe

    We recommend that you do not use the same data carrier for several databases.

    For log backups to files, the system adds a sequence number to the name of each new backup file. It assigns the numbers sequentially as long as the history of the log backups is not interrupted. If the log backup history is interrupted (for example after the database was initialized), the system starts numbering at 001 again.

    It also uses sequential numbers if you carry out multiple log backups for one database onto different data carriers, and thus to files with different file names.

    Example Example

    LogUri.001

    LogKai.002

    LogOleg.003

    LogUri.004

    LogUri.005

    End of the example.

    If automatic log backup is switched on, the system stores all backup files under the same file name using a sequence number.

    Example Example

    DEMODB_MYLOG.001

    DEMODB_MYLOG.002

    DEMODB_MYLOG.003

    DEMODB_MYLOG.004

    DEMODB_MYLOG.005

    End of the example.

    You can also back up to data carriers on remote computers. More information: Database Administration, Backing Up and Restoring Data with Remote Computers

    Size

    There is no size restriction in default mode.

    The size of log backups to files is calculated as the size of a log segment (general database parameter AutoLogBackupSize) plus the space required by system information.

    More information: Database Administration, General Database Parameters

    Compressed

    For backup templates of the FILE and PIPE types only

    Specifies whether the backup is compressed

    Overwrite

    For backup templates of the FILE type only

    Specifies whether the backup file can be overwritten

    We recommend that you do not overwrite a backup with the backup that immediately follows it. Always keep an older version of the backup.

    Block Size

    Block size that the system uses to write backups to the data carrier.

    Autoloader

    Select this option if you want to use a tape device with an automatic tape loader.

    OS Command

    For backup templates fo the TAPE type only

    Operating system command for backing up to tape devices

    Encryption

    Prerequisites: license for SAP Cryptolib (only available in SAP systems), private-public key pair has been created using sapgenpse

    • Algorithm

      Available encryption algorythms: DES, AES

    • Owner

      Private key owner (see X.509 certificate)

    For more information, see Encryption.

More Information

Database Administration, Backup Templates and Data Carriers


-10508: Invalid encoding of column name for column (<number>) for row set operation - SAP Documentation

Background documentation -10508: Invalid encoding of column name for column (<number>) for row set operation

Explanation

The method that was called cannot be executed, because the column name contains UNICODE characters and 7-bit ASCII was defined for the SQL statement.

User Response

Set the character set (Encoding) for the SQL statement in the SQLDBC_Statement::execute or SQLDBC_PreparedStatement::prepare method to SQLDBC_StringEncodingType_Encoding_UCS2 or SQLDBC_StringEncodingType_Encoding_UTF8 and execute the method again.


Creating Sequences - SAP Documentation

Procedure documentation Creating Sequences

A sequence is a database object whose value the database system increases or decreases automatically with each access. The database system saves the values and administration information for sequences in the sequence cache.

Sequences are also called number generators.

Note Note

You cannot change the definition of a sequence.

End of the note.

Prerequisites

  • You are logged on to the database as a database system administrator, database user of type RESOURCE, or database user of type DBA.

  • You have the CREATEIN privilege for the schema in which you want to create the sequence.

    More information: SQL Reference Manual, Privileges: Overview

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the user who is to be the owner of the sequence.

  2. Expand the folders of this user.

  3. In the context menu of the Sequence folder, choose [image] New [image] Sequence [image] .

  4. Enter the following data:

    Sequence: Properties

    Property

    Description (Link to SQL Reference Manual)

    Sequence Name

    Sequence name (sequence_name)

    Schema

    Schema name (schema_name)

    Start With

    First value of the sequence

    Increment By

    Difference between two successive values of the sequence

    A negative value generates a descending sequence.

    Default value: 1

    Minimum Value

    Minimum value

    Maximum Value

    Maximum value

    Values to Cache

    Number of values of the sequence that the system stores in the sequence cache

    Cycle

    Ascending sequences: after the system has reached the maximum value, it allocates the minimum value as next value.

    Descending sequences: after the system has reached the minimum value, it allocates the maximum value as next value.

  5. In the context menu of the editor window, choose Create Sequence.

    The logged-on user becomes the owner of the sequence.

More Information

SQL Reference Manual, CREATE SEQUENCE Statement (create_sequence_statement)

SQL Tutorial, Number Generators for Tables


-54: Lock collision - SAP Documentation

Background documentation -54: Lock collision

Explanation

When the option (NOWAIT) is specified in the LOCK statement or in the LOCK option, this message signals that the lock request conflicts with the locks of other users.

User Response

  1. In interactive mode, another job can be activated which does not require the desired lock.

  2. As an alternative, you can wait for the lock to be released by specifying the same SQL statement without the '(NOWAIT)' option.


Troubleshooting: Overview - SAP Documentation

Background documentation Troubleshooting: Overview

  • Displaying Configuration and Log Files

  • Checking Database Structures

  • Displaying Indexes

  • Creating Database Traces

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Troubleshooting


-24947: ERR_DBNAME - do not use dbname - SAP Documentation

Background documentation -24947: ERR_DBNAME - do not use dbname

Explanation

You cannot use this DBM command on a database instance.

User Response

Do not specify a database name when you execute the DBM command.


-7042: Key update not allowed - SAP Documentation

Background documentation -7042: Key update not allowed

Explanation

The attempt was made to change the value of a key column in a temporary table to a new value. This is not allowed. Key columns can only be changed in permanent tables.

User Response

If another key value is wanted, delete the row with the old key value and insert a row with the new key value.


System Tables Upgrade - SAP Documentation

Procedure documentation System Tables Upgrade

When system tables are updated, a log is written. You will find this log in the Logs user menu of the DBA Cockpit.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Logs [image] System Tables Upgrade [image] .

Result

The system displays the log of the last update of the system tables.

  • You can use the navigation help (Start of File, End of File) for orientation within the log.

  • Choose Import File to update the output.

More Information

You can use SYSINFO Views to display a list of the SYSINFO system tables and their descriptions.

Database Studio, Updating System Tables

SQL Reference Manual, Definitions of System Tables, Evaluating System Tables (Examples)


-24973: ERR_XPCHECK - param check failure/request - SAP Documentation

Background documentation -24973: ERR_XPCHECK - param check failure/request

Explanation

The system was unable to check the database parameters using the rules and processes stored in the parameter help file. You will find more information on this in the extended message text.

User Response

Correct the database parameter value as stated in the documentation.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-4004: Unknown table name - SAP Documentation

Background documentation -4004: Unknown table name

Explanation

A table with the specified name is not known to the current user. This table may not exist; or perhaps it does exist, but you have no privileges for it

User Response

Use a QUERY statement issued on the DOMAIN.TABLES system table to view the names of the tables for which you have privileges. Then correct the table name. It may be sufficient to place the missing schema in front of it. If this does not fix the problem, create a table with the required name, or else find out why you have no privileges for the existing table.


-823: Integer too large, greater than 32767 - SAP Documentation

Background documentation -823: Integer too large, greater than 32767

Explanation

The constant must not be greater than 32767 (two bytes).

User Response

Choose a smaller constant value.


-24936: ERR_DBNORUN - database is not running - SAP Documentation

Background documentation -24936: ERR_DBNORUN - database is not running

Explanation

The database instance is not in the operational state ADMIN or ONLINE.

User Response

Make sure that the database instance is in the required operational state before using this DBM statement. To do so, use the DBM command db_admin or db_online.


Database Administration in CCMS: SAP MaxDB - SAP Documentation

Component documentation Database Administration in CCMS: SAP MaxDB

You can manage your SAP MaxDB database system and obtain information on its status from the database administration using SAP Computing Center Management System (CCMS) (part of the Solution Life Cycle Management).

Note Note

All documentation about managing an SAP system (and the SAP MaxDB database) using SAP CCMS is only relevant for SAP customers. You will find the entire CCMS documentation in the SAP Help Portal under http://help.sap.com. The SAP MaxDB-specific CCMS documentation is available as described in SAP Note 767598.

End of the note.

Note Note

The documentation for the SAP MaxDB database system also generally applies to SAP liveCache technology. If there are functional differences, these are explained.

End of the note.

Features

  • Information about required and recommended activities for database administration: Database Administration: Overview of Activities.

  • For you to be able to use the database administration functions (DBA functions) of the CCMS, a number of prerequisites must be fulfilled.

  • The most important DBA functions of the CCMS for various monitoring and administration tasks in your database system are available in the DBA Cockpit.

  • You can call many DBA functions through the user menu.

  • You can use the DBA Planning Calendar to schedule and start data and log backups, and monitoring and analysis tasks.

  • In the DBA Action Logs display, you can check the status of your data and log backups, and other database administration actions (DBA actions), and display the logs of these actions.

  • In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.

  • You can use the Database Assistant to monitor your database system.

  • Among many other displays, the CCMS monitoring also includes the database alert monitor, which displays critical information memory, security, and performance as alerts.

  • In the DB Filling/Tables and Indexes display, you can see information on the database fill level and the tables and indexes in the database.

  • You can use Data Archiving: DB Tables to display relationships between tables and archiving objects and to display statistical information for each table.

More Information

  • You can gain quick access to descriptions of the available DBA functions by using the list of Terms and Procedures.

  • Database Administration in CCMS: SAP liveCache-Technology

  • Database Administration, Monitoring Databases

    Database Administration, Troubleshooting

  • SAP Notes

  • Glossary


-108: Table or index dropped or content deleted - SAP Documentation

Background documentation -108: Table or index dropped or content deleted

Explanation

Isolation level 0 (no shared locks) has been configured for the database instance.You have executed an SQL statement that references a nonexistent table or a nonexistent index. The table or index was deleted by another database user while you were executing your SQL statement.The database system therefore terminated the execution of your SQL statement.

User Response

Assess whether isolation level 0 is appropriate for your database application.


OMS Versions - SAP Documentation

Procedure documentation OMS Versions

In the Performance user menu of the DBA Cockpit, you can find, among other things, a display of the OMS versions since the last start of the liveCache Monitoring.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] OMS Versions [image] .

Result

Among other things, the following information is displayed for all OMS versions:

Memory Consumption | Current usage of the OMS heap More information: Glossary, OMS-Heap
Age (Hours) | Age of the OMS version
Time | Time at which the OMS version was generated
Rolled Out | YES: The OMS version has been displaced from the OMS heap, since the limit of one of the database parameters OmsHeapThreshold or OmsVersionThreshold has been reached. Database Administration, Special Database Parameters
Pages Rolled Out | Displays the number of pages displaced from the OMS heap

More Information

liveCache Alert Monitor, Monitor

Monitoring OMS Versions

Concepts of the Database System, Example: Consistent View


Changing Column Properties - SAP Documentation

Procedure documentation Changing Column Properties

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the table or have the ALTER privilege for the table to which the column belongs.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the explorer tree.

  2. In the context menu of the table, choose Definition

    Note Note

    To display the definition as an SQL statement, choose Export SQL in the context menu of the editor window.

    End of the note.

  3. In the context menu of the editor window, choose Edit

  4. Change the column definition.

    More information: SQL Reference Manual,

    • COLUMN Change Definition (column_change_definition)

    • MODIFY Definition (modify_definition)

  5. In the context menu of the editor window, choose Alter Table.

More Information

SQL Reference Manual, ALTER TABLE Statement (alter_table_definition)


Setting DBM_KTO_SUCCESS and DBM_KTO_FAILURE - SAP Documentation

Background documentation Setting DBM_KTO_SUCCESS and DBM_KTO_FAILURE

Use Database Manager CLI to define the values for the environment variables DBM_KTO_SUCCESS and DBM_KTO_FAILURE.

Use the variable DBM_KTO_SUCCESS to define the period of time the Database Manager program waits for the database kernel to terminate the backup operation after the backup tool has terminated the backup operation. The default value for the system is 300 s. After this period the backup operation is terminated by Database Manager.

Use the variable DBM_KTO_FAILURE to define the period of time the Database Manager program waits for the database kernel to terminate the backup operation after the backup tool has interrupted the backup operation due to an error. The default value for the system is 300 s. After this period the backup operation is terminated by Database Manager.

Structure

>dbmcli <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset <variable> <value>

Options
Option | Description
<variable> | Name of environment variable Possible values are: DBM_KTO_SUCCESS | DBM_KTO_FAILURE
<value> | Value of the timeout in seconds


From -1 to -699 - SAP Documentation

Background documentation From -1 to -699

Database Kernel Error Messages
-1 | Duplicate key in index
-8 | Execution failed, parse again
-20 | Duplicate key
-25 | Duplicate secondary key
-30 | Integrity violation
-32 | View violation
-35 | Referential integrity violated
-36 | Foreign key integrity violation
-40 | Lock collision
-50 | Lock request timeout
-51 | Lock request timeout
-54 | Lock collision
-60 | Work rolled back
-65 | Work rolled back
-70 | Session inactivity timeout (Work rolled back)
-71 | Session terminated by shutdown (Work rolled back)
-75 | Too many SQL statements (Work rolled back)
-101 | SQL statement not available in this DB mode
-102 | SQL statement canceled
-103 | SQL statement not available for this application
-104 | DBM command impossible at this time
-106 | Table unloaded or content deleted
-107 | SQL statement not allowed for this instance
-108 | Table or index dropped or content deleted
-111 | Incompatible incremental backup
-115 | Table is read only
-123 | No more log to save
-126 | Data backup missing (backup history lost)
-127 | Log backup is not possible because log writing has been switched off
-128 | Log backup is not possible because the log overwrite mode has been enabled
-530 | Referential integrity violated
-602 | System error


Command File - SAP Documentation

Object documentation Command File

When you call Loader with Loader CLI, you can transfer the Loader commands and SQL statements to be evaluated to Loader in a special file, the command file.

If you want to call Loader in command file mode, you have to specify the name of the command file using option –b <command_file>. If required, you can transfer further options (Opening a Session: Loader CLI Options).

Structure

Note the following syntax rules for command files:

  • General Syntax Rules: The same syntax rules apply as for calling Loader (Calling the Loader).

  • Separator Line Between Commands: Individual commands in a command file are separated by a line beginning with a double forward slash //. When you call Loader CLI, you can use the option –cs to define a different command separator (Input and Output: Loader CLI Options).

  • Comments: You can enter comments after a double forward slash // at the start of the line. Loader ignores the comments when the command file is processed.

Example

Example Example

loadercli -d demodb -u mona,red -n genua -b command.dat

End of the example.

The name of the database, the database user information, and the computer name are transferred using the relevant options. The Loader commands and SQL statements are in the command.dat file. The Loader commands and SQL statements that you specify in the command file are processed by Loader in the specified order.

Loader-Tutorial, Command File Mode

More Information

A command file can also be generated by generating the design data in transport mode.


Command Monitor - SAP Documentation

Procedure documentation Command Monitor

The SQL Performance user menu of the DBA Cockpit contains, among other things, the SQL command monitor. Use this tool if the analysis of the database bottlenecks (Bottlenecks) detected inefficient database access. This enables you to target long-running SQL statements.

This tool is intended for short analyses, since it records a limited number of SQL statements. You can specify criteria to restrict the volume and type of SQL statements that are recorded.

Prerequisites

Only for the SAP MaxDB (OLTP) database that is the basis of the current SAP Web AS system: To ensure that the name of the ABAP program and other information can be sent to the database, instance profile parameter dbs/ada/register_appl_info=1 must be set.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] SQL Performance [image] Command Monitor [image] .

Result

Activating or Deactivating the SQL Command Monitor

To activate or deactivate the SQL command monitor shortly before a transaction that is to be analyzed is started, follow the procedure below:

  1. Choose [image] Command Monitor [image] Change Monitor Settings [image] .

  2. Enter the desired recording criteria in the Change Monitor Settings display. The recording criteria determine how SQL statements are to be logged in the command monitor tables.

    Recording Criteria

    Number of page accesses

    An SQL statement is logged if the number of specified page accesses is exceeded.

    SQL statement runtime

    An SQL statement is logged if the specified runtime is exceeded.

    Selectivity

    An SQL statement is logged in the command monitor tables if the ratio of qualified records to read records falls below the specified percentage.

    Further Setting

    Max. number of monitor entries

    This value determines the maximum number of entries that are held in table SYSMONITOR before the table is overwritten cyclically.

    SAP provides you with defaults that you can confirm or change. If you want to confirm the SAP system defaults, choose Copy SAP Default Setting in the Change Monitor Settings display.

  3. If you want to activate the SQL command monitor with the recording criteria you have defined, choose Activate Monitor Settings.

During normal operation of the database system, the SQL command monitor is deactivated. The status of the SQL command monitor is displayed in the Current Monitor Settings area and can be refreshed using [image] Command Monitor [image] Refresh Monitor Settings [image] .

Deactivate the SQL command monitor as soon as the transaction you want to analyze ends. Choose [image] Command Monitor [image] Change Monitor Settings [image] and then Exit SQL Monitoring.

Output of Results

To display the SQL statements logged according to the recording criteria selected, choose [image] Command Monitor [image] Refresh Monitor Output [image] in the SQL command monitor.

Displaying SQL Statements

If a logged SQL statement was called from an ABAP program, you can trace the statement back to that program. To do this, select the SQL statement and choose Display Call in ABAP Program (only for the OLTP database instance that is the basis of the current SAP Web AS system).

To obtain additional information about an SQL statement, double-click the SQL statement or choose Display SQL Statement. You can see the complete SQL statement in the following view. Additional analyses are possible for SQL statements:

  • Display/Trace Execution Plan for an SQL Statement:

    Among other things, the search strategy that the SQL optimizer would select to process this SQL statement is displayed here.

    If requested by Support, you may need to create an optimizer trace.

    Choose Explain with Hint if you want to test the effect of different indexes on the execution plan of an SQL statement.

  • Replacing Placeholders in the SQL Statement: You can replace placeholders in an SQL statement.

  • Print Version: You can copy the output to the clipboard or print it directly.

  • Tables/View Information: The Tables/Views/Synonyms display appears.

  • Display Callpoint in ABAP Program: (only for the OLTP database instance that is the basis of the current SAP Web AS system)

  • Information on the ABAP Callpoint: (only for the OLTP database instance that is the basis of the current SAP Web AS system)

Initializing the Command Monitor Tables

The SQL statements and the values specified in their WHERE clauses are recorded in the SYSMONITOR and SYSMONDATA tables, provided these statements meet the recording criteria, and are executed in the database system after the SQL command monitor has been started. These tables are overwritten cyclically. Deactivating the command monitor does not initialize the SYSMONITOR and SYSMONDATA tables.

To initialize the command monitor tables in the SQL command monitor, choose [image] Command Monitor [image] Initialize Monitor Tables [image] .

More Information

  • EXPLAIN in the user menu Diagnosis

  • Resource Monitor

  • Properties

  • Executing Performance Analysis in CCMS

  • Concepts of the Database System

    Search Strategies

    List of all Search Strategies

    EXPLAIN Statement


-824: Statement in conflict with COMPATIBLE option - SAP Documentation

Background documentation -824: Statement in conflict with COMPATIBLE option

Explanation

The option COMPATIBLE is set, and an SQL array statement was specified with the keyword FOR. The option COMPATIBLE was used in conjunction with array statements. Array statements are only supported from Release 3.1 onwards.

User Response

Remove the COMPATIBLE option or change the array statement.


Installing the SAP MaxDB JDBC Driver and Java Classes - SAP Documentation

Procedure documentation Installing the SAP MaxDB JDBC Driver and Java Classes

Prerequisites

You have installed a Java platform.

More information: http://java.sun.com

Procedure

  1. On the computer on which your Java platform is located, install the JDBC SAP MaxDB software component. This software component contains the SAP MaxDB JDBC Driver and the DBM and Loader Java classes.

    After installation, you can find the JDBC driver and the Java classes in the sapdbc.jar file in the <installation_path>\runtime\jar\ directory.

    Note Note

    You can display the installation path using the dbm_getpath DBM command:

    dbmcli dbm_getpath InstallationPath

    For more information, see Database Manager CLI, dbm_getpath.

    End of the note.

    Example Example

    C:\Program Files\sdb\Installation_2009-07-21\runtime\jar\sapdbc.jar

    End of the example.

    Note Note

    Do not copy the JDBC driver to another location, because that may lead to problems when updating the software.

    End of the note.

  2. Add the path for the sapdbc.jar file to the CLASSPATH environment variable so that Java can find the JDBC driver and Java classes. To do this, enter the following commands:

    • On Microsoft Windows:

      set CLASSPATH=%CLASSPATH%;<installation_path>\runtime\jar\sapdbc.jar

    • On Unix and Linux (sh):

      export CLASSPATH=$CLASSPATH:<installation_path>/runtime/jar/sapdbc.jar

    If you do not want to include the path for sapdbc.jar in the CLASSPATH environment variable, you can specify the path for sapdbc.jar path when calling Java as follows:

    • ON Microsoft Windows:

      java -cp <installation_path>\runtime\jar\sapdbc.jar

    • On Unix and Linux (sh):

      java -cp <installation_path>/runtime/jar/sapdbc.jar

    If necessary, add the CLASSPATH environment variable to the login profile of the current operating system user.

More Information

  • SAP MaxDB JDBC Driver

  • DBM Java Classes

  • Loader Java Classes


-127: Log backup is not possible because log writing has been switched off - SAP Documentation

Background documentation -127: Log backup is not possible because log writing has been switched off

Explanation

You tried to save the log area, either by starting an interactive log backup or by attempting to activate the automatic log backup. This is not allowed in the current database state, because redo log management is disabled. Disabling redo log management canceled the backup history, and the last data backup can no longer be used to fully restore the database instance. Therefore, it doesn't make any sense at present to back up the log.

User Response

  1. Reactivate redo log management.

  2. Create a complete data backup to start a new backup history.

  3. Repeat the failed command.


-5009: Missing integer - SAP Documentation

Background documentation -5009: Missing integer

Explanation

An integer is missing.

User Response

Insert an integer into the SQL statement.


Changing Data in the Database - SAP Documentation

Procedure documentation Changing Data in the Database

Changing data in the database means that you add a data record to a table, update a data record, or delete a data record. You can use the table editor for this.

Note Note

  • You can also change data directly using an SQL statement.

    More information: Working with SQL Statements: Overview

  • You can import data.

    More information: Importing Data and/or Information from the Database Catalog

End of the note.

Prerequisites

You are logged on to the database as a database user.

Procedure

  1. In the explorer tree, select the table in which you want to change data.

  2. In the context menu of the table, choose Content.

    The data records are displayed.

    To display only data records that fulfill specific criteria, in the context menu, choose Filter. You can enter your filter criterion in the first row of a column.

    More information: SQL Reference Manual, Predicate (predicate)

  3. To switch to edit mode, select Edit in the context menu of the table editor.

Inserting Data Records
Prerequisites

You have the INSERT privilege for the table.

More information: SQL Reference Manual, Privilege Specification (priv_spec)

Procedure

  1. In the context menu of the table editor, choose New Row.

  2. Enter the values.

    To insert the LOB value, choose [image] Import Cell From...   File [image] in the context menu of the cell to which you want to import the changed value.

  3. In the context menu of the new data record, choose Insert Row.

Updating Data Records
Prerequisites

You have the UPDATE privilege for each table column.

Procedure

To update (change) a data record, overwrite the old values.

Note Note

The system applies all changes immediately.

End of the note.

To change an LOB value, proceed as follows:

  1. In the context menu of the LOB value, choose [image] Export Cell To...   File [image] .

  2. Change the LOB value using a suitable editor.

  3. Choose [image] Import Cell From...   File [image] in the context menu of the cell to which you want to import the changed value.

Deleting Data Records
Prerequisites

You have the DELETE privilege for the table.

Procedure

In the context menu of the data record, choose Delete Selected Row.

Note Note

The system immediately deletes the data record from the database.

End of the note.
Exiting Edit Mode

In the context menu of the table editor, deselect Edit.

More Information

Table Editor

SQL Reference Manual, Data Manipulation


-25211: Invalid ROUND specification (0 <= ROUND_value <= 18) - SAP Documentation

Background documentation -25211: Invalid ROUND specification (0 <= ROUND_value <= 18)

Explanation

The command to export or import data contains an error.A number specified for ROUND must be between 0 and 18.

User Response

Correct the number of rows you specified for ROUND and re-execute the command.


Transporting Data and/or Information from the Database Catalog - SAP Documentation

Procedure documentation Transporting Data and/or Information from the Database Catalog

You transport application data and/or the information from the database catalog to a different SAP MaxDB database or to a different schema or user in the same database. If you perform transports between different databases, the databases can run on different operating systems and on different hardware architectures.

Note Note

The following text describes the transport options in the context menus of Database Studio. You can also use drag and drop in the explorer tree to transport databases, users, schemas, and tables.

End of the note.

Procedure

Transporting Databases
Prerequisites

  • The source and the target databases are in the ONLINE operational state.

  • You are logged on to the source and target databases as the database system administrator.

Procedure

  1. Select the source database in the explorer tree.

  2. In the context menu of the database, choose [image] Export/Import [image] Transport...  .

  3. In the target database, select the database system administrator.

  4. Select your transport options.

    Options for Transporting Databases

    Property

    Description

    Transport table definition

    The table definitions of the selected tables from the database catalog are transported.

    Transport table data

    The application data from the selected tables is transported.

  5. Select the tables that you want to transport.

    Note Note

    You can only transport tables that contain application data. You cannot transport system tables or view tables.

    End of the note.

  6. To start the transport, choose Finish.

Result

After the import, the passwords of all imported users are reset to INITIAL. Assign new passwords after the import.

Transporting the Database Objects of Users
Prerequisites

  • The source and the target databases are in the ONLINE operational state.

  • In the source database, a Database Studio login for the user whose objects you want to transport has been created.

Procedure

  1. In the explorer tree, select the user of the source database whose database objects you want to transport.

  2. In the context menu of the user, choose [image] Export/Import [image] Transport...  .

  3. In the target database, select the user who is to own the transported database objects.

  4. Select your transport options.

    Options for Transporting the Database Objects of Users

    Property

    Description

    Transport table definition

    The table definitions of the selected tables from the database catalog are transported.

    Transport table data

    The application data from the selected tables is transported.

  5. Select the tables that you want to transport.

    Note Note

    You can only transport tables that contain application data. You cannot transport system tables or view tables

    End of the note.

  6. To start the transport, choose Finish.

Transporting Schemas
Prerequisites

  • The source and the target databases are in the ONLINE operational state.

  • You are logged on to the source database as the database user who is the owner of the schema and to the target database as the database user who is going to own the transported schema.

Procedure

  1. In the explorer tree, select the schema whose database objects you want to transport.

  2. In the context menu of the schema, choose [image] Export/Import [image] Transport...  .

  3. In the target database, select the user who is to own the transported schema.

  4. Select your transport options.

    Options for Transporting Schemas

    Property

    Description

    Target schema name

    Select the target schema name. To create a new schema, select <NEW SCHEMA> and enter the name of the new schema.

    Transport schema catalog

    The table definitions of the selected tables from the database catalog are transported.

    Transport schema data

    The application data from the selected tables is transported.

    Exclude tables from data transport

    Choose this option if you want to exclude specific tables from the transport in the next step.

    Recreate existing schema

    Add to existing schema

    Choose how to proceed if the selected schema already exists in the target database.

  5. If you chose Exclude tables from data transport in the previous step, now deselect the tables that you do not want to transport.

    Note Note

    You can only transport tables that contain application data. You cannot transport system tables or view tables.

    End of the note.

  6. To start the transport, choose Finish.

Transporting Tables
Prerequisites

  • The source and target databases are in the ONLINE operational state.

  • You are logged on to the source database as a database user who is authorized to access the tables that you want to transport, and to the target database as a database user who can create tables.

Procedure

  1. In the explorer tree, select the table in the source database that you want to transport.

  2. In the context menu of the table, choose [image] Export/Import [image] Transport...  .

  3. In the target database, select the user who is to own the transported table.

  4. Select your transport options.

    Options for Transporting Tables

    Property

    Description

    Target schema name

    Select the target schema name. To create a new schema, select <NEW SCHEMA> and enter the new schema name.

    Transport table definition

    The table definitions of the selected table from the database catalog are transported.

    Transport table data

    The application data from the selected table is transported.

    Note Note

    You can only transport tables that contain application data. You cannot transport system tables or view tables.

    End of the note.

  5. To start the transport, choose Finish.

More Information

  • Exporting Data and/or Information from the Database Catalog

  • Importing Data and/or Information from the Database Catalog

  • Database Administration, Exporting and Importing

For a detailed description of all prerequisites and options, see the Loader documentation: Loader Commands and SQL Statements.


-3068: Mismatch of parameter configuration between backup and instance - SAP Documentation

Background documentation -3068: Mismatch of parameter configuration between backup and instance

Explanation

When data is backed up, the database parameters are backed up too. Before data is restored, a check is run first to see if the database parameters from the data backup are compatible with the current database parameters of the target database.

User Response

The database parameters of the target database must match the database parameters saved in the data backup. At present, this only affects the following database parameters:

  • _UNICODE (in older database versions)

    Values in the source and target databases must match.

  • CacheMemorySize

    In the target database, the value for this parameter must be larger than in the source database.


-25242: Database identifier too long - SAP Documentation

Background documentation -25242: Database identifier too long

Explanation

You have executed a command to export, import, or update data of a single table. The command was terminated because the specified table name is too long.

User Response

Correct the table names and re-execute the command.


-843: Invalid parameter name - SAP Documentation

Background documentation -843: Invalid parameter name

Explanation

The parameter name is not an identifier.

User Response

Correct the name in accordance with the notation of identifiers.


-7024: Alter column not allowed, constraint violation - SAP Documentation

Background documentation -7024: Alter column not allowed, constraint violation

Explanation

The attempt was made to define a new value range for a particular column. The SQL statement fails if the table contains rows that violate the CONSTRAINT definition.

User Response

  1. Choose another CONSTRAINT definition, or do not change the definition at all.

  2. Use a QUERY statement to find out which rows do not meet the CONSTRAINT definition. You can then change or delete these.


Cluster - SAP Documentation

Background documentation Cluster

The CLUSTER table attribute is used in the BW Feature Package for SAP BI systems. Only use it for tables in a BW environment.

With this attribute, you configure that system no longer distributes the table contents evenly across all volumes in individual blocks of eight kilobyte pages. If possible, the system stores the table contents in larger connected blocks in the volumes instead.

More Information

SAP Note 1040431

SQL Reference Manual, System Tables FILES, MONITOR_PAGES, TABLESTORAGEDETAILS, INDEXSTORAGEDETAILS


-4005: Unknown column name - SAP Documentation

Background documentation -4005: Unknown column name

Explanation

There is no column with the specified name in any of the specified tables.

User Response

Use QUERY statements issued on the DOMAIN.COLUMNS system table to find out the names of the columns existing in the tables. Correct the user name.


From -10000 to -10999 - SAP Documentation

Background documentation From -10000 to -10999

-10001 | System error:: <description>
-10003 | Feature not supported for kernel version
-10100 | Invalid value for option <option> of SQLDBC_ConnectProperties
-10101 | Invalid value for ISOLATIONLEVEL (<description>)
-10102 | Invalid value for PACKETCOUNT (<description>)
-10103 | Invalid value for STATEMENTCACHESIZE (<description>)
-10104 | Invalid value for KEY
-10105 | Codepage not supported
-10200 | Function sequence error (data for execution expected)
-10201 | Function sequence error (no data for execution expected)
-10202 | Function sequence error (operation was aborted by disconnect)
-10210 | Invalid command state (no prepared SQL command)
-10220 | Calling addBatch is not allowed for PreparedStatement / Calling clearBatch is not allowed for PreparedStatement
-10221 | Command info too long
-10300 | Invalid parameter index [<number>]
-10301 | Invalid host type (<name>) for parameter (<number>)
-10304 | Parameter/Column (<number>) not bound
-10305 | Parameter <number> contains null pointer
-10306 | Negative buffer length for parameter (<number>) used.
-10307 | Invalid length or indicator value for parameter (<number>)
-10308 | Non-character and non-binary data for parameter (<number>) for piecewise insert not allowed
-10310 | Invalid column index (<number>)
-10312 | Attempt to concatenate to a NULL or DEFAULT value for parameter (<number>)
-10313 | Requested parameter (<number>) was already processed
-10314 | Invalid parameter processing sequence, process non-LOB data before parameter (<number>)
-10315 | Invalid start position (<number>)
-10316 | DATA AT EXECUTE for parameter (<number>) not allowed (conflicts with use of LOB parameter)
-10317 | LOB type for parameter (<number>) not allowed (conflicts with use of DATA AT EXECUTE parameter)
-10318 | Invalid LOB object
-10319 | Could not read/write LOB for parameter/column (<number>)
-10320 | LOB already closed for parameter/column (<number>)
-10321 | LOB invalidated by a previous error for parameter/column (<number>)
-10322 | Could not insert LOB. Parameter/column (<number>) has a NULL/DEFAULT value
-10323 | Non-character and non-binary data for parameter/column (<number>) was tried to read piecewise
-10324 | Stream with id (<number>) not found
-10325 | Stream parameter (<number>) is not an input/output parameter
-10326 | No data found for stream (<number>)
-10327 | Invalid use of null pointer in stream parameter field of stream descriptor for parameter (<number>)
-10328 | Mismatch of number of stream members for parameter (<number>) (application <count1>, database <count2>)
-10329 | Invalid serial value requested, must be first or last value
-10330 | Multiple stream output sequence error
-10331 | Input stream callback buffer overflow for table id (<number>), allowed <count1> bytes, written <count2> bytes.
-10332 | No callback function supplied for stream parameter (<number>)
-10400 | Conversion looses significant digits for parameter/column (<number>)
-10401 | Conversion of parameter/column (<number>) would truncate data
-10404 | Conversion not supported for parameter/column (<number>)
-10405 | Cannot convert UCS2 data to ASCII
-10406 | Invalid data length for UCS2 data for parameter/column (<number>)
-10407 | Corrupted UTF8 data for parameter/column (<number>)
-10408 | Character conversion failed
-10410 | Date/Time format is not supported for parameter/column (<number>)
-10411 | Illegal DATE value for parameter/column (<number>)
-10412 | Illegal TIME value for parameter/column (<number>)
-10413 | Illegal TIMESTAMP value for parameter/column (<number>)
-10414 | Conversion from binary value to string is not supported for parameter/column (<number>)
-10500 | Result set is closed
-10501 | Invalid position in result set: before first row
-10502 | Invalid position in result set: after last row
-10503 | The operation is not allowed for result set type FORWARD_ONLY
-10504 | Invalid position(<number>) for row set
-10505 | Result set type is UPDATABLE but row set type is READ_ONLY
-10506 | Result set type is READ_ONLY but row set type is UPDATABLE
-10507 | Internal error: No metadata available for row set operation
-10508 | Invalid encoding of column name for column (<number>) for row set operation
-10509 | The statement was not executed with updatable cursor concurrency
-10601 | SQL command is the empty string
-10602 | SQL command contains UNICODE character
-10603 | SQL command would generate a result set
-10604 | SQL command contains output parameters
-10605 | Illegal schema modification, parameters/columns have changed type/number incompatibly
-10706 | Statement too long
-10709 | Connection failed(<description>)
-10715 | Missing user name for connection | Missing password for connection
-10757 | XUSER error(<description>)
-10802 | Invalid numeric value for parameter/column (<number>)
-10803 | Allocation of shared memory failed (<description>)
-10807 | Connection down:[<description>]
-10808 | Feature <feature> not implemented in module yet: <module> line: <line_number>
-10810 | Session already in use
-10811 | Numeric overflow for parameter/column (<number>)
-10821 | Session not connected
-10856 | Invalid row array size 0
-10857 | Missing database name for connection
-10861 | Invalid use of null pointer for stream handle in parameter (<number>)
-10862 | Stream parameter (<number>) error in read/write procedure
-10899 | Unknown error
-10901 | No space left in request packet
-10902 | Invalid request packet structure
-10903 | Internal Error: LONGDATA part expected
-10904 | Internal error: Expected result count
-10905 | Invalid reply packet structure
-10906 | Internal Error: Entry for valindex (<number>) not found
-10907 | Internal Error: Long descriptor has error flag set


-28833: Consistent view has been cancelled - SAP Documentation

Background documentation -28833: Consistent view has been cancelled

Explanation

The consistent view (Is data or OMS version) which is used at the moment was canceled. This is due to the fact that either the maximum time limit for a consistent view was exceeded (database parameter: MaxRetentionTime) or that a memory bottleneck occurred and the specified time limit in the database parameter MinRetentionTime was exceeded.

User Response

Make sure that consistent views do not exists for too long (e.g. with suitable commits) or increase the parameter accordingly. A parameter increase however will make data volume grow since old object versions have to be stored longer.


-7082: SQL statement not allowed for this table type - SAP Documentation

Background documentation -7082: SQL statement not allowed for this table type

Explanation

SQL statements for deleting or changing table rows or for changing table definitions are not permitted for this table type.

User Response

You cannot use this SQL statement.


CATALOG ACCESS USING USERS TABLE LIST - SAP Documentation

Background documentation CATALOG ACCESS USING USERS TABLE LIST

CATALOG SCAN USING USERS TABLE LIST is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

In the database catalog, there is a list of visible tables for each database user. The system can choose this strategy if the query can be executed by traversing this list.

How Does the System Access the Data?

The system identifies the relevant tables using a key range scan.

More Information

List of All Search Strategies

Sequential Search


backup_start - SAP Documentation

Background documentation backup_start

With this command you start backing up the data area or the log area of the database.

After the system has executed this command, information about the backup is output. The information is only given when the backup operation is completed or interrupted. For this reason, the response to this command can take a long time.

You can display the status of the backup operation with the DBM command backup_state.

Note Note

Pay special attention to the Returncode reply field, which contains a numeric value for a message.

End of the note.

If it is clear from the message number that the backup operation was interrupted and not completed, continue the session with a succeeding command (backup_replace, backup_ignore), or terminate it (backup_cancel).

Prerequisites

  • You have the server permission Backup.

  • You have opened a database session (see: db_create).

  • If you want to perform an interactive log backup, a complete data backup for the relevant database must have been carried out at least once.

Structure

backup_start <medium_name> [<backup_type>] [AUTOIGNORE]

Options

Option

Description

<medium_name>

Name of the backup template

When backing up on a group of parallel data carriers, specify the name of the group. (See medium_put, Database Administration, Backup Templates and Data Carriers)

<backup_type>

Type of backup

You only need to specify an entry here if you did not specify the backup type when you defined the backup template to be used (template definitions in earlier versions).

Possible values are: DATA | PAGES | LOG

DATA: complete data backup

PAGES: incremental data backupLOG: Interactive log backup

If you do not specify an entry here, the system uses the value which you specified during the definition of the backup template.

AUTOIGNORE

This option is only relevant when backing up to a group of parallel data carriers in the background.

You use it to define that the system continues backing up to the remaining data carriers when one of the data carriers is full. This prevents you having to react interactively (see: backup_ignore, Database Administration: Backing Up to a Group of Parallel Data Carriers).

Note Note

Only use this option when you are sure that the complete amount of backup data will fit on the first set of data carriers in the group (i.e. no succeeding data carriers are required).

End of the note.

Result

OK

...

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

If an error occurs while you are using a backup tool, you will receive a reply with the following information:

Reply in the Event of an Error
Value | Description
<errcode> | Error Message Number See: Messages documentation
<err_description> | Description of the error
<extended_description> | Cause of error

The following errors may occur:

Messages
Error Message Number | Error message text | Explanation
-24927 | ERR_TOOLCHK: the external backup tool was not found | The backup tool could not be found or has been installed incorrectly.
-24926 | ERR_MEDIUMCHK: the medium cannot be used with this external backup tool | The backup template specified cannot be used with this backup tool.
-24925 | ERR_PREPARE: prepare of the backup operation failed | The preparations required to use the backup tool could not be completed correctly.
-24924 | ERR_DBREQ: cannot start database kernel request | The database was unable to start the backup.
-24923 | ERR_TOOLREQ: cannot start external backup tool correctly | The backup tool could not be started correctly.
-24922 | ERR_OPCHK: cannot check state of backup operation | Unable to check the status of the database or the backup tool.
-24921 | ERR_POSTOP: cannot finish backup operation correctly | Although the backup was successful, the required post-processing steps could not be performed.
-24920 | ERR_BACKUPOP: backup operation was unsuccessful | The backup failed due to a problem with the database or with the backup tool.
-24919 | ERR_CLEANUP: cannot clean up correctly after backup operation | Although the backup was successful, the system resources used during the check could not be released.

More Information

Messages documentation

Database Administration, Backing Up Databases


-4006: Unknown domain name - SAP Documentation

Background documentation -4006: Unknown domain name

Explanation

There is no domain with the specified name.

User Response

Use a QUERY statement issued on the DOMAIN.DOMAINS system table to view a list of the known ranges. Change the name of the range in the SQL statement accordingly. It may be sufficient to place the missing owner in front of the statement.A database administrator (DBA) can create a range with the desired name and properties.


Database Studio - SAP Documentation

Background documentation Database Studio

SAP MaxDB Database Studio is a tool for managing SAP MaxDB databases.

Database Studio replaces Database Manager GUI and SQL Studio and provides a GUI for Loader.

More Information

Database Studio documentation


archive_stage_repeat - SAP Documentation

Background documentation archive_stage_repeat

You can create multiple copies of the original log backup files on different data carriers. The system then checks whether the copying was successful.

With the help of options, you can control whether the copied files should be compared with the original files for security reasons, and whether the original files should be deleted after copying.

You can only execute this DBM command immediately after the DBM command for creating a single copy of the log backup files (archive_stage command), and in the same DBM server session. When you execute the archive_stage_repeat command, exactly the same log backup files are copied again as were copied using the archive_stage command.

Once you specify the KEEP option, you can repeat the command any number of times while also specifying backup templates for various data carriers.

Only if you do not specify this option are the original log backup files deleted after the copying is performed, and information about the archived log backup files is displayed for you.

The archived log backup files are assigned their own external backup IDs and are entered in the backup history.

See also:

Prerequisites

  • You have the server permission Backup.

  • You have executed the DBM command for creating a single copy of the log backup files using the KEEP option, and you are still within the same DBM server session (see: archive_stage).

  • The backup templates for the data carriers are defined for the backup type LOG (see: medium_put).

Structure

archive_stage_repeat <ext_backup_medium> [NOVERIFY] [KEEP]

Options

Option

Description

<ext_backup_medium>

Name of the backup template

NOVERIFY

The system only performs the standard checks to determine whether the backup was successful. The system displays error messages where appropriate, and the output of the backup tools.

If you do not specify this option, then the system additionally compares the content of the archived files with the content of the original files (system default).

KEEP

The original files are archived but are not deleted afterwards.

If you do not specify this option, then the original files are deleted after they have been successfully archived on the data carrier (system default).

Result

OK

Processed Stage Files <number>

Bytes Processed <number>

Deleted Stage Files <number>

Remaining Stage Files <number>

Values for the Reply Fields
Value | Description
Processed Stage Files | Processed log backup files
Bytes Processed | Processed bytes
Deleted Stage Files | Deleted log backup files
Remaining Stage Files | Remaining log backup files
<number> | Number

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>

The backup files were created using the backup template DemoFileLog. You first want to archive them on the LOCATION_1 data carrier. The system should perform the standard checks to determine whether the backup was successful. The content of the archived files should also be compared with the content of the original log backup files (system default). The original files should not be deleted afterwards:

dbmcli on DEMODB>archive_stage LOCATION_1 DemoFileLog KEEP

OK

Processed Stage Files 9

Bytes Processed 12845056

Deleted Stage Files 0

Remaining Stage Files 2

You then want to archive the log backup files on the LOCATION_2 data carrier. Only the usual system checks are to be performed. The original files should be deleted afterwards (system default):

dbmcli on DEMODB>archive_stage_repeat LOCATION_2 NOVERIFY

OK

Processed Stage Files 9

Bytes Processed 12845056

Deleted Stage Files 9

Remaining Stage Files 0

More Information

Database Administration, Archiving Backup Files


-7068: Outer Join not allowed in this context - SAP Documentation

Background documentation -7068: Outer Join not allowed in this context

Explanation

An OUTER JOIN indicator was used in a comparison predicate in which no table column was specified in one of the two expressions. An OUTER JOIN indicator is only allowed in a JOIN predicate.

User Response

You can repeat the SQL statement without the OUTER JOIN indicator.


-24905: ERR_NOEBIDLIST: no information on external backup IDs available - SAP Documentation

Background documentation -24905: ERR_NOEBIDLIST: no information on external backup IDs available

Explanation

No information on external backup IDs is available since this information was not requested.

User Response

Execute the backup_ext_ids_get DBM command to fetch the external backup IDs.


-8033: Incomplete log segment - SAP Documentation

Background documentation -8033: Incomplete log segment

Explanation

You tried to back up the log area. However, there are fewer log entries to be backed up than defined in the general database parameter AutoLogBackupSize.

User Response

No action required.


recover_state_check - SAP Documentation

Background documentation recover_state_check

Use this command to display information about the current status of the operation for checking a backup (see: recover_check).

You can execute this command while a backup check is in progress. To do this, open a second command prompt and log on there again to the database on which the backup is being checked..

Prerequisites

  • You have the server permission Backup.

  • You have opened a service session (see: service_connect).

Structure

recover_state_check

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together


Deleting Snapshots - SAP Documentation

Procedure documentation Deleting Snapshots

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

    More information: Glossary, Server Permission

  • The database is in the ONLINE or ADMIN operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Snapshots tab page.

  4. Select the snapshot you want to delete.

  5. Choose Delete...

More Information

Database Administration, Snapshot of the Data Area


Loader Keywords: Overview - SAP Documentation

Object documentation Loader Keywords: Overview

Keywords are part of Loader commands that define the function of the command. The keywords are modified by arguments and options. Loader uses the keywords listed below.

Keywords
AND | ANSI | APPEND
ASCII | AUTOCOMMIT |
BINARY | BOOLEAN | BY
CATALOG | CHAR | CODESET
CODETYPE | COLUMNS | CONFIGURATION
COUNT | CSV | CURRENT
DATA | DATE | DB
DB2 | DDL | DEC
DECIMAL | DEFAULT | DELIMITER
DUPLICATES |  |
EBCDIC | EUR | EXPORT
FILE | FOR | FWV
HEX | HILO |
IF | IGNORE | IMPORT
INSTALLATION | INSTREAM | INTERNAL
INTEGER | ISO | ISOLATION
JIS |  |
KEY |  |
LANGUAGE | LOB | LOHI
MAPCOLUMNS | MAPSCHEMA | MAXRECORDS
MAXROWS | MESSAGE |
NOT | NULL | NUMBER
OFF | ON | OR
ORACLE | ORDER | OTHERWISE
OUTSTREAM |  |
PACKAGE | PAGE | PAGES
PIPE | POS |
RECORDS | REJECT | RELEASE
ROUND | ROW | ROWS
SCALE | SCHEMA | SEPARATOR
SEQNO | SERVERDB | SET
SQLMODE | STAMP | START
SQLID | SYSDATE | SYSTEM
TABLE | TAPE | TIME
TIMESTAMP | TO | TRUNC
UID | UPDATE | USA
USAGE | USE | USER
USERGROUP | USERKEY |
VERSION |  |
WITH |  |
ZONED |  |

More Information

  • Loader Terms: Overview

  • Calling the Loader

  • Syntax Rules: Sorted Alphabetically

    Syntax Rules: Sorted Semantically

Loader

SQL Reference Manual, Keyword (keyword)


-28532: Version bound by transaction - SAP Documentation

Background documentation -28532: Version bound by transaction

Explanation

When liveCache called omsOpenVersion, it established that the addressed OMS version is already linked to a competing task, but has not been opened.The version cannot be opened until the task has ended its transaction.

User Response

Contact Support.


-25502: Error closing file <file_name> : <error_text> - SAP Documentation

Background documentation -25502: Error closing file <file_name> : <error_text>

Explanation

An operating system-dependent text appears in the operating system error message, indicating the error that occurred.

User Response

No user action is required.


Table Editor - SAP Documentation

Background documentation Table Editor

In the table editor, you can change tables.

Columns
Property | Description (Links to SQL Reference Manual)
Name | Column Name (column_name)
Data Type | Data Type (data_type)
Dim | Dimension Maximum number of characters
Code Attribute | Code attribute
Key | If you select this option, you add this column to the primary key. Key Definition (key_definition) All columns in the primary key must be NOT NULL columns. You cannot use any columns of the LOB data type in the primary key. The database ensures that no NULL value exists in the key column and that no two data records in the table have the same values in all key columns.
Not Null | If you select this option, the value for this column cannot be a NULL value. Column Attributes (column_attributes)
Constraints
Property | Description (Links to SQL Reference Manual)
Name | Constraint Name (constraint_name)
Definition | CONSTRAINT Definition (constraint_definition)
Indexes
Property | Description (Link to SQL Reference Manual)
Index name | Index Name (index_name)
In Index | Indicates whether a column belongs to the index
Sort | Sort sequence
Name | Column name
Data Type | Column data type You cannot use LOB columns in an index.
Unique | Indicates whether the values for this columns must be unique UNIQUE Definition (unique_definition)
Disabled | Indicates whether the index is deactivated
Usage Count | Indicates how often the system has used the index
Bad | Indicates whether the index is damaged
Foreign Keys
Property | Description (Link to SQL Reference Manual)
Name | Foreign key name
Referencing Columns | Referencing column Referential CONSTRAINT Definition (referential_constraint_definition)
Reference Schema | Schema to which the table with the column that is referenced belongs
Reference Table | Table to which the column that is referenced belongs
Reference Column | Column which is referenced
Rule | Rule for behavior of the table referenced if a data record is deleted in the referencing table DELETE Rule (delete_rule)
Table: Miscellaneous

Property

Description (Link to SQL Reference Manual)

Sample Type

Sample type that the system uses for estimating the statistics for the SQL Optimizer

More information:

  • Updating SQL Optimizer Statistics

  • SQL Reference Manual, SAMPLE Definition (sample_definition)

Sample Data

Sample value (in data records or percent) that the system uses for estimating the statistics for the SQL Optimizer

Table Size

Information about the current table size

Clustered

Only for SAP NetWeaver BI systems with BW Feature Pack

This attribute has the result that the database does not distribute pages in single blocks of 8 KB across all volumes, rather, where possible it saves the contents in larger, contiguous blocks in the data volumes.

More information:

  • SAP Note 1040431

  • MaxDB Wiki: https://wiki.sdn.sap.com/wiki/x/W0o

Virtual Primary Key

Only for SAP NetWeaver BI systems with BW Feature Pack

For tables which have no primary key, the system forms a primary key internally and sets the Clustered attribute. Columns which the system uses for the primary key do not need to have the UNIQUE attribute.

Packed

Only for SAP NetWeaver BI systems with BW Feature Pack

The system stores numerical columns that are not key columns in compressed form.

Optimizer Statistics
Property | Description
Columns and Indexes | Columns and indexes
Distinct Values | Estimated number of lines in the table
Page Count | Estimated table size (in pages) This size affects which search strategy is selected by the system. More information: SQL Optimizer, Search Strategies
Last Statistics Update | Time of the last statistics update


-872: Number of columns > number of parameters - SAP Documentation

Background documentation -872: Number of columns > number of parameters

Explanation

Fewer SQL variables were specified in the statement than columns existed in the table.

User Response

If this is not desired, either add SQL variables or reduce the number of columns in the table.


-28550: Index operation failed - SAP Documentation

Background documentation -28550: Index operation failed

Explanation

An error occurred during an operation on a disclosed persistent object index.

User Response

The knldiag should contain further information regarding the error.


-3030: Invalid SESSION TIMEOUT - SAP Documentation

Background documentation -3030: Invalid SESSION TIMEOUT

Explanation

  1. An invalid timeout value was specified in the CREATE USER or CREATE USERGROUP statement.

  2. If the CONNECT statement is specified with a timeout value, this value must be less than or equal to the maximum timeout value possible for the user concerned.

User Response

  1. Choose a value of between 30 and 32400 seconds for the special database parameter SessionTimeout.

  2. If no user-specific timeout value was defined for the current user in the CREATE USER or CREATE USERGROUP statement, this maximum value is equal to the SessionTimeout database parameter.

  3. If 0 is given as the timeout value in the CONNECT statement, periods of inactivity during a session are not checked.


-10200: Function sequence error (data for execution expected) - SAP Documentation

Background documentation -10200: Function sequence error (data for execution expected)

Explanation

The method that was called could not be executed, because the previous call of method SQLDBC_PreparedStatement::execute or SQLDBC_PreparedStatement::nextParameter requires data to be inserted piecewise using SQLDBC_PreparedStatement::putData.

User Action

End the previous action using SQLDBC_PreparedStatement::putData or SQLDBC_PreparedStatement::nextParameter.


-7055: Column(s) already indexed - SAP Documentation

Background documentation -7055: Column(s) already indexed

Explanation

There is already an index for the specified column(s).

User Response

Use a QUERY statement issued on the DOMAIN.INDEXCOLUMNS system table to check whether the index values are stored in ascending or descending order. No user action is required.


Database Files - SAP Documentation

Procedure documentation Database Files

In the Diagnosis user menu of the DBA Cockpit, you can find, among other things, a list of all the log and message files in the database system.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Database Files [image] .

You can choose the following display options:

  • Default Files

  • Advanced File List

Caution Caution

For SAP NetWeaver 7.1, the database files are displayed in the Properties user menu, in the Files area.

End of the caution.

Result

Database files can contain various types of information, including information on the size and contents of the files.

  • Choose a file and select Display File to show the content of this file. You can only show ASCII files with this display. For very large files, the system asks for confirmation. Files that are larger than 50 MB in size cannot be displayed in the SAP system.

  • Choose the file and select Save File to download this file to the directory that you specified.

More Information

Messages

Kernel Messages


-881: Unknown type name - SAP Documentation

Background documentation -881: Unknown type name

Explanation

The type definition is not known.

User Response

Correct the type name or define a type.


250: Duplicate secondary key - SAP Documentation

Background documentation 250: Duplicate secondary key

Explanation

There is already a table row with the specified secondary key. UNIQUE was specified for the secondary key.

User Response

To avoid a key value collision, correct the value of the key to be inserted in the SQL statement.The error message specifies the column or multiple-column index already containing the specified values.


From -900 to -999 - SAP Documentation

Background documentation From -900 to -999

Database Kernel Error Messages
-900 | Data area full
-901 | Log full
-902 | I/O error
-903 | Hostfile I/O error
-904 | Space for result tables exhausted
-907 | Space for user session exhausted
-910 | COSTLIMIT for this user exhausted
-911 | Work rolled back
-913 | Lock request timeout
-914 | New volume not accessible
-915 | No more memory
-917 | Save/Restore write process crash - I/O error
-918 | Stack overflow
-925 | Net line down
-942 | Unknown table name
-955 | Duplicate name


Working with SQL Statements: Overview - SAP Documentation

Background documentation Working with SQL Statements: Overview

  • Entering and Executing SQL Statements

  • Visual Query


-23059: You do not have the permission to modify this object - SAP Documentation

Background documentation -23059: You do not have the permission to modify this object

Explanation

You cannot modify an object from the SQL Studio that has been released by someone else.

User Response

Contact the owner of the object.


-27009: Command too long - SAP Documentation

Background documentation -27009: Command too long

Explanation

An attempt was made to prepare or execute an SQL statement that is too long.

User Response

Contact Support.


-25603: Error processing IMPORT in PAGE Format. Loader versions used for EXPORT and IMPORT differ (EXPORT <version>, IMPORT <version>) - SAP Documentation

Background documentation -25603: Error processing IMPORT in PAGE Format. Loader versions used for EXPORT and IMPORT differ (EXPORT <version>, IMPORT <version>)

Explanation

You have attempted to re-import data that was exported in the PAGES format, which was provided by the database. Here the Loader detected that the version of the Loader used for importing data is different from the version of the Loader with which the data was exported. To ensure that the data is re-imported correctly, the version of the Loader has to be the same for importing and exporting of the data in the PAGES format.

User Response

Start the import using the same version of the Loader used for the export.


Database Studio Preferences: Export/Import - SAP Documentation

Background documentation Database Studio Preferences: Export/Import

Export/Import

Property

Options

Comments and Further Information

Connection parameters for export/import

  • Auto Commit Mode

  • SQL Mode

  • Isolation Level

Connection parameters that the system uses to execute SQL statements during export/import:

  • AUTOCOMMIT mode

  • SQL mode

  • Isolation level

To store catalog and data when exporting/importing

Use Loader Packages

Use Files

Choose whether you want to use Loader packages or files for the export/import and specifiy the path where they are to be stored.
Export/Import –> Data Format

Property

Options

Comments and Further Information

Data File Formats

File Format

Loader,

  • CSV, FWV, FWV BINARY

  • PAGES, RECORDS

LOB Files

Loader, Exporting and Importing LOB Values

Data Field Formats

Text Fields

Loader, Data Format

Data/Time Formats

Representation of special values

Number value format

Error Handling

Primary key constraint

Defines how duplicated data records are dealt with on import

Maximum allowed errors for a single command

Determines how many errors must occur before the export/import process is aborted


-8031: Schema must be specified - SAP Documentation

Background documentation -8031: Schema must be specified

Explanation

The schema must be specified for every table name in a database procedure.

User Response

Correct the database procedure accordingly.


-28600: Invalid request code in packet - SAP Documentation

Background documentation -28600: Invalid request code in packet

Explanation

The packet contains invalid request code.

User Response

Contact your local support.


-24996: ERR_PARAM - wrong parameters - SAP Documentation

Background documentation -24996: ERR_PARAM - wrong parameters

Explanation

Your DBM command was executed with incorrect parameters.

User Response

Check your entries. You should also check whether the command requires a database name or a special type of session.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


FREEBLOCKMANAGERBLOCKSTATES - SAP Documentation

Object documentation FREEBLOCKMANAGERBLOCKSTATES

The system table SYSINFO.FREEBLOCKMANAGERBLOCKSTATES contains information on block states in the free block management.

Structure

FREEBLOCKMANAGERBLOCKSTATES
VOLUMEID | FIXED(5) | Identification of the data volume
BLOCKNUMBER | FIXED(10) | Block offset on the data volume
BLOCKSTATE | CHAR(25) | State of the block in the free block management

More Information

FREEBLOCKMANAGERSECTIONS

FREEBLOCKMANAGERSTATISTICS

FREEBLOCKMANAGERSTATISTICSRESET


-4020: Unknown sequence name - SAP Documentation

Background documentation -4020: Unknown sequence name

Explanation

There is no sequence with the specified name.

User Response

You can display a list of existing sequences using a QUERY statement based on the DOMAIN.SEQUENCES system table.


Kernel Messages - SAP Documentation

Procedure documentation Kernel Messages

The Diagnosis user menu of the DBA Cockpit contains, among other things, a display of information from the database kernel.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] .

Result

  • Current Messages

  • Old Messages

  • Error Messages

  • Message History

Current messages and old messages are logged in ring memory files that are overwritten as soon as they reach a certain size.

The first part of the file, which logs the last restart of the database, is excluded from the write cycle. A new log file is created each time the database system is started.

Error messages are logged continuously in a file. Delete any obsolete entries manually.

More Information

Database Files

Database Administration, Log Files


-774: Datafile write error - SAP Documentation

Background documentation -774: Datafile write error

Explanation

An error occurred when writing a datafile for the processing of LONG columns.

User Response

Look up in the trace file *.pct in which column the error occurred. Then check the datafile.


-28522: Missing before image - SAP Documentation

Background documentation -28522: Missing before image

Explanation

The omsStore function established that no before-image exists of the object that needs to be changed.In this case, no ForUpd pointer was requested for the object.No changes can be made to the object.

User Response

Contact Support.


25921: Range of SEQUENCE is exhausted - SAP Documentation

Background documentation 25921: Range of SEQUENCE is exhausted

Explanation

You are executing an command to export (EXPORT) database catalog information. While exporting a sequence object it became apparent when checking the value range of the sequence that this range has been exhausted.

User Response

Correct the cause of the error and re-execute the command.


-28104: Wrong index access - SAP Documentation

Background documentation -28104: Wrong index access

Explanation

The attempt to read an object over an index failed. The passed index-type does not match the index from where data should be read.

User Response

Check if the selected index and the passed index-value are compatible.


-8001: User must be connected - SAP Documentation

Background documentation -8001: User must be connected

Explanation

A database session can only be started with a CONNECT statement.

User Response

Enter a CONNECT statement.


-3061: Invalid escape value - SAP Documentation

Background documentation -3061: Invalid escape value

Explanation

Exactly one character is valid for an escape value.

User Response

Reduce the escape value to one character.


-6014: Duplicate value - SAP Documentation

Background documentation -6014: Duplicate value

Explanation

In defining a MAPCHAR set, an internal value was specified more than once.

User Response

Change the definition of the MAPCHAR set in such a way that it is not necessary to specify several mappings for an internal value.


-24919: ERR_CLEANUP: cannot free all operational resources after backup operation - SAP Documentation

Background documentation -24919: ERR_CLEANUP: cannot free all operational resources after backup operation

Explanation

It was not possible to free all of the temporary system resources that were used for a successful backup, check, or restore.

User Response

Check which resources were not released using the backup log. If the resources are temporary files or pipes, try to remove these manually. You should also attempt to fix the problem with the help of the extended error description. If you cannot solve the problem, contact Support.


-25005: User (<user_name>) logon to database failed: <error_text> - SAP Documentation

Background documentation -25005: User (<user_name>) logon to database failed: <error_text>

Explanation

The user specified could not be logged on to the database instance specified.

User Response

Use the SQL error text to determine why the log on attempt failed. Fix the cause or the error and restart the Loader.


MULTIVERSIONREADSTATISTICS - SAP Documentation

Object documentation MULTIVERSIONREADSTATISTICS

The system table SYSINFO.MULTIVERSIONREADSTATISTICS provides details about operations for preserving consistent reading since the last start of the database instance.

Structure

MULTIVERSIONREADSTATISTICS
MINTRANSACTIONID | FIXED(15) | ID of the oldest transaction for which the history data has to be retained
RETAINHISTORY | CHAR(3) | Retain the history data for the transactions started after the transaction indentified via MINTRANSACTIONID (YES | NO)
HISTORYANCHORFROMFILECOUNT | FIXED(20) | Number of pages whose entry points into history data had to be recreated via additional page access
HISTORYANCHORFROMPAGECOUNT | FIXED(20) | Number of pages whose entry points into history data could be created directly from the page
HISTORYANCHORTOFILECOUNT | FIXED(20) | Number of pages whose entry points into history data had to be stored on an additional page while writing
HISTORYANCHORTOPAGECOUNT | FIXED(20) | Number of pages whose entry points into history data could be stored on the page itself while writing
HISTORYACCESSCOUNT | FIXED(20) | Number of accesses to history data
PERCENTAGEPAGESCOPIEDFORWRITE | FIXED(3) | Percentage of pages to be written that have to be copied before being written to the memory (%)

More Information

MULTIVERSIONREADSTATISTICSRESET


-707: Invalid CONNECT statement syntax - SAP Documentation

Background documentation -707: Invalid CONNECT statement syntax

Explanation

There is an error in the CONNECT statement syntax.

User Response

Correct the CONNECT statement.


-10715: Missing user name for connection | Missing password for connection - SAP Documentation

Background documentation -10715: Missing user name for connection | Missing password for connection

Explanation

An attempt was made to connect to the database using the SQLDBC_Connection::connect method. One of the following problems arose:

  • You did not specify a database user.

  • You did not specify a password for the database user.

User Response

Enter the database user or the corresponding password in the properties of the SQLDBC_Connection::connect method.

  • If you want to establish the connection using the KEY property, use the XUSER list command to check whether an XUSER entry exists for this database user or whether the XUSER entry contains the database user's password.

  • f you want to establish the connection using the KEY=SQLOPT property, check whether the -u <database_user>, <database_user_password> option was set in the SQLOPT environment variables.


-24960: ERR_DBRUN - database is running - SAP Documentation

Background documentation -24960: ERR_DBRUN - database is running

Explanation

The database instance is in the ONLINE or ADMIN operational state. The DBM command you were using is not permitted in this operational state.

User Response

First of all, make sure the database instance is OFFLINE and then re-execute the command.

Caution Caution

Stopping the database instance, taking it OFFLINE breaks the connection to all users logged on to the database or to all programs that are running on it.

End of the caution.


-5004: Missing constant - SAP Documentation

Background documentation -5004: Missing constant

Explanation

A constant is missing in the SQL statement.

User Response

Insert a constant into the SQL statement.


VERSION - SAP Documentation

Example documentation VERSION

Use of the system table SYSINFO.VERSION

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table VERSION to determine the following database information, among other things:

  • Version of the software used by the currently active database

    SELECT majorversion, minorversion, correctionlevel, build

    FROM SYSINFO.VERSION

  • Version of the operating system

    SELECT operatingsystem

    FROM SYSINFO.VERSION

  • Kernel variant

    SELECT KERNELVARIANT

    FROM SYSINFO.VERSION


EXPAND(x,n) - SAP Documentation

Function documentation EXPAND(x,n)

EXPAND(x,n) is a string function that adds as many blank characters (code attribute ASCII, UNICODE) or binary zeros (code attribute BYTE) to the end of the character string x (string specification) as are needed to give the string the length specified by n (an unsigned integer). Only expressions that produce an alphanumeric value are permitted as string specifications.

EXPAND(x,n)
x, n | Result of the EXPAND(x,n) Function
x is a NULL value | NULL value

More Information

LFILL(x,n,a)

RFILL(x,a,n)


OMSDISCLOSEDCLASSMEMBERS - SAP Documentation

Object documentation OMSDISCLOSEDCLASSMEMBERS

The system table DOMAIN.OMSDISCLOSEDCLASSMEMBERS contains a list of all members from all disclosed classes.

Structure

OMSDISCLOSEDCLASSMEMBERS
CLASSID | FIXED(10) | ID of the disclosed class
MEMBERNAME | CHAR(256) | The member's name
LEVEL | FIXED(10) | The member's level
TYPE | CHAR(256) | The member's type
REFERENCEDCLASSID | FIXED(10) | ID of the referenced class in the case of an OMS/OID member
DIMENSION | FIXED(10) | The member's dimension
SIZE | FIXED(10) | The member's size
ALIGNMENT | FIXED(10) | The member's placement
OFFSET | FIXED(10) | The member's offset

More Information

OMSDISCLOSEDCLASSES


-25321: This condition value is not a valid number: '<value>' - SAP Documentation

Background documentation -25321: This condition value is not a valid number: '<value>'

Explanation

The Loader command to import or update data contains an error.You can specify conditions for individual columns in the command, which then govern how the values are imported/updated. The system must be able to identify the constants in conditions for numerical columns as numbers.If you see this error message, it means that the value you have entered as a constant is not recognized as a number.

User Response

Correct the command and then re-execute it.


-28807: No next object - SAP Documentation

Background documentation -28807: No next object

Explanation

An object-iterator cannot find the next object.

User Response

Internal error code.


-3065: Invalid date input value - SAP Documentation

Background documentation -3065: Invalid date input value

Explanation

The value to be converted into a date value contains an invalid element, or too many or too few elements.

User Response

Correct the value according to the format.


-25393: Error during check if table <table_name> exists <error_text> - SAP Documentation

Background documentation -25393: Error during check if table <table_name> exists <error_text>

Explanation

An error occurred while checking whether the table <table_name> exists. The cause of the error is described in more detail in <error_text>.

User Response

Correct the cause of the error and re-execute the command.


-25332: Error getting schema definition of table <table_name> (<SQL_error_text>) - SAP Documentation

Background documentation -25332: Error getting schema definition of table <table_name> (<SQL_error_text>)

Explanation

Error executing the Loader command for exporting data.When you execute an EXPORT command, the data as well as the schema definition of the table is exported for each table that has to be imported. This means that the exported table can be completely restored when you call the IMPORT command.An error occurred while exporting the schema definition of the table.You can find the cause of the error in the SQL error text.

User Response

Analyze the cause of the error and re-execute the command.


-28802: Wrong object version - SAP Documentation

Background documentation -28802: Wrong object version

Explanation

An attempt was made to lock a deleted or reused object.This error is translated as an OmsOutOfDate Exception, but can be logged as an error in the knldiag file.

User Response

Contact Support.


Defining Custom Table Properties - SAP Documentation

Procedure documentation Defining Custom Table Properties

Prerequisites

  • You are logged on to the database as a database user.

  • You have the ALTER privilege for the table.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the explorer tree.

  2. In the context menu of the table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Open the Miscellaneous tab page and change the relevant properties.

    Table: Miscellaneous

    Property

    Description (Link to SQL Reference Manual)

    Sample Type

    Sample type that the system uses for estimating the statistics for the SQL Optimizer

    More information:

    • Updating SQL Optimizer Statistics

    • SQL Reference Manual, SAMPLE Definition (sample_definition)

    Sample Data

    Sample value (in data records or percent) that the system uses for estimating the statistics for the SQL Optimizer

    Table Size

    Information about the current table size

    Clustered

    Only for SAP NetWeaver BI systems with BW Feature Pack

    This attribute has the result that the database does not distribute pages in single blocks of 8 KB across all volumes, rather, where possible it saves the contents in larger, contiguous blocks in the data volumes.

    More information:

    • SAP Note 1040431

    • MaxDB Wiki: https://wiki.sdn.sap.com/wiki/x/W0o

    Virtual Primary Key

    Only for SAP NetWeaver BI systems with BW Feature Pack

    For tables which have no primary key, the system forms a primary key internally and sets the Clustered attribute. Columns which the system uses for the primary key do not need to have the UNIQUE attribute.

    Packed

    Only for SAP NetWeaver BI systems with BW Feature Pack

    The system stores numerical columns that are not key columns in compressed form.

  5. In the context menu of the editor window, choose Create Table (if you are creating a new table) or Alter Table (if the table already exists).


-25801: Internal error [<file_name>,<line_no>,<error_code>]. Contact support. - SAP Documentation

Background documentation -25801: Internal error [<file_name>,<line_no>,<error_code>]. Contact support.

Explanation

An internal program error has occurred.

User Response

Notify Support and give them the details contained in the error message.


-25235: Some positions specified more than once - SAP Documentation

Background documentation -25235: Some positions specified more than once

Explanation

Error executing the Loader command for exporting data.The command specifies the CSV format for the data stream. All values to be exported must be specified using different position specifications. Otherwise, exported values will be overwritten

User Response

Correct the position specification and re-execute the command.


Creating Database Traces - SAP Documentation

Procedure documentation Creating Database Traces

When you activate the database trace, the system logs all database kernel messages. The log file database trace helps you identify errors that occurred, for example, when SQL statements were processed.

Note Note

Activating the database trace has a negative effect on performance for SAP liveCache databases. This is not the case for SAP MaxDB databases.

End of the note.

Prerequisites

You are logged on to the database as database system administrator or as a DBM operator with server authorization for starting and stopping the database trace.

More information: Glossary, Server Permission

Procedure

Starting the Database Trace

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Database Trace [image] Options...

  3. Select the trace options.

    Database Trace: Options

    Area

    Property

    Description

    Options

    -

    You can set a trace level for each option. The higher the trace level, the more detailed the information that is recorded for this option by the database trace.

    Advanced

    Trace Session

    Database sessions that are to be included in the database trace

    • All sessions

    • Current session

    • Session

      Enter the ID of the database session.

    Stop on Error

    If you specify an error number, the system stops the database trace when this error occurs.

  4. To start the trace, choose Finish.

Stopping the Database Trace

After you have performed the database actions you want to analyze, stop the database trace:

  1. In the context menu of the database, choose [image] Administration Tasks [image] Database Trace [image] Options...

  2. Choose Deselect All.

  3. Choose Finish.

Generating the Database Trace Log File

  1. In the context menu of the database, choose [image] Administration Tasks [image] Database Trace [image] Generate...

  2. Choose the properties that you want to display in the log file.

    Database Trace: Options for Generating the Log File

    Option

    What Is Written to the Log File

    a

    Trace outputs of the order interface

    b

    Trace outputs of the data record interface

    k

    Trace outputs of the table interface

    m

    Message buffer

    e

    Number of the trace page and the position of the block on the page for the order interface and the message buffer

    s

    Information about the processing strategy

    t

    Results of internal time measurements

    x

    Additional trace outputs
    Database Trace: Further Options for Generating the Log File

    Option

    Description

    Flush before generate database trace

    Before the system generates the log file, it writes all the information contained in the working memory to the database trace.

    Open database trace file after generation

    Once the system has generated the log file for the database trace, the file is displayed in Database Studio.

    Deactivate database trace after generation

    Deactivates the database trace after the log file was generated (if you have not already deactivated it).

  3. To generate the log file, choose Finish.

Displaying the Database Trace Log File

To display the database trace (Database Trace (Readable) file), proceed as described in section Displaying Configuration and Log Files.

Initializing the Database Trace

You delete all database trace information that the system has collected so far.

In the context menu of the database, choose [image] Administration Tasks [image] Database Trace [image] Clear...

More Information

SAP Note 837385

Database Administration, Traces


MAPCHARSETS - SAP Documentation

Example documentation MAPCHARSETS

Use of the system table DOMAIN.MAPCHARSETS

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table MAPCHARSETS to determine the following database information, among other things:

  • Names of all mapchar sets

    SELECT DISTINCT mapcharsetname

    FROM DOMAIN.MAPCHARSETS

  • Conversion of the hexadecimal value D6in the mapchar set DEFAULTMAP

    SELECT map_code, map_character

    FROM DOMAIN.MAPCHARSETS

    WHERE mapcharsetname = 'DEFAULTMAP'

    AND intern = X'D6'


I/O Operations - SAP Documentation

Procedure documentation I/O Operations

The Performance user menu of the DBA Cockpit contains, among other things, a display of I/O Operations.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] I/O Operations [image] .

Result

The following user menus are available:

  • I/O Operations Overview

  • Backup I/O

More Information

Activities Overview

Bottlenecks

Task Manager


backup_history_list - SAP Documentation

Background documentation backup_history_list

With this command you can display the content of the backup history. You can restrict or extend the display by specifying options.

To save time, we recommend that you execute the DBM command for getting the backup history (see: backup_history_open). If you do not execute this command first, it is executed implicitly with the DBM command for displaying the backup history described here.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

backup_history_list [<option_list>]

<option_list> :: = <option> | <option>,<option>, ...

<option> :: = -c <columns> | -k <key> | -l <label> | -a <action> | -r <restore_flag> | -u <yyyymmddHHMMSS> | -m | -e | -Inverted

Options

Option

Description

-c <columns>

Specify which columns are to be displayed. If you specify multiple columns, separate them using commas. The keywords for the individual columns are:

KEY: key value for the backup

LABEL: label for the backup

ACTION: backup action

STAMP1: first time stamp for the backup

STAMP2: second time stamp for the backup

START: start of backup

STOP: end of backup

FIRSTLOG: first log IO sequence number for the backup

LASTLOG: last log IO sequence number for the backup

LOG: states whether log backups have to be imported after data backup has been imported

MEDIA: name of the backup template used

PAGES: size of the backup in pages

VOLUMES: number of parts that comprise the backup

RC: return value from database for the backup

ERROR: backup error message

-k <key>

Only the line of the backup history that contains the key value specified under <key> is displayed.

This option must not be used with the -r option.

-l <label>

Only the lines of the backup history containing the backup label specified are displayed.

This option must not be used with the -r option.

-a <action>

Only the lines of the backup history that match the backup type specified are displayed.

This option must not be used with the -r option.

-r <restore_flag>

Only backups required to restore the database are displayed. Possible values for <restore_flag>:

* | LAST | <key>

*: All data backups required to restore the database are displayed. If the log volume is still intact, then only the data backups that match the existing log entries in the log volume are displayed.

LAST: All backups that are required to recover the database are displayed including the last complete database backup.

<key>: Key value of the complete data backup

All the backups required to restore the database are displayed. The key value of the complete data backup is stored in the backup history in the first column of the entry for this backup.

-u <yyyymmddHHMMSS>

Only the lines in the backup history containing data saved in the database before the specified time are displayed.

Time format: Year Month Day Hours Minutes Seconds

-m

For each line that relates to a backup, information on the backup template used is output.

-e

For each line that relates to a backup, information is displayed about the associated external backup ID.

-Inverted

The backup history is displayed in reverse order; that is, starting with the most recent backup.

Result

OK

END | CONTINUE

<history_line>

[<media_line>

[<external_backup_id-line>]

<history_line>

[<media_line>]

[<external_backup_id-line>]

....

Values for the Reply Fields
Value | Description
END | The contents of the backup history have been transferred in full. The file is closed automatically.
CONTINUE | The backup history contains further entries that were not transferred due to the limited size of the reply package. You can display this data by entering the DBM command again, or close the backup history (see: backup_history_close).
<history_line> | Information about the last backups The columns are separated by a vertical slash (|). A separate line is displayed for each backup.
<media_line> | Information about the backup template used for the backup The line has an M: prefix and is followed by the columns, each separated by a vertical slash (|).
<external_backup_id_line> | If the backup was created using a backup tool, information about the external backup ID is shown here. The line has an E: prefix and is followed by the columns, each separated by a vertical slash (|).

In the event of errors, see Reply Format.

More Information

Database Administration, Log Files


backup_ext_ids_list - SAP Documentation

Background documentation backup_ext_ids_list

Use this command to display the information queried by a backup tool. This includes, for each backup, the external backup ID, availability status, backup type, and the time the backup was created.

Prerequisites

  • You have the server permission Backup or DBInfoRead.

  • You have retrieved the external backup ID from the backup tool (see: backup_ext_ids_get).

Structure

backup_ext_ids_list

Result

OK

END | CONTINUE

[<external_backup_id_line>]

[<external_backup_id_line>]

....

Values for the Reply Fields
Value | Description
END | All the information queried by the backup tool was transferred in full.
CONTINUE | Information on further backups is available. This was not transferred because of the limited size of the reply package. You can scroll through this (see backup_ext_ids_listnext).
<external_backup_id_line> | Each line contains information on one of the backups registered in the backup tool. The individual columns are separated by a vertical slash (|).

In the event of errors, see Reply Format.

More Information

Glossary, Backup IDs


-25239: Specified value '<value>' is not a valid integer - SAP Documentation

Background documentation -25239: Specified value '<value>' is not a valid integer

Explanation

The Loader command to import or update data contains an error.The value specified in a command is not recognized as an integer number (the range of values for integer numbers is 0 <= 2147483647).

User Response

Correct the command and then re-execute it.


Interfaces - SAP Documentation

Background documentation Interfaces

Interface Documentation
Title of the Documentation | Content
Java Manual | Description of the SAP MaxDB JDBC driver and programming interfaces for Database Manager and Loader Can be used for developing database applications with Java
ODBC Manual | Basics and special features of the SAP MaxDB ODBC driver
PHP Manual | Description of the SAP MaxDB PHP extension for developing database applications with PHP
Perl Manual | Description of the programming interfaces for SQL. Can be used for developing database applications with Perl
Python Manual | Description of the programming interfaces for SQL. Can be used for developing database applications with Python
ADO.NET Interface | Description of the SAP MaxDB ADO.NET interface Can be used for developing database applications with ADO.NET
WebDAV Servlet | Description of how to access a document store in a SAP MaxDB database using the SAP MaxDB WebDAV servlet
SQLDBC Manual | SQL database connectivity for developing applications and interfaces for SAP MaxDB


A - SAP Documentation

Background documentation A


ASCII - SAP Documentation

Background documentation ASCII

Up to and including version 7.6, you could choose ASCII as character set for your SAP MaxDB database catalog (8 bit ASCII character set ISO 8859/1.2, which contains 256 characters).

Caution Caution

Starting with version 7.7, the database catalog of all SAP MaxDB databases is stored in Unicode. Before you can upgrade a database with an ASCII database catalog to version 7.7, you first need to migrate the database catalog to Unicode.

End of the caution.

More Information

Installation

SQL Reference Manual, Code Attribute


Application Data - SAP Documentation

Background documentation Application Data

The data records of a database, including their index entries, are called application data.

Application data is stored in the data area of the database, which consists of one or several data volumes. The database system may distribute application data from one table across several data volumes. You cannot influence or find out which application data is stored in which data volumes.

More Information

  • Concepts of the Database Systems, How Databases Store Data and Log Entries

  • Database Studio, Changing Data in the Database

  • SQLCLI, Executing SQL Statements

  • SQL Reference Manual, Data Manipulation


Automatic Log Backup - SAP Documentation

Background documentation Automatic Log Backup

If automatic log backup is on, then the database system automatically backs up the redo log entries of the database from the log area to files.

More Information

  • Database Administration, Backing Up Log Entries

  • Database Studio, Activating or Deactivating Automatic Log Backup

  • Database Manager CLI, autolog_on

  • Database Administration in CCMS, Activating Automatic Log Backup


Architecture - SAP Documentation

Background documentation Architecture

SAP MaxDB databases, tools, and interfaces can be installed on different computers in a network. If application and database are located on different servers, the global listener and an SAP MaxDB X server (communication server) need to be running on the database computer.

More Information

Concepts of the Database System, Technical System Landscape


Authentication - SAP Documentation

Background documentation Authentication

The database system uses passwords to authenticate users.

More Information

Database Administration, Managing Users

Database Studio, Logging on to the Database

Database Administration in CCMS, User Data

SQL Reference Manual, Authorization


Automatic Start - SAP Documentation

Background documentation Automatic Start

You can configure the operating system and the database so that the database is automatically started when the operating system is started.

More Information

Database Administration, Activating Automatic Database Start


After Image - SAP Documentation

Background documentation After Image

See Redo Log Entry


Working Memory - SAP Documentation

Background documentation Working Memory

To prevent your hard disks being unnecessarily accessed, database read and write operations are buffered in working memory. You can configure the working memory areas used by the database using database parameters.

More Information

  • Concepts of the Database System, Working Memory Areas

  • Database Studio, Displaying Information About Caches (Working Memory Areas), Changing Database Parameters

  • Database Manager CLI, show

  • Database Administration in CCMS, Caches


Run Directory - SAP Documentation

Background documentation Run Directory

The run directory of a database is the directory where the database system saves the configuration and log files of the database. If you enter a relative path when working with a database, the database system will always interpret this path as being relative to the run directory.

The default value for the run directory path is <global_data_path>\wrk\<database_name>\ or <private_data_path>\wrk\<database_name>\ (if you have configured a private data path during installation).

Note Note

To display the data paths for the database <database_name>, enter the following command on the command line:

dbmcli -d <database_name> -u <dbm_operator_name>,<dbm_operator_password> dbm_getpath DataPath

You require the name and password of a DBM operator.

End of the note.

The database system stores the run directory path in the RunDirectoryPath general database parameter.

Example

Run directory of the DEMODB database

  • Microsoft Windows:

    C:\ProgramData\sdb\globaldata\wrk\DEMODB\

  • Unix and Linux:

    /var/opt/sdb/globaldata/wrk/DEMODB/

More Information

  • Database Manager CLI, dbm_getpath

  • Database Studio, Displaying the Database Properties

    Database Administration in CCMS, Properties

  • Glossary, Directory, Log File, Configuration File, Documentation Variable


AUTOCOMMIT Mode - SAP Documentation

Background documentation AUTOCOMMIT Mode

AUTOCOMMIT Mode
ON | The database system performs all the necessary COMMIT actions automatically.
OFF | You have to enter COMMIT commands explicitly.

More Information

  • Database Studio, Configuring Database Studio

  • SQLCLI, Overview of All SQLCLI Commands

  • Loader, AUTOCOMMIT Command


Execution Plan - SAP Documentation

Background documentation Execution Plan

See Search Strategy


Automation - SAP Documentation

Background documentation Automation

You can automate administration tasks.

More Information

Database Administration, Automating Administration Tasks

Database Administration in CCMS, Automating Database Administration Actions, Scheduling an Action


Appendix - SAP Documentation

Background documentation Appendix

In the documentation, the syntax of commands is described using variables indicated by the angle brackets around them. The following table lists the most commonly used variables and examples.

Documentation Variables and Example Values

Variable

Example Values

Description

<arch>

ia64

Architecture (processor)

<build>

24

Build number of the database software (part of the version number)

<computer_name>

GENUA

PARMA

SIENA

COMO

Computer name

<database_computer>

GENUA

PARMA

SIENA

COMO

Name of the computer on which the database is installed

<data_path>

You can display the path using one of the following two methods:

  • dbm_getpath DBM command:

    dbmcli dbm_getpath DataPath

    For more information, see Database Manager CLI, dbm_getpath.

  • Database Studio, Displaying the Database Properties

Data path

If you have defined a private data path, <data_path>=<private_data_path>.

If you have not defined a private data path, <data_path>=<global_data_path>.

<database_name>

DEMODB

TESTDB

SAMPLEDB

Database name

<database_user>

MONA

DAVID

BORIS

NINA

Database user

<database_user_password>

RED

BLUE

PINK

BLACK

Password of the database user

<dbm_operator>

DBADMIN

DBM

OLEG

ELENA

JULIE

Name of the DBM operator

<dbm_operator_password>

SECRET

DBM

MONDAY

SUNDAY

TUESDAY

Keyword of the DBM operator

<file_name>

sample.txt

File name

<global_data_path>

You can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalDataPath

Global data path

For more information, see Directory.

<global_programs_path>

You can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalProgPath

Global programs path

For more information, see Directory.

<installation_path>

You can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

Installation path

For more information, see Directory.

<os>

Microsoft Windows

Operating system

<os_user>

ANNA

Name of the operating system user

<os_user_password>

MAY

Password of the operating system user

<package_name>

a) APO LC APPS

b) 20050512183812.prt

a) Name of the software package during installation

b) Name of the Loader command file (see Loader, Command File)

<password>

SECRET

Password

<path>

C:\test

Path

<private_data_path>

If you have configured a private data path during installation, you can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath DataPath

Note that if you have not configured a private data path, the global data path will be used as data path.

Private data path

For more information, see Directory.

<sdb_user>

sdb

On Unix and Linux:

Special operating system user for SAP MaxDB

More information: Database Administration, <sdb_user> (Special Operating System User)

<sdba_group>

sdba

On Unix and Linux:

Special operating system user group for SAP MaxDB

More information: Database Administration, <sdba_group> (Special Operating System Group)

<sysdba_user>

DBADMIN

Name of the database system administrator

<sysdba_user_password>

SECRET

Password of the database system administrator

<tool>

Loader

Database tool name

<user_home>

  • Microsoft Windows:

    C:\Documents and Settings\anna

  • Unix and Linux: /home/anna

Home directory of the operating system user

<user_key>

SAMPLEKEY

XUSER user key

<user_name>

-

See <database_user>

<version>

7.8.00.07

Version number of the database software

<virtual_server_name>

VIRTUAL_SERVER

HOTEL_VIRTUAL

Name of the virtual computer in a hot standby system

More Information:Database Administration, Hot Standby

More Information

Glossary, Directory

Database Manager CLI, dbm_getpath


Checking User Input in SQL Statements - SAP Documentation

Background documentation Checking User Input in SQL Statements

To prevent users from entering invalid values in SQL statements and thus causing unwanted changes to the data records or to the behavior of the database application (SQL injection), we recommend the use of prepared statements.

The following table shows which prepared statements can be used with which SAP MaxDB interfaces.

Interfaces for SAP MaxDB: Prepared Statement Support
Interface | Implementation
JDBC | PreparedStatement class
ODBC | SQLPrepare method
SQLDBC | SQLDBC_PrepareStatement class
PHP | maxdb_prepare
Perl | prepare
Python | Method prepare (class SapDB_Session), Class SapDB_Prepared (module sdb.sql)

More information:

  • Concepts of the Database System, Interfaces

  • Database Studio, Testing Prepared Statements

Example

The APPLICATION_USER table contains the users and passwords for a database application that accesses the DEMODB database via the SAP MaxDB JDBC interface.

Insecure Statement

The following user logon implementation is insecure. By entering an invalid value, an unauthorized person could gain access to the database.

Statement s = connection.createStatement();

ResultSet rs = s.executeQuery("SELECT * FROM APPLICATION_USERS WHERE username = '" + username + "' and password = '" + password + "'");

if(rs.next()) {

    // ... continue with successful logon

    } else {

// ... unsuccessful logon

}

If a person knows a valid user name, he or she can log on to the database without entering a valid password. The value abcdefg′ or 1=1, for example, could be entered for password.

The password would then look like this: password='abcdefg' or 1=1'

Because 1=1 is always true, the database system always evaluates the whole expression for the password as true, regardless of whether abcdefg is a valid password or not.

Improved Statement

The following user logon implementation makes use of prepared statements and protects against SQL injection because special characters like ', for example, can no longer be entered as a password.

PreparedStatement ps = connection.prepare("SELECT * FROM APPLICATION_USERS WHERE username=? and password=?");

ps.setString(1, username);

ps.setString(2, password);

ResultSet rs = ps.executeQuery();

if(rs.next()) {

    // ... continue with successful logon

} else {

// ... unsuccessful logon

}


User Administration and Authentication - SAP Documentation

Background documentation User Administration and Authentication

Before you can work with the database system, you must log on to the database with a database tool or via an interface. You log on with your user name. You enter your password and the database system authenticates your identity using this password.

Hazards

  • Unauthorized access to the database using another person's user data

    A person who is not authorized to access the database learns the user name and password of an authorized person and logs on to the database using these credentials. Particularly at risk are standard users with standard passwords that are generally known.

Activities

  • Changing the Passwords of Standard Users

  • Checking Log Files for Failed Logon Attempts

More Information

Database Administration, Managing Users


Authorizations - SAP Documentation

Background documentation Authorizations

After the system has authenticated a user's logon data, a user can, within the scope of his or her authorizations, access data in the database and use database tools.

User types:

  • Database system administrator (SYSDBA user)

    The database system administrator has comprehensive authorizations for access to the database and database tools.

  • Database user

    Database users access data in the database using SQL statements. The database user's user class determines what authorizations he or she has.

  • DBM operator

    DBM operators manage databases. The authorizations of a DBM operator are determined by his or her server authorizations.

Hazards

  • Data is read by an unauthorized user

    A user reads confidential data that should only be visible to a restricted group of users.

  • Data is changed by an unauthorized user

    A user changes data that should only be changed by a restricted group of users.

Activities

Defining Clear Authorizations for Users

More Information

Database Administration, Managing Users


Removing Demo Data - SAP Documentation

Background documentation Removing Demo Data

SAP MaxDB is delivered with a demo database. This database was developed for practice and testing purposes and contains several predefined demo users and demo data.

Recommendation Recommendation

Only use the demo database for practice and testing purposes.

End of the recommendation.

If you build your database with the demo database as basis, remove all demo users and their database objects.

Procedure

Use Database Studio:

  • Deleting Schemas

  • Deleting Database Users

More Information

Concepts of the Database System, Demo Database


Network and Communication Security - SAP Documentation

Background documentation Network and Communication Security

The database system consists of several components that can be located on different computers and in different networks. Data is transferred between these components as well as between database system and database application (for example an SAP system).

Hazards

  • Data is intercepted

    Unauthorized persons intercept data while it is being transferred between computers.

  • Unauthorized access to the database computer via the network

    Unauthorized persons exploit security gaps in other programs to gain access to the database computer via a network connection.

Activities

  • Securing Communication Channels

  • Accessing Databases Behind a Firewall

  • Using Web Tools Behind a Firewall

More Information

Technical System Landscape


Data Storage Security - SAP Documentation

Background documentation Data Storage Security

The data of a database is stored in the file system.

Caution Caution

During installation, the installation program assigns the correct permissions to all your database directories and database files. Do not change the permissions of any database directories or files later, because this might render your database software installation unusable.

End of the caution.

There are several operating system users that have extensive authorizations for accessing database resources using operating system commands.

Special Operation System Groups for SAP MaxDB on Microsoft Windows

Name

Type

Authorizations

SDB Operators

Group

Access to the following resources:

  • Database software files and directories (<global_data_path> and <private_data_path> directories and their subdirectories)

  • Database processes

  • SAP MaxDB global listener and X server processes (communication servers)

  • Volumes

  • Backups

Permissions for the following administration tasks (among others):

  • Creating new databases

  • Using the XCONS database tool

  • Changing database parameters

  • Accessing the volumes

<SID>ADM

User

  • SAP system administrator and database administrator in SAP systems

  • Group member of SDB Operators, Administrators

SQD<SID>

User

Obsolete

Not for SAP liveCache databases

Owner of all database resources
Special Operating System Users and Groups for SAP MaxDB (Unix and Linux)

Name

System Default Value

Type

Authorizations

<sdb_user>

sdb

User

Owner of all database resources

<sdba_group>

sdba

Group

  • Creating databases

  • Analysis and error handling

Support group

sdb<database_name>

Group

Optional; support tasks

root

root

User

  • Installing the database software

  • Granting access rights to operating system users (by their group affiliation)

A SetUID root program is only required for a user change to <sdb_user>.

<os_user>

-

User

  • Normal operating system user

  • Accessing the DBM server (requires a valid DBM operator name and a password to log on to the database)

  • Accessing other database tools (for example Loader, SQLCLI), interfaces (ODBC, JDBC, SQLDBC) and all database tools that use these interfaces (for example Database Analyzer); a database user name and password are required

  • Starting the global listener and X servers (SAP MaxDB communication server)

<sid>adm

-

User

  • SAP system administrator and database administrator in SAP systems

  • Group member of <sdba_group>

sqd<sid>

-

User

Obsolete

Not for SAP liveCache databases

Owner of all database resources
Hazards

  • Unauthorized access to protected database resources using external user data

    A normal operating system user learns the password of a privileged operating system user and accesses protected database resources using operating system commands.

  • Access to unprotected database resources

    A person uses operating system commands to access database resources not protected by restrictions at the operating system level.

  • An unauthorized person gains access to backups of a database.

Activities

  • Changing Passwords of SAP Standard Operating System Users

  • Restricting Access to Database Resources (Unix and Linux up to Database Version 7.4.03)

  • Restricting Access to Database Resources (Microsoft Windows)

  • Encrypting Backups

More Information

Database Administration, Special Operating System Users and Groups


Checking Log Files for Failed Logon Attempts - SAP Documentation

Background documentation Checking Log Files for Failed Logon Attempts

The database system logs errors and important messages in several log files. By monitoring the log files, you can identify unusual activity early on.

Procedure

Regularly check the following log files for failed logon attempts:

  • Database Manager log file: dbm.prt

  • Loader Server log file: loader.log

  • SAP MaxDB global listener and X server log files

More information: Database Administration, Log Files

Example

If a user enters an incorrect user name or password when logging on to the DEMODB database using Database Studio, the system writes the following message to the Database Manager log file dbm.prt:

ERR_USRFAIL - user authorization failed

If a user enters an incorrect password when logging on to a DEMODB database on the PARMA computer (Microsoft Windows) using a database tool on the ROMA computer, the system writes information about this to the X Server log file xserver_PARMA.prt:

2007-08-28 14:14:53 0xFCC 19739 XSERVER 'roma' connected to 'DEMODB', T78

2007-08-28 14:14:54 0xFCC 19740 XSERVER 'roma' disconnect from 'DEMODB', T78


Other Security-Relevant Information - SAP Documentation

Background documentation Other Security-Relevant Information

Hazards

  • SQL Injection

    Users insert invalid values into SQL statements and thus cause errors in the database, cause a system failure or attempt to gain access to other systems.

Activities

  • Checking User Input in SQL Statements


Trace and Log Files - SAP Documentation

Background documentation Trace and Log Files

Whenever the database system and database tools are in operation, log files are written. To better locate errors, you can also make use of various traces, which log additional actions. Traces can contain extracts from inserted data.

You can read traces and log files using either a text editor, Database Studio, or Database Manager CLI.

Hazards

  • An unauthorized user reads sensitive data in a log or trace file

    An unprivileged operating system user reads a trace or log file and thus gains information about the operation of the database and possibly data from the database.

Activities

  • Use traces only to search for errors. Delete the trace files when you have finished evaluating them

  • Restricting Access to Log Files

More Information

Checking Log Files for Failed Logon Attempts

Database Administration

  • Log Files

  • Traces


Dispensable Functions with Impact on Security - SAP Documentation

Background documentation Dispensable Functions with Impact on Security

You may not need all of the functions of the SAP MaxDB database system.

Hazards

The more functions you have installed, the more potential hazards there are.

Activities

  • Install only those software components that you really need.

  • Switching off the Global Listener and SAP MaxDB X Servers for Local Communication

  • Starting SAP MaxDB X Server Without NI Support (Unix and Linux)

  • Removing Demo Data


Restricting Access to Log Files - SAP Documentation

Background documentation Restricting Access to Log Files

Users can access log files using operating system commands and functions and also using Database Studio or Database Manager CLI.

Procedure

Restricting Access for Operating System Commands and Functions

On Unix and Linux, unprivileged operating system users cannot access log files; only members of the special operating system user group <sdba_group> can do so.

Restricting Access using Database Manager CLI

Withdraw the server authorization for reading database files from all DBM operators that should not have access to log files.

In Database Manager CLI, withdraw the DBFileRead server authorization.

See Database Manager CLI, user_put

More Information

Defining Clear Authorizations for Users

Database Administration, Special Operating System Users and Groups (Unix and Linux)


Restricting Access to Database Resources (Microsoft Windows) - SAP Documentation

Background documentation Restricting Access to Database Resources (Microsoft Windows)

On Microsoft Windows, only operating system users that belong to the groups Administrators, System, Creator/Owner or SDB Operators are able to access the volumes and backups of the database using operating system commands. All other database resources are readable to all operating system users.

Procedure

  1. To protect other database resources, you can restrict access to the directories <global_data_path>\config and <private_data_path>\config.

  2. Log on to the operating system as an operating system user of the group Administrators or the Creator/Owner group.

  3. Grant the following access privileges for the directories <global_data_path>\config and <private_data_path>\config and all the files they contain:

    • Access privilege Full Control to the groups Administrators, System, Creator/Owner and SDB Operators

    • No access for all other groups and users

    For information about granting access privileges, see your operating system documentation.

More Information

Appendix

Database Administration,

  • Special Operating System User Group on Microsoft Windows

  • Configuration Files


<sdb_user> (Special Operating System User) - SAP Documentation

Background documentation <sdb_user> (Special Operating System User)

On Unix and Linux, the database system uses the special operating system user <sdb_user>. The system default for the name of <sdb_user> is sdb. <sdb_user> was introduced so that there is a unique owner of the database resources, and so that other operating system users cannot have direct, unprotected operating system access to database resources.

<sdb_user> is the owner of the following database resources:

  • Files and directories of the database software

    More information: Glossary, Directory

  • Database processes, such as the vserver processes

    More information: Concepts of the Database System, Processes

  • Volumes

  • Backups

Caution Caution

<sdb_user> is not intended for an administrator to log on to the operating system as this operating system user. For administration tasks, use any other operating system user that is a member of the <sdba_group> operating system group.

For security reasons, <sdb_user> must not be an interactive user. You can only install the database software when the user account for <sdb_user> is locked. If necessary, remove the authorization for <sdb_user> to log on to the operating system interactively. For more information, see the documentation for your operating system.

End of the caution.

<sdb_user> must belong to the following operating system groups:

  • <sdba_group> (primary group)

  • Support groups of all databases (if they exist)


General Database Parameters - SAP Documentation

Background documentation General Database Parameters

The following overview describes database parameters belonging to the GENERAL group.

For information about other database parameters, see

  • Special Database Parameters

  • Support Database Parameters

  • liveCache Database Parameters

To change the values of database parameters, use one of the following database tools: Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio, Changing Database Parameters

  • Database Administration in CCMS, Parameters

Most changes to database parameters take effect only after the database has been restarted.

However, you can change certain database parameters while the database is running, that is in the ONLINE or ADMIN operational state (see the description of individual database parameters for more information). For these changes you can define when they are to become effective:

  • Until the next restart

  • After the next restart

  • Immediately and permanently

Note Note

Starting with version 7.7.03 of the database software, the names of many database parameters have changed.

Some database parameters have also been designated obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

More information: Obsolete Database Parameters

End of the note.
General Database Parameters

Name

(from version 7.7.03)

Old Name

(up to and including version 7.7.02)

Description

Change Restrictions

More Information

AutoLogBackupSize

LOG_SEGMENT_SIZE

Log segment size (in pages)

When automatic log backup is activated and no time interval has been configured, then the database system starts an automatic log backup as soon as a log segment is full.

0: system uses 1/3 of the log area as the log segment size

≤50% of the log area: system uses the value defined in AutoLogBackupSize

> 50% of the log area: system uses 50% of the log area as the log segment size

Changes only apply after a restart of the database.

Database Administration, Backing Up Log Entries

BridgeType

-

Specifies whether the database is used in a bridge scenario (where the database acts as a bridge to other databases)

Changes only apply after a restart of the database.

CacheMemorySize

CACHE_SIZE

Size of the working memory (RAM) which is used by the database system for I/O operations (in pages).

The main consumers of the working memory area configured with CacheMemorySize are the data cache, the converter, the shared catalog cache and the file directory; but other database components also use this memory area.

The following restrictions apply: 800 ≤ CacheMemorySize < total RAM size

This parameter has a great impact on the performance of your system. The optimum value for this parameter depends on your system environment. Note that other database functions and programs also need a certain amount of working memory, so do not assign your whole working memory to CacheMemorySize.

Changes only apply after a restart of the database.

Database Administration, Analyzing Database Performance

Concepts of the Database System, Working Memory Areas

InstanceType

INSTANCE_TYPE

Database type:

  • OLTP

    SAP MaxDB database

  • LVC

    SAP liveCache Technology

You define the database type when you create the database.

Cannot be changed

Concepts of the Database Systems,

  • What is an SAP MaxDB Database?

  • SAP liveCache Technology

KernelVersion

KERNELVERSION

Version of the database software

You cannot change this value.

When you install a new version of the database software, the database system updates the value of this parameter.

MaxBackupMedia

MAXBACKUPDEVS

Maximum number of files or tape devices for parallel backup

Changes only apply after a restart of the database.

Database Administration, Backup Templates and Data Carriers

MaxCPUs

MAXCPU

Maximum number of processors to which the database system can distribute user tasks.

When choosing this value, bear in mind that your computer's operating system resources have to be available for other programs as well.

To further restrict the number of available CPUs in a running system, use the special database parameter UseableCPUs.

Changes only apply after a restart of the database.

SAP Note 936058

MaxDataVolumes

MAXDATAVOLUMES

Maximum number of data volumes

Changes only apply after a restart of the database.

Concepts of the Database System, Volumes (Permanent Storage)

MaxLogVolumes

MAXLOGVOLUMES

Maximum number of log volumes

Changes only apply after a restart of the database.

MaxSQLLocks

MAXLOCKS

Maximum number of locks for database objects

Changes only apply after a restart of the database.

Concepts of the Database System, Locks

MaxUserTasks

MAXUSERTASKS

Maximum number of simultaneously active user tasks and therefore the maximum number of database sessions

If this number has been reached, then no additional user can log on to the database.

Note that if you choose a large value for MaxUserTasks, the database system requires much address space, particularly for local communication via shared memory.

For SAP systems (OLTP), we recommend the following minimum value: 2 x <number_of_SAP_processes> + 4

Changes only apply after a restart of the database.

Concepts of the Database System, Tasks

SAP Note 757914

MCODIndicator

MCOD

MCOD = Multiple Components One Database

In SAP systems, this parameter indicates whether several applications are using this database.

Changes only apply after a restart of the database.

OmsMaxHeapSize

OMS_HEAP_LIMIT

For SAP liveCache databases

Specifies the maximum size of the OMS heap (in KB)

Changes only apply after a restart of the database

-

RunDirectoryPath

RUNDIRECTORY

Run directory of the database

If you specify a relative path, the system interprets this path relative to the data path:

<global_data_path>\wrk\<database_name>\ or<private_data_path>\wrk\<database_name>\ (if you have configured a private data path during installation)

Changes only apply after a restart of the database.

Glossary, Run Directory

UseMirroredLog

LOG_MIRRORED

Specifies whether the database system mirrors the log area (software-based mirroring)

This parameter is relevant only when you create a mirror volume using Database Manager CLI. Database Studio automatically adjusts this parameter when you create a mirror volume.

Note that it we recommend to use hardware-based mirroring for the log area. More information: Planning Databases

Changes only apply after a restart of the database.

Glossary, Log Mode

More Information

Glossary


Creating Databases - SAP Documentation

Procedure documentation Creating Databases

Prerequisites

You can create databases using Database Studio or Database Manager CLI. For stand alone databases, that is for SAP MaxDB database systems which are not part of an SAP system, you can also use Installation Manager. If you want to use Database Studio or Database Manager CLI to create a database, install the database software first.

For more information about installing the database software, see: Glossary, Installation.

Procedure

  1. Plan the database.

    More information: Planning Databases

  2. Create the database.

    More information:

    Database Studio, Creating Databases

    When you create a database, you specify the following properties, among others:

    Important Database Properties

    Property

    Restrictions

    Modifiable

    More Information

    Database name

    Conventions for Database Names

    No

    -

    Database System Administrator: Name and password

    Conventions for User Names and Passwords

    Name: No

    Password: Yes

    Managing Users

    Data area (data volumes): Size (=database size), directory, automatic extension

    Log area (log volumes): Size and directory

    General database parameters MaxDataVolumes and MaxLogVolumes

    More information: Planning Databases

    Yes

    • Changing the Database Size

    • Database Parameters

    Working memory used by the database

    General database parameter CacheMemorySize

    Note that this parameter only roughly determines the size of the working memory used by the database. There are database functions which also need a certain amount of working memory, but whose memory consumption is not configured with this parameter.

    Yes

    • General Database Parameters

    • Working Memory Areas

    Number of CPUs

    General database parameter MaxCPUs

    Yes

    General Database Parameters

    Maximum number of parallel database sessions

    General database parameter MaxUserTasks

    Yes

    General Database Parameters

    Maximum number of locks

    General database parameter MaxSQLLocks

    Yes

    Configuring Locks for Database Objects

    Automatic update of the SQL optimizer statistics

    For SAP systems, see SAP note 927882.

    Yes

    Automating Administration Tasks

    Automatic log backup

    -

    Yes

    Automating Administration Tasks

    Automatic database start

    Only available on Microsoft Windows

    Yes

    Activating Automatic Database Start

    Log settings

    -

    Yes

    Configuring Database Transaction Logging

    You can change most of these properties later. More information: Changing Database Properties

    When you create a database, you can also load demo data and demo users. More information: Concepts of the Database System, Demo Database

  3. The system starts the database.

    You can now log on to the database.

    More information:

    • Database Studio, Logging On to a Database

    • Database Manager CLI, Calling Database Manager CLI

    • Database Administration in CCMS, MaxDB/liveCache System Overview

  4. Only in SAP systems: You can configure encryption.

    More information: Encryption

  5. Create the tables and other database objects in the database.

    Database Objects

    Tables

    View tables

    Synonyms

    Indexes

    Database users

    Schemas

    Triggers

    Database procedures

    Database functions

    More information:

    • Database Studio, Creating and Using Database Objects: Overview

    • SQL Tutorial, Data Definition

  6. Create the required database users and assign authorizations.

    More information: Database Users

  7. Insert the data into the database.

    More information:

    • Database Studio,

      • Changing Data in the Database

      • Importing Data and/or Information from the Database Catalog

    • SQL Tutorial, Data Manipulation

More Information

Concepts of the Database System, What is an SAP MaxDB Database?

Installation and Upgrade Documentation (SAP MaxDB in SAP Systems)
Title of the Documentation | Description
SAP NetWeaver <shipment> on <operating_system>: SAP MaxDB | Only for SAP customers Only in English You can find this guide on the SAP Service Marketplace at http://service.sap.com/instguides. For more information, see SAP Note 767598.
Upgrade to SAP MaxDB Database <version> <operating_system> | Only for SAP customers Only in English You can find this guide on the SAP Service Marketplace at http://service.sap.com/instguides. For more information, see SAP Note 767598.


Defining Clear Authorizations for Users - SAP Documentation

Background documentation Defining Clear Authorizations for Users

To ensure that users have only the authorizations they need for their work, we recommend the following measures:

  • Create an authorization concept that specifies clear authorizations for individual users:

    • Define which database users are to have access to which data and database objects in the database.

    • Define which DBM operators are to carry out which administration tasks.

  • Create a separate database user for each person who works with the database.

Creating Database Users

Use the CREATE USER SQL statement.

SQL Reference Manual, CREATE USER Statement

Changing the Authorizations of Database Users

Use Database Studio to change the authorizations of database users for database objects (using SQL statements):

Database Studio, Working with SQL Statements: Overview

SQL Reference Manual, Authorization

Creating DBM Operators

Use Database Manager CLI:

Database Manager CLI:, user_create


Restricting Access to Database Resources (Unix and Linux up to Database Version 7.4.03) - SAP Documentation

Background documentation Restricting Access to Database Resources (Unix and Linux up to Database Version 7.4.03)

Note Note

A new authorization concept came into effect with database version 7.5.

See Database Administration, Special Operating System Users and Groups (Unix and Linux).

The measures described in the following are relevant only for database versions < 7.5.

End of the note.

Up to and including database version 7.4.03, access rights in SAP systems on Unix and Linux were automatically configured during installation as follows.

Access Rights in SAP Systems up to and Including Database Version 7.4.03: Directories
Directory | Privilege | Owner | Group | Comments
/sapdb/<SID>/sapdata | 750 | sqd<sid> | sapsys | -
/sapdb/<SID>/saplog | 750 | sqd<sid> | sapsys | -
/sapdb/<SID>/sapsys | 750 | sqd<sid> | sapsys | -
/sapdb/<SID>/dbsys | 750 | sqd<sid> | sapsys | No longer applies as of 7.4
/sapdb/<SID>/db | 750 | sqd<sid> | sapsys | If a database version 7.5 or higher is installed on a computer together with an older version, change the access privileges for the directory /sapdb/<SID>/db of the older database version to 755. With this, you ensure that the database processes of the newer versions have unrestricted access to the directory.
Access Rights in SAP Systems up to and Including Database Version 7.4.03: Files
File | Privilege | Owner | Group | Comments
/sapdb/<SID>/sapdata/* | 660 | sqd<sid> | sapsys | -
/sapdb/<SID>/saplog/* | 660 | sqd<sid> | sapsys | -
/sapdb/<SID>/sapsys/* | 660 | sqd<sid> | sapsys | -
/sapdb/<SID>/dbsys/sys | 660 | sqd<sid> | sapsys | No longer applies as of version 7.4
Access Rights in SAP Systems up to and Including Database Version 7.4.03: Raw Devices
Raw Device | Privilege | Owner | Group | Comments
Raw devices for the database system | 660 | sqd<sid> | - | Link to the raw devices used as data volumes or log volumes

Procedure

To restrict access rights, proceed as follows:

  1. Save the original settings. To do so, enter the following commands:

    cd /usr/sap ls -lR > sap_perm.txt

    cd /sapmnt ls -lR > sap_sw.txt

    cd /sapdb/<SID> ls -lR > sapdb_perm.txt

  2. Grant the desired access privileges for files and directories using the chmod command:

    chmod <access_rights_octal> <file_or_directory>

    Example Example

    chmod 750 /sapdb/<SID>/sap*

    chmod 750 /sapdb/<SID>/sapdata/*

    chmod 750 /sapdb/<SID>/saplog/*

    ...

    End of the example.

    Caution Caution

    Do not use chmod recursively. It is easy to make unintended changes to authorizations when doing so.

    End of the caution.


Changing Passwords of SAP Standard Operating System Users - SAP Documentation

Background documentation Changing Passwords of SAP Standard Operating System Users

Many SAP systems make use of standard operating system users that, on the operating system level, have comprehensive access rights to database resources.

Special Operating System Users and Groups for SAP MaxDB (Unix and Linux)

Name

System Default Value

Type

Authorizations

<sdb_user>

sdb

User

Owner of all database resources

<sdba_group>

sdba

Group

  • Creating databases

  • Analysis and error handling

Support group

sdb<database_name>

Group

Optional; support tasks

root

root

User

  • Installing the database software

  • Granting access rights to operating system users (by their group affiliation)

A SetUID root program is only required for a user change to <sdb_user>.

<os_user>

-

User

  • Normal operating system user

  • Accessing the DBM server (requires a valid DBM operator name and a password to log on to the database)

  • Accessing other database tools (for example Loader, SQLCLI), interfaces (ODBC, JDBC, SQLDBC) and all database tools that use these interfaces (for example Database Analyzer); a database user name and password are required

  • Starting the global listener and X servers (SAP MaxDB communication server)

<sid>adm

-

User

  • SAP system administrator and database administrator in SAP systems

  • Group member of <sdba_group>

sqd<sid>

-

User

Obsolete

Not for SAP liveCache databases

Owner of all database resources

Procedure

To keep unauthorized persons from learning the passwords of standard operating system users, we recommend the following measures:

  • Do not adopt the default passwords.

  • Use secure passwords.

  • Change the passwords regularly.

Changing the Passwords of Operating System Users (Unix and Linux)

  1. Log on to the operating system as <sid>adm user.

  2. Open a shell.

  3. Enter the following command:

    passwd

  4. Enter the old and new passwords.

Repeat the procedure for the sqd<sid> user.

If you use the Network Information Service (NIS), you can read how to change the passwords of operating system users in the NIS Guide.

Changing the Passwords of Operating System Users (Microsoft Windows)

  1. Log on to the operating system as a user from the Administrators group.

  2. Change the password of the operating system user <SID>ADM.


Changing Passwords of Standard Users - SAP Documentation

Background documentation Changing Passwords of Standard Users

The following standard users are created during installation of the SAP MaxDB database system.

SAP MaxDB Standard Users
Default Name | Default Password(s) | Description
DBADMIN DBA (up to and including version 7.5) | SECRET DBA (up to and including version 7.5) | Database system administrator
DBM | SECRET DBM | First DBM operator with all DBM server authorizations

As a rule, the following standard users are created while installing SAP MaxDB in SAP systems.

SAP Standard Users for Databases
Name | Description
SUPERDBA | Database system administrator
CONTROL | DBM operator with all server authorizations
SAPR3 | In older SAP systems: Database administrator (database user of class DBA)
SAP<SAPSID> | In newer SAP systems, in particular in MCOD systems (Multiple Components One Database): Database administrator for the SAP system with the ID <SAPSID> (database user of class DBA)
SAP<SAPSID>DB | In Java EE systems: Database administrator for the SAP system with the ID <SAPSID> (database user of class DBA)

These users have comprehensive authorizations for working with the SAP MaxDB database system.

Procedure

To prevent unauthorized persons from learning the passwords of standard users, we recommend the following measures:

  • Do not adopt the default passwords.

  • Use secure passwords.

  • Change the passwords regularly.

  • To enable another user to work temporarily with the account of the database system administrator (SYSDBA user), you can temporarily assign a second password to the database system administrator. This way you do not have to reveal the password of the database system administrator.

Changing the Passwords for SAP MaxDB Standard Users

Use Database Studio, Database Manager CLI or, in SAP systems, CCMS.

More information:

  • Database Manager CLI, user_put

  • Database Administration in CCMS, User Data

Note Note

For security measures for standard operating system users, see Changing Passwords of SAP Standard Operating System Users.

End of the note.
Assigning a Temporary Second Password to SAP MaxDB Standard Users

Use Database Studio or Database Manager CLI.

More information:

  • Database Studio, Changing the Properties of Database Users

  • Database Manager CLI, user_put

More Information

Database Administration, Managing Users


Securing Communication Channels - SAP Documentation

Background documentation Securing Communication Channels

Procedure

In SAP systems, you can encrypt the data transfer. Note that users passwords are automatically encrypted when they log on to a database.

More Information

Installation Guide for your SAP system on the SAP MaxDB database, see Installation.


Switching Off the Global Listener and SAP MaxDB X Servers - SAP Documentation

Background documentation Switching Off the Global Listener and SAP MaxDB X Servers

For local communication, that is, when the database and the database application (or database tool or the interface) are on the same computer, SAP MaxDB uses shared memory for communication.

For local communication, you therefore do not need X servers and can switch them off. Exceptions are all components that use the JDBC interface, which requires an X server even for local communication:

  • Database Studio

  • Event dispatcher functions in Database Manager CLI

Procedure

Switching Off the Global Listener and all X Servers for Communicating with Local Databases
Prerequisites

You are not using Database Studio.

Procedure

On the command line, stop the global listener and all X servers running on the local computer:

<global_programs_path>\bin\sdbgloballistener stop -all

Note Note

You can display the global programs path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalProgPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.
Switching Off Local X Servers When Using Database Studio to Manage Remote Databases

If you only want to use Database Studio to manage remote databases, you can also switch off the global listener and all X servers on the local computer (for communicating with remote databases, the X servers on the respective database computers are used) and start Database Studio without X servers:

  1. On the command line, stop the global listener and all X servers running on the local computer.

    <global_programs_path>\bin\sdbgloballistener stop -all

  2. Go to the directory that contains the Database Studio executable dbstudio[.exe].

  3. Start Database Studio from the command line with the following option:

    dbstudio -RemoteOnly

More Information

  • Global Listener and X Servers, Stopping the Global Listener and/or Installation-Specific X Servers

  • Concepts of the Database System, Network Communication

  • Database Studio, Starting Database Studio


Starting the Global Listener Without NI Support (Unix and Linux) - SAP Documentation

Background documentation Starting the Global Listener Without NI Support (Unix and Linux)

On Unix and Linux, when the global listener is started, an SAP MaxDB NI server is automatically started as well (as a separate process to support the SAP NI network protocol).

If you do not need to access your database via SAPRouter, NI support is not required.

Procedure

Start the global listener without NI support:

<global_programs_path>\bin\sdbgloballistener -S <tcp_port> -Y start

<tcp_port> = TCP/IP port number of the global listener

Note Note

You can display the global programs path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalProgPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.

More Information

Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers


Accessing Databases Behind a Firewall - SAP Documentation

Background documentation Accessing Databases Behind a Firewall

To protect your database, it is usually located on a database computer behind a firewall, for example within your company's LAN (local area network). To connect to your database, clients from outside the firewall connect to the global listener and then an installation-specific X server (SAP MaxDB communication server) on the database computer behind the firewall, or directly to an installation-specific X server.

This graphic is explained in the accompanying text.

Example: Accessing SAP MaxDB Databases Behind a Firewall

Procedure

To enable access for a client program such as Database Studio, proceed as follows:

  1. Open the following ports in your firewall:

    • All ports of the global listener

    • TCP/IP port of the X server of the installation to which your database belongs

    Ports and Protocols of the SAP MaxDB X Servers

    Scope

    Default Port

    Function of the X Server

    Protocol

    Protocol Identifier

    All installations on the database computer

    7210

    Global listener

    TCP/IP

    remote://

    7269

    Global listener with SAP networtk protocol NI (for connections via SAPRouter, only available in SAP systems)

    NI

    (based on TCP/IP)

    sapni://

    7270

    Global listener with SAP networtk protocol NI and SAP encryption library (for connections via SAPRouter, only available in SAP systems)

    SSL/TLS

    NISSL

    (based on TCP/IP)

    remotes://

    sapnis://

    First installation <installation_1> on the database computer

    7200

    X server for <installation_1>

    TCP/IP

    remote://

    Second installation <installation_2> on the database computer

    7203

    X server for <installation_2>

    TCP/IP

    remote://

    Separate Database Studio installation

    7299

    X server for the separate Database Studio installation, only used by the system to access the local user management database .UMDB

    TCP/IP

    remote://

    For more information about opening ports, see your firewall documentation.

  2. Restrict access to these ports to those computers that need to access the database.

More Information

  • Global Listener and X Servers

  • Concepts of the Database System, Network Communication

  • Documentation about SAProuter is available in the SAP Library at http://help.sap.com.


Tools - SAP Documentation

Background documentation Tools

Tools Documentation
Title of the Documentation | Contents
Database Studio | Tool for managing SAP MaxDB databases Note Note From database version 7.7, Database Studio replaces the database tools Database Manager GUI and SQL Studio, and it contains a GUI for the Loader database tool. End of the note.
Database Administration in CCMS: SAP MaxDB | Using the SAP system to analyze a SAP MaxDB database, for scheduling actions and for monitoring the database functions and alerts
Database Manager CLI | Command line tool for database administration
Loader | Tool for exporting and importing data and table definitions
SQLCLI | Command line tool for displaying and changing data in a database using SQL statements
Database Analyzer | Performance analysis tool for databases
Global Listener and X Servers | Communication servers of the SAP MaxDB database system
XUSER | Command line tool for storing user log-in data, which provides simplified logon to databases
XCONS | Command line tool (database console) for viewing information about a SAP MaxDB database, such as operating system resources being used by the database system, distribution and status of the database sessions, etc.


Tutorials - SAP Documentation

Background documentation Tutorials

Tutorials
Title of the Documentation | Contents
SQL Tutorial | Examples for the Structured Query Language (SQL) used by the SAP MaxDB database system
Loader Tutorial | Examples for commands of the Loader tool for exporting and importing data


SAP MaxDB Security Guide - SAP Documentation

Component documentation SAP MaxDB Security Guide

The Security Guide provides an overview of security-relevant information that applies to SAP MaxDB.

Caution Caution

This guide is not intended to replace a manual for day-to-day operation. We recommend customers create such a manual for their own specific production operations.

This guide represents the latest state of development. The contents may be changed without prior notice and are not binding for SAP.

End of the caution.
Target Audience

  • Technology consultants

  • System administrators

This document is not part of the Installation Guides, Configuration Guides, Technical Operation Manuals, or Upgrade Guides. Such guides are only relevant for a certain phase of the software life cycle, whereby the Security Guides provide information that is relevant for all life cycle phases.

Why Is Security Necessary?

With the increasing use of distributed systems and the Internet for managing business data, demands on security are also on the rise. When using a distributed system, you need to be sure that your data and processes support your business needs without allowing unauthorized access to critical information. User errors, negligence, or attempted manipulation on your system should not result in loss of information or processing time. These security requirements naturally also apply to SAP MaxDB. We offer this Security Guide to assist you in securing SAP MaxDB.

Content

  • User Administration and Authentication

  • Authorizations

  • Network and Communication Security

  • Data Storage Security

  • Dispensable Functions with Impacts on Security

  • Other Security-Relevant Information

  • Trace and Log Files

  • Appendix

More Information

For more information about security measures for SAP MaxDB in SAP systems, see the SAP NetWeaver Security Guide.

A complete list of all available SAP Security Guides can be found in the SAP Service Marketplace at http://service.sap.com/securityguide.

Important SAP Notes

Current SAP notes that contain security-relevant information for SAP MaxDB can be found in the SAP Service Marketplace at [image] http://service.sap.com/security [image] Security [image] SAP Security Notes [image] MaxDB; liveCache (Component BC-DB-SDB; BC-DB-LVC) [image] .

Miscellaneous Information
Quick Links to Additional Information
Content | Quick Link to the SAP Service Marketplace
Security | http://service.sap.com/security
Security guides, network security | http://service.sap.com/securityguide
Related SAP Notes | http://service.sap.com/notes
SAP Solution Manager | http://service.sap.com/solutionmanager
Information on SAP MaxDB

Database Administration

Concepts of the Database System

Overview of the available documentation: Glossary, Documentation


Isolation Level - SAP Documentation

Background documentation Isolation Level

The isolation level determines how the database system implicitly sets and releases locks for database objects.

More Information

Concepts of the Database System, Isolation Level, Locks

SQL Reference Manual, CONNECT Statement

Database Administration in CCMS, SQL Locks


Installation - SAP Documentation

Background documentation Installation

Depending on whether you want to install the SAP MaxDB software in an SAP system or as a standalone database, you use different installation tools. See your installation documentation for the description how to proceed.

More Information

Installation and Upgrade Documentation (SAP MaxDB in SAP Systems)
Title of the Documentation | Description
SAP NetWeaver <shipment> on <operating_system>: SAP MaxDB | Only for SAP customers Only in English You can find this guide on the SAP Service Marketplace at http://service.sap.com/instguides. For more information, see SAP Note 767598.
Upgrade to SAP MaxDB Database <version> <operating_system> | Only for SAP customers Only in English You can find this guide on the SAP Service Marketplace at http://service.sap.com/instguides. For more information, see SAP Note 767598.

To install the SAP MaxDB software as a standalone database, see the Installation Manual at http://maxdb.sap.com/documentation/.


Index - SAP Documentation

Background documentation Index

You can create an index (also called secondary key) to make it quicker for the database system to find data records in a table. An index is a database object that can be created for an individual column or a series of columns in a database table. An index consists of one or more inversion lists.

An index name must be unique when combined with the table name. When defining an index, you determine whether the column values of different rows in the indexed columns have to be unique or not.

Indexes
Property | Description (Link to SQL Reference Manual)
Index name | Index Name (index_name)
In Index | Indicates whether a column belongs to the index
Sort | Sort sequence
Name | Column name
Data Type | Column data type You cannot use LOB columns in an index.
Unique | Indicates whether the values for this columns must be unique UNIQUE Definition (unique_definition)
Disabled | Indicates whether the index is deactivated
Usage Count | Indicates how often the system has used the index
Bad | Indicates whether the index is damaged

Since indexes are derived entirely from data already in the database, you can delete them without data being lost.

Note that, in certain circumstances, the database system may have to update the index corresponding to any data changes, which takes time.

Index States
State | Description
OK | The index is intact.
BAD | The index is damaged. The index’s B* tree is damaged and the database system can no longer use it. The database system ignores damaged indexes. These cannot cause errors, but do impair performance.
MISSING | The index is available in the database catalog, but is missing in the internal file directory.

You can recreate damaged indexes using Database Studio. If you set the UseAutomaticBadIndexRecreation special database parameter to YES, then the database system automatically recreates damaged indexes.

You can use the EXPLAIN statement to check whether an index is really used when the database system searches for data records.

More Information

  • Concepts of the Database System, B* Trees for Tables with Indexes

  • Database Studio,

    • Displaying Indexes

    • Creating Indexes

    • Changing Index Properties

    • Activating or Deactivating Indexes

    • Recreating Damaged Indexes

    • Deleting Indexes

  • SQL Tutorial, Indexes

  • SQL Reference Manual, CREATE INDEX Statement, EXPLAIN Statement

  • Database Manager CLI, sql_recreateindex

  • Database Administration in CCMS: Indexes

  • SAP Note 928037 (FAQ: MaxDB Indexes)


Join - SAP Documentation

Background documentation Join

A join is an SQL statement that links multiple tables with each other. A join table is created as a result.

More Information

  • SQL Tutorial, Joins: Information From Several Tables

  • SQL Reference Manual, JOIN Predicate

  • SQL Optimizer, Search Conditions for Joins


Interactive Log Backup - SAP Documentation

Background documentation Interactive Log Backup

See Log Backup


Owner - SAP Documentation

Background documentation Owner

The owner of a database object is initially the database user who created the database object. The owner has special privileges for the database object.

The owner of a database object can use the GRANT statement to grant other database users privileges for the database object.

More Information

SQL Reference Manual, Privileges: Overview, GRANT Statement, Schema name (schema_name)


Homogenous System Copy - SAP Documentation

Background documentation Homogenous System Copy

See System Copy


Unloading - SAP Documentation

Background documentation Unloading

See Export


Initialization - SAP Documentation

Background documentation Initialization

When you initialize a database, the database system deletes all data (application data and the database catalog) and all log entries from the volumes. The configuration of the database (database parameters, volume definitions, and so on) is retained, however.

More Information

Database Administration, Initializing Databases

Database Studio, Initializing Databases

Database Manager CLI, db_activate, db_activate RECOVER


Development - SAP Documentation

Background documentation Development

You can develop database applications for SAP MaxDB and connect it to SAP MaxDB databases using interfaces.

More Information

Database Administration, Developing Database Applications


Troubleshooting - SAP Documentation

Background documentation Troubleshooting

The database system provides error messages, log files and traces for troubleshooting.

More Information

Database Administration, Troubleshooting

Database Administration in CCMS, Troubleshooting


EXPLAIN Statement - SAP Documentation

Background documentation EXPLAIN Statement

You can use the EXPLAIN statement to find out which search strategy the SQL optimizer selected for an SQL statement.

More Information

  • SQL Optimizer, Analyzing Search Strategies Using the EXPLAIN Statement

  • SQL Reference Manual, EXPLAIN Statement (explain_statement)

  • Database Studio, Analyzing SQL Statements (EXPLAIN)

  • Database Administration in CCMS, Command Monitor


Event Dispatcher - SAP Documentation

Background documentation Event Dispatcher

The database system has an internal event dispatcher that is used for automatic functions in the database system, such as automatic extension of the data area and automatic updating of SQL optimizer statistics. The event dispatcher is switched on if one of these automatic functions is active. It requires its own event task.

Furthermore, users can use the event dispatcher function in Database Manager CLI, for example to define whether the system is to perform a certain action as soon as a particular event occurs in the database. In this way, you can define, for example, that on reaching a certain fill level of the database, the system sends a warning mail to the database system administrator and/or executes a complete data backup. You have to switch on this event dispatcher explicitly using a DBM command. It runs until you switch it off explicitly. If the database is transferred to the OFFLINE operating state, the system stops this event dispatcher. If the database is transferred subsequently to the ONLINE operating state, the system starts the event dispatcher again. This event dispatcher also requires its own event task.

Note Note

The system requires event tasks if you execute event commands in Database Manager CLI. The value of available event tasks is distributed between automatic database functions and events. The system default value for the available event tasks is generally large enough to use automatic database functions and a number of events. If you want to use a larger number of events in your database, enlarge the values of the FloatingServiceTasks and PreservedEventTasks database parameters accordingly.

More information: Support Database Parameters

End of the note.

More Information

  • Event

  • Database Studio, Using Database Events

  • Database Administration, Automating Administration Tasks

  • Database Manager CLI, Using Database Events


Java - SAP Documentation

Background documentation Java

You can use the SAP MaxDB JDBC driver and the SAP MaxDB Java classes to integrate SAP MaxDB databases in Java applications.

More Information

Java Manual

Concepts of the Database System, Interfaces


Installation Manager - SAP Documentation

Background documentation Installation Manager

SAP MaxDB Installation Manager is the installation tool for stand-alone SAP MaxDB database systems. It is used for installing, updating, and uninstalling the entire SAP MaxDB software or individual software components and for creating, upgrading, or uninstalling SAP MaxDB databases.

You find a description of Installation Manager in the Installation Manual, which is part of the SAP MaxDB documentation for a stand-alone installation.


FBM (Free Block Management) - SAP Documentation

Background documentation FBM (Free Block Management)

FBM (Free Block Management) is the part the working memory that is used by the database system to manage the physical data pages in the data volumes.

More Information

Concepts of the Database System, Working Memory Areas


Error Message - SAP Documentation

Background documentation Error Message

If the database is unable to execute a command it returns an error message.

More Information

Messages documentation (Explanation of error messages, sorted by message number)

Database Administration, Troubleshooting

Database Administration in CCMS, Error Messages, Messages


Inversion List - SAP Documentation

Background documentation Inversion List

An inversion list is part of an index. An inversion list consists of a secondary key and the related primary key(s).

Example

A table contains the names of all customers in a hotel. Customer number cno is the primary key for this table.

Example: Inversion List
cno | name | firstname
2003 | Miller | Frank
2011 | Griffith | Mary
2078 | Miller | Jane
2104 | Miller | Susan
2295 | Miller | Sally

Now you define an index for the name column. The name column thus becomes an indexed column (also called an inverted column).

The index contains the following inversion lists:

  • An inversion list with the secondary key Griffith and the primary key 2011 (the surname Griffith only appears once in the table)

  • Another inversion list with the secondary key Miller and the primary keys 2003, 2078, 2104, and 2295 (the surname Miller appears four times in the table)

More Information

  • Concepts of the Database System, B* Trees for Tables with Indexes

  • Database Studio,

    • Displaying Indexes

    • Creating Indexes

    • Changing Index Properties

    • Activating or Deactivating Indexes

    • Recreating Damaged Indexes

    • Deleting Indexes

  • SQL Tutorial, Indexes

  • SQL Reference Manual, CREATE INDEX Statement, EXPLAIN Statement

  • Database Manager CLI, sql_recreateindex

  • Database Administration in CCMS: Indexes


Import - SAP Documentation

Background documentation Import

In order to import (load) data and/or the database catalog, you can use either Database Studio or Loader.

Caution Caution

You cannot use export data to restore a database because it may not represent a consistent database state in some cases. Importing data is therefore no substitute for restoring the database using data backups.

End of the caution.

More Information

  • Database Studio, Importing Data and/or Information from the Database Catalog

  • Loader, Importing: Loader Commands

  • Database Administration, Exporting and Importing


JDBC - SAP Documentation

Background documentation JDBC

To access SAP MaxDB databases from Java applications, SAP MaxDB provides the SAP MaxDB JDBC driver.

More Information

Java Manual, SAP MaxDB JDBC Driver


Incremental Data Backup - SAP Documentation

Background documentation Incremental Data Backup

In an incremental data backup, you back up all data that has changed since the last complete data backup from the data area to a data carrier.

More Information

  • Concepts of the Database System, Backing Up Data

  • Database Studio, Backing up Data

  • Database Manager CLI, Backing Up and Restoring Database Instances

  • Database Administration in CCMS, Scheduling a Data Backup


J - SAP Documentation

Background documentation J


G - SAP Documentation

Background documentation G


I/O Buffer Cache - SAP Documentation

Background documentation I/O Buffer Cache

The I/O buffer cache is the working memory area used by the database system for I/O operations.

More Information

Concepts of the Database System, Working Memory Areas

Database Administration in CCMS, Caches


E - SAP Documentation

Background documentation E


Garbage Collector - SAP Documentation

Background documentation Garbage Collector

Garbage collectors are tasks that run in user kernel threads.

They irreversibly delete undo log files and related database objects. Garbage collectors in SAP liveCache systems are needed to provide consistent data views.

More Information

Concepts of the Database System, How Databases Log Data Changes


External Backup Tool - SAP Documentation

Background documentation External Backup Tool

See Backup Tool


H - SAP Documentation

Background documentation H


Indexed Column - SAP Documentation

Background documentation Indexed Column

An indexed column is a column that is part of an index. Indexed columns are also known as inverted columns.

More Information

  • Concepts of the Database System, B* Trees for Tables with Indexes

  • Database Studio,

    • Displaying Indexes

    • Creating Indexes

    • Changing Index Properties

    • Activating or Deactivating Indexes

    • Recreating Damaged Indexes

    • Deleting Indexes

  • SQL Tutorial, Indexes

  • SQL Reference Manual, CREATE INDEX Statement, EXPLAIN Statement, INDEXES

  • Database Manager CLI, sql_recreateindex

  • Database Administration in CCMS, Indexes


Hot Standby - SAP Documentation

Background documentation Hot Standby

Hot Standby is a high availability strategy for cluster systems. If the master database fails, a standby database running in parallel is automatically activated as master database.

More Information

Database Administration, Hot Standby

Database Administration in CCMS, Properties


F - SAP Documentation

Background documentation F


Export - SAP Documentation

Background documentation Export

In order to export (unload) data and/or the database catalog, you can use either Database Studio or Loader.

Caution Caution

You cannot use export data to restore a database because in some situations the exported data may not represent a consistent database state. Export data is, therefore, not a substitute for data backups.

End of the caution.

More Information

  • Database Studio, Exporting Data and/or Information from the Database Catalog

  • Loader, Exporting: Loader Commands

  • Database Administration, Export and Import


History File - SAP Documentation

Background documentation History File

History files are internal database files that contain references to the undo log files of completed transactions. The history files specify which undo log file belongs to which completed transaction.

At each savepoint, the database system backs up all updated history files to the data area.

For performance reasons, there are always several history files open at the same time. The database system calculates the number of history files based on the general database parameter MaxUserTasks.

More Information

Concepts of the Database System, How Databases Log Data Changes

Database Administration, General Database Parameters

SAP Note 1247666 (FAQ: MaxDB/liveCache History Pages)


Event - SAP Documentation

Background documentation Event

An event is an information generated by the database system that a certain defined situation has occurred. Every event is defined by properties such as name, priority and so on. The properties can be evaluated by the system.

You can use Database Manager CLI to specify values for the properties and determine which actions will be triggered by the database system when the situation occurs.

Example Example

You can configure that the system sends a warning mail to your address when the database fill level exceeds 90%.

End of the example.

Every event belongs to an event category. The values that determine when an event of a certain category is triggered are stored in the system. When this value is reached, the system triggers an event. For some categories, there are multiple different property definitions (default values) that trigger an event of that category.

Standard Events

Event Category

Event Name

Description

Changeable

ThrowAdminEvent

Admin

The system triggers an event of this category when the database has been transferred to the ADMIN operational state.

no

ThrowAutoLogBackupEvent

AutoLogBackup

The system triggers an event of this category when the function for automatic log backup is switched on or off, a task for automatic log backup is started or stopped or when log backup was successfully finished.

no

ThrowCheckTableProgressEvent

CheckTableProgress

The system triggers an event of this category during and on conclusion of a table structure check (CHECK TABLE).

no

ThrowCheckDatabaseProgressEvent

CheckDatabaseProgress

The system triggers an event of this category during and on conclusion of a database structure check (CHECK DATA or CHECK DATA WITH UPDATE).

no

ThrowCrashEvent

Crash

The system triggers an event of this category when the database kernel process is terminated and the database went OFFLINE for this reason.

no

ThrowDatabaseFullEvent

DatabaseFull

The systems at regular intervals triggers events of this category when the data area of the database is 100% full.

Note that the system only triggers this event in the ONLINE operational state and during a restart of the database.

no

ThrowDataCacheAboveLimitEvent

DataCacheAboveLimit

The system triggers an event of this category when the predefined threshold value for the size of the data cache is exceeded.

no

ThrowDataCacheBelowLimitEvent

DataCacheBelowLimit

The system triggers an event of this category when the size of the data cache falls below the predefined threshold value.

no

ThrowDBFillingAboveLimitEvent

DBFillingAboveLimit

The system triggers an event of this category when the fill level of the data area exceeds the predefined value.

Events of this category are active with the following default values:

HIGH (at fill level 90%, 95%, 96%, 97%, 98%, 99%) | MEDIUM | (at fill level 80%, 85%) LOW (at fill level 70%)

In addition, you can define your own events for fill levels between 0% and 99% and priorities of your own choice.

You can also override the priorities of the pre-defined events.

ThrowDBFillingBelowLimitEvent

DBFillingBelowLimit

The system triggers an event of this category when the fill level of the data area falls below the predefined value.

Events of this category are active with the following default values:

LOW (default value; at fill level 70%, 80%, 85%, 90%, 95%) | MEDIUM | HIGH

In addition, you can define your own events for fill levels between 1% and 100% and priorities of your own choice.

You can also override the priorities of the pre-defined events.

ThrowDBM:DispatcherStartEvent

DBM:DispatcherStart

The system triggers an event of this category when the event dispatcher has been started.

no

ThrowDBM:DispatcherStopEvent

DBM:DispatcherStop

The system triggers an event of this category when the event dispatcher is stopped.

no

ThrowDBM:DispConfigChangeEvent

DBM:DispConfigChange

The system triggers an event of this category when the event dispatcher configuration is changed.

no

ThrowDBM:MissedEventEvent

DBM:MissedEvent

The system triggers an event of this category when there is a gap in the serial numbering of the events, in other words, if an event was not generated.

no

ThrowDBM:TestEvent

DBM:Test

This event category is for test purposes only.

The system triggers events of this category when you execute the event_create_testevent DBM command.

no

ThrowErrorEvent

Error

The system triggers this event when it enters an error in the kernel log file.

no

ThrowEventChangedEvent

EventChanged

The system triggers an event of this category when the event configuration is changed, for example, when an event is activated or deactivated.

no

ThrowLogAboveLimitEvent

LogAboveLimit

The system triggers an event of this category when the fill level of the log area exceeds one of the predefined values.

Events of this category are active with the following default values:

HIGH (at fill level 96%,97%,98%,99%) | MEDIUM (at fill level 90%, 95%) | LOW (at fill level 50%, 75%)

In addition, for each time the fill level is exceeded, you can define an event with its own priority.

You can also override the priorities of the predefined events.

ThrowLogFullEvent

LogFull

The system triggers an event of this category when the log area of the database is 100% full.

no

ThrowLogSegmentFullEvent

LogSegmentFull

The system triggers an event of this category when a log segment of the log area is full.

no

ThrowOfflineEvent

Offline

The system triggers an event of this category after the database has been correctly transferred to the OFFLINE operational state.

no

ThrowOnlineEvent

Online

The system triggers an event of this category after the database has been transferred to the ONLINE operational state.

no

ThrowOutOfSessionsEvent

OutOfSessions

The system triggers an event of this category when all available user tasks are in use. This means that no further users can log on to the database.

no

ThrowStandbyEvent

Standby

The system triggers an event of this category after the database has been transferred to the STANDBY operational state.

no

ThrowSystemerrorEvent

Systemerror

The system triggers an event of this category when a serious system error occurs (error messages -9000 through -9999).

no

ThrowReconnectEvent

Reconnect

The system triggers an event of this category when the connection between the DBM server and the database is interrupted and cannot be restored.

no

ThrowUpdateStatWantedEvent

UpdateStatWanted

The system triggers an event of this category when the SQL optimizer statistics for at least one table need to be updated.

no

The system buffers the triggered events in an event queue. Once there, they can be called with a DBM command or further be processed by an event dispatcher. The event queue can hold a maximum of 1000 events. If this number is exceeded, the system deletes the 10 oldest events from the event queue and writes a warning to the dbm.prt log file.

More Information

  • Event Dispatcher

  • Database Studio, Using Database Events

  • Database Administration, Automating Administration Tasks


Foreign Keys - SAP Documentation

Background documentation Foreign Keys

If the values in a column (or a combination of columns) of a table always match the values of the primary key column of another table, then this column (or combination of columns) is called a foreign key.

Foreign Keys
Property | Description (Link to SQL Reference Manual)
Name | Foreign key name
Referencing Columns | Referencing column Referential CONSTRAINT Definition (referential_constraint_definition)
Reference Schema | Schema to which the table with the column that is referenced belongs
Reference Table | Table to which the column that is referenced belongs
Reference Column | Column which is referenced
Rule | Rule for behavior of the table referenced if a data record is deleted in the referencing table DELETE Rule (delete_rule)

More Information

SQL Reference Manual, Referential CONSTRAINT Definition

SQL Tutorial, Foreign Key Relationships Between Tables

Database Studio, Defining Foreign Key Relationships


Inverted Column - SAP Documentation

Background documentation Inverted Column

See Indexed Column


High Availability - SAP Documentation

Background documentation High Availability

High availability means that an IT system can be used continuously without downtimes.

More Information

Database Administration, Replication and High Availability

High Availability for the SAP MaxDB Database

SAP Note 952783


I - SAP Documentation

Background documentation I


Technical System Landscape - SAP Documentation

Background documentation Technical System Landscape

The following graphic presents an overview of the SAP MaxDB technical system landscape.

This graphic is explained in the accompanying text.

Technical System Landscape: SAP MaxDB in SAP Systems

More Information About the Technical System Landscape
Topic | Document | Quick Link to the SAP Service Marketplace
SAP MaxDB technical system landscape | Concepts of the Database System, Technical System Landscape | -
Network Communication | Concepts of the Database System, Network Communication |
Technical description of SAP NetWeaver | Master Guide | http://service.sap.com/instguides
Security | - | http://service.sap.com/security


Using Web Tools Behind a Firewall - SAP Documentation

Background documentation Using Web Tools Behind a Firewall

Note Note

The development of SAP MaxDB Web DBM, SAP MaxDB Web Server and SAP MaxDB Web Server Manager has been discontinued. These programs are only included in the SAP MaxDB software package up to and including version 7.5.

End of the note.

The default values for the installation of the web tools are based on the assumption that they are used in a secure environment behind a firewall.

If you have particularly stringent requirements for security of your systems, change the default configuration as soon as you have installed the software for the web tools.


Data Backup - SAP Documentation

Background documentation Data Backup

During a data backup, you back up the content of the data area and all the database parameters that may be necessary for restoring the database to a data carrier.

More Information

  • Concepts of the Database System, Backing Up Data

  • Database Studio, Backing up Data

  • Database Manager CLI, backup_start

  • Database Administration in CCMS, Scheduling a Data Backup


Database Trace - SAP Documentation

Background documentation Database Trace

You can activate a database trace. In the database trace, all reactions of the kernel to database statements are logged. The database trace is also called a kernel trace or vtrace.

More Information

  • Database Administration, Traces

  • Database Studio, Creating a Database Trace

  • Database Manager CLI, Commands for the Database Trace Function

  • Database Administration in CCMS, Database Trace

SAP Note 837385


Data Writer - SAP Documentation

Background documentation Data Writer

See Pager


DBMCLI - SAP Documentation

Background documentation DBMCLI

Abbreviation for Database Manager CLI

Command line variant of the SAP MaxDB Database Manager database administration tool.

More Information

Documentation for the Database Manager CLI


DBM Operator - SAP Documentation

Background documentation DBM Operator

DBM operators can manage databases using Database Studio and Database Manager CLI.

For historic reasons, they are called DBM operators (Database Manager operators).

More Information

  • Database Administration, DBM Operator

  • Database Studio, DBM Operator: Creating, Editing and Deleting

  • Database Manager CLI, Managing DBM Operators

  • Database Administration in CCMS, DBM Operator


Database - SAP Documentation

Background documentation Database

A database is a set of data with a regular structure. To create and manage databases, you use database software. To access and change data in a database, you use SQL statements.

Important Database Properties

Property

Restrictions

Modifiable

More Information

Database name

Conventions for Database Names

No

-

Database System Administrator: Name and password

Conventions for User Names and Passwords

Name: No

Password: Yes

Managing Users

Data area (data volumes): Size (=database size), directory, automatic extension

Log area (log volumes): Size and directory

General database parameters MaxDataVolumes and MaxLogVolumes

More information: Planning Databases

Yes

  • Changing the Database Size

  • Database Parameters

Working memory used by the database

General database parameter CacheMemorySize

Note that this parameter only roughly determines the size of the working memory used by the database. There are database functions which also need a certain amount of working memory, but whose memory consumption is not configured with this parameter.

Yes

  • General Database Parameters

  • Working Memory Areas

Number of CPUs

General database parameter MaxCPUs

Yes

General Database Parameters

Maximum number of parallel database sessions

General database parameter MaxUserTasks

Yes

General Database Parameters

Maximum number of locks

General database parameter MaxSQLLocks

Yes

Configuring Locks for Database Objects

Automatic update of the SQL optimizer statistics

For SAP systems, see SAP note 927882.

Yes

Automating Administration Tasks

Automatic log backup

-

Yes

Automating Administration Tasks

Automatic database start

Only available on Microsoft Windows

Yes

Activating Automatic Database Start

Log settings

-

Yes

Configuring Database Transaction Logging

More Information

  • Concepts of the Database System, What is an SAP MaxDB Database?

  • Database Administration, Creating Databases

  • Database Studio, Creating Databases

  • Database Manager CLI, db_create

  • SQL Reference Manual, SQL Statements: Overview

  • SQL Tutorial, SQL Tutorial

  • Database Administration in CCMS, Properties


Data Volume - SAP Documentation

Background documentation Data Volume

Data volumes are the permanent storage in which the database system stores the application data of a database. All data volumes of a database together form the data area.

More Information

  • Concepts of the Database System, Volumes (Permanent Storage), Data Area

  • Database Studio, Adding Data Volumes, Deleting Data Volumes

  • Database Manager CLI, db_addvolume

  • Database Administration in CCMS, Data Area, Volumes


Catalog Cache - SAP Documentation

Background documentation Catalog Cache

The catalog cache is the area of the working memory in which the database system keeps information from the database catalog.

More Information

Concepts of the Database System, Working Memory Areas


Data Cache - SAP Documentation

Background documentation Data Cache

The data cache is the working memory area where the database system keeps the data pages that it has recently read or write-accessed in the data area.

More Information

  • Concepts of the Database System, Working Memory Areas

  • Database Studio, Displaying Information About Caches (Working Memory Areas)

  • Database Manager CLI, show

  • Database Administration in CCMS, Caches


Database Tool - SAP Documentation

Background documentation Database Tool

Database tools are programs that you can use to manage and monitor databases, to edit data and to handle errors.

There are various database tools available for SAP MaxDB.

SAP MaxDB Database Tools

Name

User Interface

Tasks

Typical Users

Downward Compatibility

Database Analyzer

Command line

Analysis of the performance of databases

Support employees

Database administrators

Yes

Database Manager CLI

Command line

Creating and managing databases, DBM operators and database users

Database administrators

Yes, ≥ 7.2

Database Studio

GUI

Note that starting with database version 7.7, Database Studio replaces Database Manager GUI and SQL Studio, and provides a GUI for the Loader.

  • Creating and managing databases, DBM operators and database users

  • Exporting and importing data, tables, schemas, users, and databases

  • Accessing data and the database catalog, SQL statements, creating, and managing database objects and database users

  • Synchronizing table contents of two or more databases.

Database administrators

Yes, ≥ 7.5

Loader

Command line

Exporting and importing data, tables, schemas, users, and databases

Database administrators

Application developers

Yes, ≥ 7.3

SQLCLI

Command line

Accessing data and the database catalog, SQL statements, creating, and managing database objects and database users

Database users

Application developers

Yes, ≥ 7.2

XCONS

Command line

Database console. Displaying detailed information about the operating system resources occupied by the database system

Support employees

Database administrators

Yes

XUSER

Command line

Creating and managing XUSER entries for simplified logon to database tools and interfaces with user keys

Support employees

Database administrators

Application developers

Yes
Other SAP Database Tools

Database Tool

User Interface

Tasks

Typical Users

Downward Compatibility

  • DBA Cockpit

  • Further CCMS Tools: Database Administration in CCMS

GUI

Managing SAP MaxDB and SAP liveCache databases in SAP systems

Note that CCMS is only available in SAP systems.

SAP administrator

Yes

More Information

Concepts of the Database System, Architecture of the Database Tools


Internal Database File - SAP Documentation

Background documentation Internal Database File

The database system stores each database object as one or more internal database files. There is an entry in the internal database file directory for each internal database file.


Demo Database - SAP Documentation

Background documentation Demo Database

For testing purposes you can create a demo database. SAP MaxDB provides a template for the DEMODB demo database, which is also used in documentation examples.

Main Properties of the Demo Database

Property

Default Values

Database name

DEMODB

Name/password of the database system administrator

DBADMIN/SECRET

Name/password of a database user (with the permissions of a database administrator)

MONA/RED

Schema

HOTEL

Tables

CITY, CUSTOMER, HOTEL, ROOM, RESERVATION, EMPLOYEE

More information:

  • Objects in the HOTEL Schema

  • SQL Tutorial, Explanation of the Tables in the HOTEL Demo Schema

More Information

  • Concepts of the Database System, Demo Database, Objects in the HOTEL Schema

  • Database Studio, Loading Demo Data

  • Loader Tutorial, Demo Databases DEMODB and TESTDB

  • SQL Tutorial, Demo Data for the SQL Tutorial


Database Structure - SAP Documentation

Background documentation Database Structure

For storing and accessing data, the database uses internal logical database structures, such as B* trees, hardware errors can lead to inconsistent database structures.

More Information

Database Administration, Checking Database Structures

Database Studio, Checking Database Structures

Database Administration in CCMS, Scheduling a Database Structure Check


Database Copy - SAP Documentation

Background documentation Database Copy

When you make a database copy, you duplicate the data contained in a database.

You can use a database copy for tests, to develop database applications or to set up a standby database, for example. A system copy of an SAP system also requires a database copy.

More Information

Database Administration, Database Copy


Service - SAP Documentation

Background documentation Service

On Microsoft Windows, you can start and stop databases, the global listener, the X servers (SAP MaxDB communication servers) and some other SAP MaxDB components as services.

Services

Name

Default Operating System User

Description

  • MaxDB: <database_name>

  • MaxDB: <database_name> (slow)

Local System Account

Kernel of database <database_name>

This service is available in several versions for each database (one service per kernel variant). Only one of each of these services can run (system default: fast kernel variant).

More information: Glossary, Kernel Variant

If this service is stopped, then either the database was transferred to the OFFLINE operational state or the database crashed.

Do not start this service manually, but by transferring the database to the ONLINE operational state using a database tool (Database Studio, Database Manager CLI or CCMS).

More information: Database Administration, Activating Automatic Database Start

MAXDB: .UMDB

Local System Account

Internal database for user authentication

MAXDB: .<generated_name>

Example Example

MAXDB: .M770205

End of the example.

Local System Account

Service database for special internal administration tasks

More information: Glossary, Service Database

XServer

Local System Account

Global listener (if it has been assigned the default port 7210) or a SAP MaxDB X server (if the X server has been assigned the global listener's default port 7210)

The global listener and X servers need to be started in the following cases, among others:

  • Clients from other computers want to access a database on the local computer

  • You use the JDBC interface

More information: Global Listener and X Servers

XServer-<port_number>

Local System Account

Installation-specific X servers with port <port_number> and/or the global listener (if it has not been assigned the default port 7210)

More Information

Concepts of the Database System, Services

Database Administration, Activating Automatic Database Start


Database Design - SAP Documentation

Background documentation Database Design

Database design is the conversion of your logical data model into database objects. It includes the definition of tables, keys and indexes. The database design has a strong influence on operational system performance.

More Information

  • Database Studio, Creating and Using Database Objects: Overview

  • SQL Tutorial, Data Definition

  • SQL Reference Manual, Data Definition

  • Database Administration,

    • Planning Databases

    • Analyzing Database Performance


Database Application - SAP Documentation

Background documentation Database Application

Database applications are applications that use a database to store their data. Database applications use interfaces to access the database.

More Information

Concepts of the Database System, Interfaces

Database Administration, Developing Database Applications


DBA Planning Calendar - SAP Documentation

Background documentation DBA Planning Calendar

Only available in SAP systems.

You can use DBA Planning Calendar to automate database administration. You can schedule, perform, and check database administration actions.

More Information

Database Administration in CCMS, DBA Planning Calendar


DBA - SAP Documentation

Background documentation DBA

See

Database System Administrator (SYSDBA User)

Database User


Data Access - SAP Documentation

Background documentation Data Access

The database system uses B* trees and page chains for storing and accessing data.

More Information

Concepts of the Database System, Logical Access Structures


Cursor - SAP Documentation

Background documentation Cursor

A cursor is a database object that you can use to navigate in the named result table of an SQL statement.

More Information

SQL Reference Manual, DECLARE CURSOR Statement (declare_cursor_statement)


Database Connection - SAP Documentation

Background documentation Database Connection

A connection between a database tool or interface and the database is the prerequisite for all work with the database. To connect to a database, you need the following information:

Database Connection: Properties
Property | Description
Landscape | For Database Studio only Landscape to which the database computer belongs
Server | Database computer (name or IP address)
Database | Database name
User | User name (database system administrator, DBM operator, or database user) For Database Studio only: If no user is displayed, add a user by choosing Login in the context menu of the database.

More Information

  • Database Studio, Logging on to a Database

  • Database Manager CLI, Calling the Database Manager CLI

  • Loader, Opening a Session: Loader Commands, Opening a Session: Loader CLI Options

  • Database Administration in CCMS, Central System Data, MaxDB/liveCache System Overview


Data Carrier - SAP Documentation

Background documentation Data Carrier

During data or log backups, the data or log entries are saved to a data carrier, such as a tape or a file in the file system.

Data carrier types

Type

Suitable for the Following Backup Types

Comments

FILE

  • Data backups

  • Log backups

  • Automatic log backups

Do not create backups on data carriers of the FILE type that are located on the same hard disk as the volumes of the database. Always carry out backups to a separate hard disk.

If your data carriers are located on the same computer as the database, regularly copy the backups to other computers or data carriers using operating system commands.

TAPE

  • Data backups

You can use autoloaders.

Do not use tapes more often than is recommended by the manufacturer.

On Unix:

  • Make sure you address the correct device driver.

  • Use a rewind tape.

PIPE

  • Data backups

  • Manual log backups

    Note that automatic log backups to pipes are not possible.

On Microsoft Windows, the pipes are created by the database kernel.

On Unix, the pipes are not created by the database kernel:

  • For backups without third-party backup tools, you must create the pipe explicitly before you start the backup.

  • For backups using third-party backup tools that are not directly supported by SAP MaxDB, you must create the pipe explicitly before you start the backup.

  • For backups using third-party backup tools that are directly supported by SAP MaxDB, the pipe is created by the database system during the backup. The pipe must not exist beforehand.

Before you carry out a log backup to a pipe without a third-party backup tool or with a third-party backup tool not directly supported by SAP MaxDB, first set the value of the special database parameter EnableLogBackupToPipe to YES. This ensures that the system can overwrite the log entries in the log area that have already been written to the pipe. Note that the system does not check whether the log backup to the pipe was successful. More information: Database Administration, Special Database Parameters

More Information

Database Administration, Backup Templates and Data Carriers

Database Administration in CCMS, Backup Templates


Constraint - SAP Documentation

Background documentation Constraint

A constraint is an additional restriction of the value range for the data type of a column.

Constraints
Property | Description (Links to SQL Reference Manual)
Name | Constraint Name (constraint_name)
Definition | CONSTRAINT Definition (constraint_definition)

More Information

  • SQL Tutorial, Constraints

  • Database Studio, Defining Constraints for Columns


DBADMIN - SAP Documentation

Background documentation DBADMIN

The default name for the database system administrator is DBADMIN.

More Information

Database Administration, Database System Administrator


CLOB - SAP Documentation

Background documentation CLOB

See LOB


Database Administrator (DBA User) - SAP Documentation

Background documentation Database Administrator (DBA User)

A database administrator is a database user of the DBA user class. Database administrators can manage users and objects in the database.

More Information

Database Administration, Database Users


Database File - SAP Documentation

Background documentation Database File

The database system creates a number of files on the database computer, including configuration and log files.

More Information

Database Administration,

  • Configuration Files

  • Log Files

Database Studio, Displaying Configuration and Log Files

Database Administration in CCMS,

  • Logs

  • Messages

  • DBA History


Database Analyzer - SAP Documentation

Background documentation Database Analyzer

SAP MaxDB Database Analyzer is a database tool for analyzing database performance. It replaces the XWIZARD and XWIZTRC tools.

More Information

  • Database Analyzer documentation

  • Database Studio, Starting or Stopping Database Analyzer

  • Concepts of the Database System, Database Tools

  • Database Administration in CCMS, Database Analyzer


DBMGUI - SAP Documentation

Background documentation DBMGUI

Abbreviation for Database Manager GUI.

Database Manager GUI (GUI variant of the SAP MaxDB Database Manager database tool) is a database tool for managing SAP MaxDB databases. Database Manager GUI has a graphical user interface.

Caution Caution

The development of Database Manager GUI has been discontinued. As of version 7.7, Database Manager GUI was replaced by Database Studio.

You can find the old documentation for Database Manager GUI at http://maxdb.sap.com/archive/.

End of the caution.

More Information

Concepts of the Database System, Database Tools


Database Name - SAP Documentation

Background documentation Database Name

Certain restrictions apply to database names.

More Information

Database Administration, Conventions for Database Names

Database Administration in CCMS, Central System Data


Code Attribute - SAP Documentation

Background documentation Code Attribute

With the code attribute you specify which character set the system uses to store the values of a table column. Note that the code attribute has an impact on the sort sequence, among other things.

Code Attribute | Column Values
No code attribute specified | The column values are stored using the database system's default code attribute. You can change the default code attribute using the special database parameter DefaultCodePage.
ASCII | The column values are stored in ASCII.
BYTE | The column values are stored as-is, that is, they are not converted by the database system.
UNICODE | The column values are stored in Unicode.

More Information

  • Database Studio, Creating Columns

  • SQL Reference Manual, Code Attribute

  • Loader, Code Specification


Converter - SAP Documentation

Background documentation Converter

The converter contains all information regarding which logical data pages are saved to which physical positions (block addresses).

More Information

Concepts of the Database System, Converter

Database Administration in CCMS, Caches


Cache - SAP Documentation

Background documentation Cache

See Working Memory


COMMIT - SAP Documentation

Background documentation COMMIT

A COMMIT concludes a database transaction. During a COMMIT, the database system saves all the changes carried out by the transaction. The system can no longer use a ROLLBACK to reverse any changes that are completed by a COMMIT.

After a COMMIT, the database system releases all locks that have been allocated to the transaction and implicitly opens a new transaction.

AUTOCOMMIT Mode
ON | The database system performs all the necessary COMMIT actions automatically.
OFF | You have to enter COMMIT commands explicitly.

More Information

  • SQL Reference Manual, COMMIT Statement

  • Database Studio, Configuring Database Studio

  • SQLCLI, Overview of All SQLCLI Commands

  • Loader, AUTOCOMMIT Command


File Directory (Database-Internal) - SAP Documentation

Background documentation File Directory (Database-Internal)

The file directory is an internal administration structure of the database system. The file directory contains the following, among other things:

  • Assignment of the root pages of the B* trees to the table IDs

  • Assignment of the initial pages of page chains to the table IDs

  • Type flags (specify whether a table contains primary data, secondary keys or LOB values)

  • Statistical information on the number of data records and the size of the tables

Each internal file in the file directory has a unique file number (8 bytes long).

More Information

Concepts of the Database System, Logical Access Structures

SQL Reference Manual, FILES, FILEDIRECTORIES, FILESYSTEMS


Checkpoint - SAP Documentation

Background documentation Checkpoint

See Savepoint


Data Integrity - SAP Documentation

Background documentation Data Integrity

The database system ensures the integrity of the data in the database by protecting the data both against intentional, but unauthorized data changes and against unintentional, but authorized data changes.

More Information

SQL Reference Manual, Ensuring Data Integrity


Database Manager - SAP Documentation

Background documentation Database Manager

SAP MaxDB Database Manager is a database tool for creating and managing databases, database users, and Database Manager operators.

You can choose from the following variants of Database Manager:

  • Database Manager CLI

  • Database Manager GUI

    Caution Caution

    The development of Database Manager GUI has been discontinued. As of version 7.7, Database Manager GUI was replaced by Database Studio.

    You can find the old documentation for Database Manager GUI at http://maxdb.sap.com/archive/

    End of the caution.

More Information

Concepts of the Database System, Database Tools


DBM Option - SAP Documentation

Background documentation DBM Option

You can call up Database Manager CLI using different options (DBM options).

More Information

Database Manager CLI, DBM Options


File Class - SAP Documentation

Background documentation File Class

The configuration and log files of the database system belong to different file classes:

File Classes
File Class | Description
backup | Log files for backups and restores
config | Configuration files
dump | Memory dumps
hist | Diagnosis files
lvc | Log files for SAP liveCache technology
protocol | General log files

In support cases, you need the file class for packing database files before sending them to the support team.

More Information

Database Administration

  • Configuration Files

  • Log Files

Database Manager CLI, diag_pack


Database Procedure - SAP Documentation

Background documentation Database Procedure

A database procedure (also called stored procedure) is a database object that contains a series of statements and, therefore, forms an independent part of a program.

Database procedures are created and stored in the database. You can define any number of database procedures. To execute a database procedure, you call it from an application program using the appropriate SQL statement.

More Information

SQL Reference Manual

  • Name of a Database Procedure

  • CREATE DBPROC[EDURE] Statement (create_dbproc_statement)

  • CALL Statement (call_statement)

SQL Tutorial, Database Procedures

Database Studio,

  • Creating Database Procedures

  • Executing Database Procedures

  • Deleting Database Procedures

Database Administration in CCMS, DB Procedures


DDL Statement - SAP Documentation

Background documentation DDL Statement

DDL statements are SQL statements that are used to define the data structure in a database (DDL = Data Definition Language).

In the SAP MaxDB database system, DDL statements are controlled by the transaction concept. After a DDL statement has been completed with a COMMIT, it can no longer be undone.

More Information

SQL Reference Manual, Data Definition


D - SAP Documentation

Background documentation D


Documentation - SAP Documentation

Background documentation Documentation

Note Note

In general, the documentation for SAP MaxDB databases also applies to SAP liveCache databases. Differences are indicated in the documentation where necessary.

End of the note.

The SAP MaxDB documentation is divided into several individual documents. If a reference is made to a section in another document, the title of the document is displayed in italics before the actual link.

More Information

SAP Note 767598

Download

Syntax Notation

Documentation Variable


Database Catalog - SAP Documentation

Background documentation Database Catalog

The database catalog of a database contains the metadata for all database objects. The database catalog is made up of the following sections:

  • Information about the installation of the database system

  • Metadata about users and user groups

  • Metadata about database objects

    This includes, among other things, metadata for base tables and view tables.

A user can only access the metadata of another user or user group if this user has been granted the relevant privileges.

More Information

  • Database Studio, Screen Areas of Database Studio, Creating and Using Database Objects: Overview

  • SQL Reference Manual, Data Definition, Authorization

  • SQLCLI, Requesting Information About the Database Catalog

  • Loader, Data Description


Database Instance - SAP Documentation

Background documentation Database Instance

See Database


File ID - SAP Documentation

Background documentation File ID

Some log and configuration files have a file ID. You need the file ID to display the corresponding file using Database Manager CLI.

More Information

Database Administration,

  • Log Files

  • Configuration Files

Database Manager CLI, file_getfirst


DBM Command - SAP Documentation

Background documentation DBM Command

DBM commands are commands for managing databases. To use DBM commands, log on to Database Manager CLI or Database Studio as database system administrator or as a DBM operator.

More Information

Database Manager CLI, Overview of All DBM Commands

Database Studio, Executing DBM Commands

Database Administration in CCMS, Database Manager (CLI)


Database Session - SAP Documentation

Background documentation Database Session

You can only execute SQL statements after opening a database session. To open a database session, log on to a database as a database user with user name and password, using either a database tool or an interface. When you open a database session, you can override some session properties, including the following:

  • SQL mode

  • Cache limit

  • Time-out value

  • Isolation level

Later, you terminate the database session with the corresponding command, or the database system terminates the database session when the time-out value is exceeded.

The database system assigns a user task to each database session. To configure the maximum number of user tasks, and thereby the maximum number of database sessions, use the MaxUserTasks general database parameter. When configuring these database parameters, bear in mind that database tools implicitly open and close database sessions for specific actions.

More Information

  • Database Studio, Logging on to a Database

  • Database Administration, General Database Parameters

  • SQLCLI, Logging on to a Database

  • Database Manager CLI, SQL Access to the Database Instance

  • SQL Reference Manual, CONNECT Statement

  • Loader, Opening a Session, Loader CLI Options, Opening a Session, Loader Commands


Database User - SAP Documentation

Background documentation Database User

Database users can change data in the database using SQL statements. To execute SQL statements, they either log on to the database via interfaces or using query tools such as Database Studio or SQLCLI. Note that database users cannot log on to Database Manager CLI or perform administration tasks in Database Studio.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

More Information

Database Administration, Database Users, Conventions for User Names and Passwords

Database Studio, Creating Database Users, Changing the Properties of Database Users, Deleting Database Users

SQL Tutorial, Database Users and Their Privileges

SQL Reference Manual, Authorization


Database Parameter - SAP Documentation

Background documentation Database Parameter

Database parameters define the fundamental properties of a database.

You can change the values of most database parameters.

Most changes to database parameters take effect only after the database has been restarted.

However, you can change certain database parameters while the database is running, that is in the ONLINE or ADMIN operational state (see the description of individual database parameters for more information). For these changes you can define when they are to become effective:

  • Until the next restart

  • After the next restart

  • Immediately and permanently

Note Note

Starting with version 7.7.03 of the database software, the names of many database parameters have changed.

Some database parameters have also been designated obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

More information: Obsolete Database Parameters

End of the note.

More information:

  • Database Administration, Database Parameters

  • Database Studio, Changing Database Parameters

  • Database Administration in CCMS, Parameters

General Database Parameters

Name

(from version 7.7.03)

Old Name

(up to and including version 7.7.02)

Description

Change Restrictions

More Information

AutoLogBackupSize

LOG_SEGMENT_SIZE

Log segment size (in pages)

When automatic log backup is activated and no time interval has been configured, then the database system starts an automatic log backup as soon as a log segment is full.

0: system uses 1/3 of the log area as the log segment size

≤50% of the log area: system uses the value defined in AutoLogBackupSize

> 50% of the log area: system uses 50% of the log area as the log segment size

Changes only apply after a restart of the database.

Database Administration, Backing Up Log Entries

BridgeType

-

Specifies whether the database is used in a bridge scenario (where the database acts as a bridge to other databases)

Changes only apply after a restart of the database.

CacheMemorySize

CACHE_SIZE

Size of the working memory (RAM) which is used by the database system for I/O operations (in pages).

The main consumers of the working memory area configured with CacheMemorySize are the data cache, the converter, the shared catalog cache and the file directory; but other database components also use this memory area.

The following restrictions apply: 800 ≤ CacheMemorySize < total RAM size

This parameter has a great impact on the performance of your system. The optimum value for this parameter depends on your system environment. Note that other database functions and programs also need a certain amount of working memory, so do not assign your whole working memory to CacheMemorySize.

Changes only apply after a restart of the database.

Database Administration, Analyzing Database Performance

Concepts of the Database System, Working Memory Areas

InstanceType

INSTANCE_TYPE

Database type:

  • OLTP

    SAP MaxDB database

  • LVC

    SAP liveCache Technology

You define the database type when you create the database.

Cannot be changed

Concepts of the Database Systems,

  • What is an SAP MaxDB Database?

  • SAP liveCache Technology

KernelVersion

KERNELVERSION

Version of the database software

You cannot change this value.

When you install a new version of the database software, the database system updates the value of this parameter.

MaxBackupMedia

MAXBACKUPDEVS

Maximum number of files or tape devices for parallel backup

Changes only apply after a restart of the database.

Database Administration, Backup Templates and Data Carriers

MaxCPUs

MAXCPU

Maximum number of processors to which the database system can distribute user tasks.

When choosing this value, bear in mind that your computer's operating system resources have to be available for other programs as well.

To further restrict the number of available CPUs in a running system, use the special database parameter UseableCPUs.

Changes only apply after a restart of the database.

SAP Note 936058

MaxDataVolumes

MAXDATAVOLUMES

Maximum number of data volumes

Changes only apply after a restart of the database.

Concepts of the Database System, Volumes (Permanent Storage)

MaxLogVolumes

MAXLOGVOLUMES

Maximum number of log volumes

Changes only apply after a restart of the database.

MaxSQLLocks

MAXLOCKS

Maximum number of locks for database objects

Changes only apply after a restart of the database.

Concepts of the Database System, Locks

MaxUserTasks

MAXUSERTASKS

Maximum number of simultaneously active user tasks and therefore the maximum number of database sessions

If this number has been reached, then no additional user can log on to the database.

Note that if you choose a large value for MaxUserTasks, the database system requires much address space, particularly for local communication via shared memory.

For SAP systems (OLTP), we recommend the following minimum value: 2 x <number_of_SAP_processes> + 4

Changes only apply after a restart of the database.

Concepts of the Database System, Tasks

SAP Note 757914

MCODIndicator

MCOD

MCOD = Multiple Components One Database

In SAP systems, this parameter indicates whether several applications are using this database.

Changes only apply after a restart of the database.

OmsMaxHeapSize

OMS_HEAP_LIMIT

For SAP liveCache databases

Specifies the maximum size of the OMS heap (in KB)

Changes only apply after a restart of the database

-

RunDirectoryPath

RUNDIRECTORY

Run directory of the database

If you specify a relative path, the system interprets this path relative to the data path:

<global_data_path>\wrk\<database_name>\ or<private_data_path>\wrk\<database_name>\ (if you have configured a private data path during installation)

Changes only apply after a restart of the database.

Glossary, Run Directory

UseMirroredLog

LOG_MIRRORED

Specifies whether the database system mirrors the log area (software-based mirroring)

This parameter is relevant only when you create a mirror volume using Database Manager CLI. Database Studio automatically adjusts this parameter when you create a mirror volume.

Note that it we recommend to use hardware-based mirroring for the log area. More information: Planning Databases

Changes only apply after a restart of the database.

Glossary, Log Mode
Special Database Parameters (Extended)

Name

(from version 7.7.03)

Old Name

(up to and including version 7.7.02)

Description

Change Restrictions

More Information

AllowAuthentication

AUTHENTICATION_ALLOW

Specifies the authentication methods that are allowed for the database. Possible Values (comma-separated):

  • SCRAMMD5: Challenge/response method using a MD5 hash algorithm

  • BASIC: Passwords are sent using a reversible encryption algorithm

If you do not specify a value, then all authentication methods are allowed except those specified using the database parameter DenyAuthentication.

Can be changed in ONLINE or ADMIN operational state

CAT_CACHE_SUPPLY

CAT_CACHE_SUPPLY

Size of the task-specific catalog cache in the working memory that is allocated to user tasks (in pages)

For each user task the system reserves a minimum part of the catalog cache (see TaskSpecificCatalogCacheMinSize). Each task may extend its catalog cache, but all task-specific catalog caches together may not exceed the catalog cache size. Note that the catalog cache size influences performance: You achieve the best performance with a catalog cache hit rate of 100%. Use database monitoring to get information about the catalog cache hit rate.

Changes only apply after a restart of the database.

Concepts of the Database System, Working Memory Areas

ClusterWriteThreshold

CLUSTER_WRITE_THRESHOLD

Minimum amount of blocks that the database system still stores as clusters in the data area

Can be changed in ONLINE or ADMIN operational state

-

ClusterCompressionFillThreshold

-

Maximum number of occupied blocks in clusters eligible for compression

If more blocks are occupied in a cluster, the database system does not compress the cluster.

Can be changed in ONLINE or ADMIN operational state

-

ConverterStripes

CONVERTER_REGIONS

Number of critical sections into which the converter is divided

This division enables parallel writing to the converter.

The default value is calculated by the database system. You can change the value. Changes only apply after a restart of the database.

Glossary, Stripe

ConverterVolumeIdLayout

VOLUMENO_BIT_COUNT

Number of bits in the converter block address that are reserved for the logical volume number of a data volume

We recommend that you do not change the value that was defined when the database was created. If you change the database parameter in the ONLINE or ADMIN operational state, you must restore the database afterwards to update the numbering of the data volume.

Database Administration, Planning the Database

DataCacheStripes

_DATA_CACHE_RGNS

Number of critical sections into which the data cache is divided

This division enables parallel writing to the data cache.

The default value is calculated by the database system. You can change the value. Changes only apply after a restart of the database.

DateTimeFormat

DATE_TIME_FORMAT

System default for the date and time format

You can override this date and time format when using database tools (standard_date_mask in Loader) or when using SQL statements (datetimeformat).

Can be changed in ONLINE or ADMIN operational state

-

DeadlockDetectionLevel

DEADLOCK_DETECTION

Maximum search level for deadlock detection

Any deadlocks that the database system does not detect at this search level are only resolved by a timeout.

Can be changed in ONLINE or ADMIN operational state

Parameter RequestTimeout

DefaultCodePage

DEFAULT_CODE

System default for the code attribute, applies only to the column values of the data types CHAR[ACTER], VARCHAR and CLOB

Can be changed in ONLINE or ADMIN operational state

SQL Reference Manual, Code Attribute

DenyAuthentication

AUTHENTICATION_DENY

Specifies the authentication methods that are not allowed for this database. Possible Values (comma-separated):

  • SCRAMMD5: Challenge/response method using a MD5 hash algorithm

  • BASIC: Passwords are sent using a reversible encryption algorithm

Note that older clients can only connect to the database using the BASIC authentication method. Not allowing this method prevents these clients from being able to connect.

Can be changed in ONLINE or ADMIN operational state

n

DiagnoseHistoryCount

DIAG_HISTORY_NUM

Number of history versions in the directory in which the database system stores diagnosis files (backups of the most important log files and memory dumps) after a database error

Changes only apply after a restart of the database.

Database Administration, Log Files

DiagnoseHistoryPath

DIAG_HISTORY_PATH

Directory in which the database system stores diagnosis files (backups of the most important log files and memory dumps) after a database error

Changes only apply after a restart of the database.

See above

EnableIndexOnlyStrategy

OPTIM_INV_ONLY

Defines whether the SQL optimizer uses the Index Only strategy for joins

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, Search Strategies

EnableLogBackupToPipe

LOG_BACKUP_TO_PIPE

NO: After a log backup has been written to a pipe, the connection to the pipe is closed. The system does not receive any information on whether the log backup was successful. As a result, the log area is not released and cannot be overwritten. Therefore, it may become full. Consequently no changes to data can be made any more.

YES: The database system can overwrite the log entries in the log area that have already been written to the pipe. Note that the system does not check whether the log backup to the pipe was successful.

Changes only apply after a restart of the database.

Database Administration, Backing Up Log Entries

EnableQueryRewrite

OPTIMIZE_QUERYREWRITE

Prerequisite: Support database parameter QueryAnalysisMode is set to EXTENDED.

Specifies whether the system tries to transform SQL statements so that the resulting statement is semantically identical but faster to process. The transformations are purely rule-based and do not take into account any statistical information. The main purpose of transformations is to avoid intermediate result sets.

In some cases, it may not be possible to display the statement that results from the transformation as an SQL statement.

After an SQL statement has been transformed, the SQL optimizer determines the most cost-effective search strategy for accessing the data.

The system can transform the following types of SQL statements: SELECT, CREATE CURSOR FOR SELECT, EXPLAIN SELECT

After the system has transformed an SQL statement, the result of the EXPLAIN statement contains the text QUERY REWRITE DONE as well as a list indicating the rules executed and the number how often they were executed.

Can be changed in ONLINE or ADMIN operational state

-

ExclusiveLockRescheduleThreshold

MAXRGN_REQUEST

Maximum number of attempts a task should make to access a critical section

If this number is exceeded, the task releases its access to the CPU. The CPU can then be accessed by another task belonging to the same user kernel thread.

Can be changed in ONLINE or ADMIN operational state

Glossary, Critical Section

FileDirectorySpinlockPoolSize

FILEDIR_SPINLOCKPOOL_SIZE

Number of spinlocks available for reader-writer locks for the internal file directory

Changes only apply after a restart of the database.

Glossary, Reader-Writer Lock

FormatDataVolume

FORMAT_DATAVOLUME

Only for test purposes

Suppresses the formatting of data volumes when a new database is created

Changes only apply after a restart of the database.

Glossary, Volume

HashJoinSingleTableMemorySize

MAX_SINGLE_HASHTABLE_SIZE

Maximum size of the working memory that the database system can use to cache a single table when executing a join (in KB)

Can be changed in ONLINE or ADMIN operational state

See above

HashJoinTotalMemorySize

MAX_HASHTABLE_MEMORY

Maximum size of the working memory that the database system can use to cache all tables when executing joins (in KB)

Can be changed in ONLINE or ADMIN operational state

Glossary, Join

HighResolutionTimer

HIRES_TIMER_TYPE

Type of time measurement that is used by the kernel for internal operations

Use this parameter only for multiprocessor computers on which there could be synchronization problems between the CPUs.

Changes only apply after a restart of the database.

-

HotStandbyDelayTime?

HS_DELAY_TIME_<NNN>

Delay in seconds after which the standby database applies the data changes of the master database. The question mark (?) is used as placeholder for the three-digit identification of the standby database.

Changes only apply after a restart of the database.

Database Administration, Hot Standby

HotStandbyNodeName?

HS_NODE_<NNN>

Only for hot standby systems

Host name or IP address of the database The question mark (?) is used as a placeholder for the three-digit identification of the database. The default value for the master database is HotStandbyNodeName001.

Changes only apply after a restart of the database.

See above

HotStandbyStorageDLLPath

HS_STORAGE_DLL

Only for hot standby systems

Name of the library through which the system addresses the memory management system

The default value is libhsscopy.

Changes only apply after a restart of the database.

See above

HotStandbySyncInterval

HS_SYNC_INTERVAL

Only for hot standby systems

Minimum time span between two commands of the master database to synchronize the standby databases (in s)

Changes only apply after a restart of the database.

See above

IndexListsMergeThreshold

OPTIM_MAX_MERGE

Specifies whether the SQL optimizer uses an index-merge strategy

If the number of pages of an index that need to be merged exceeds the value specified in IndexListsMergeThreshold, the SQL optimizer does not use this index for an Index Merge strategy.

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, Search Strategies

JoinSearchLevel

JOIN_SEARCH_LEVEL

Algorithm used by the SQL optimizer for the join sequence search

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer,

Database Parameter JoinSearchLevel

JoinSearchTableThreshold4

JOIN_MAXTAB_LEVEL4

Parameter of the SQL optimizer

Can be changed in ONLINE or ADMIN operational state

JoinSearchLevel

JoinSearchTableThreshold9

JOIN_MAXTAB_LEVEL9

Parameter of the SQL optimizer

Can be changed in ONLINE or ADMIN operational state

JoinSearchLevel

JoinTableBufferSize

JOIN_TABLEBUFFER

Size of the buffer (in KB) per user task for table buffers used during join execution

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, Search Strategies for Joins

KernelMessageFileSize

KERNELDIAGSIZE

Size of the kernel log file (in KB)

Changes only apply after a restart of the database.

Database Administration, Log Files

KernelMessageHistoryCount

KNLMSG_HISTORY_NUM

Number of stored old kernel log files

At each database start, the system moves the old kernel log file to the log history directory.

Changes only apply after a restart of the database.

Database parameter DiagnoseHistoryPath

MaxKernelMessageArchiveSize

-

If this parameter is set to a value other than 0, it defines the maximum size of the KnlMsgArchive file (containing archived messages of the database kernel).

If the specified size is reached, the system renames the KnlMsgArchive file to KnlMsgArchive_<timestamp> and creates a KnlMsgArchive file.

Can be changed in ONLINE or ADMIN operational state

LoadBalancingCheckInterval

LoadBalancingCheckLevel

LOAD_BALANCING_CHK

Time interval in which the database system checks whether it should use load balancing (in s)

Can be changed in ONLINE or ADMIN operational state

Concepts of the Database System, Load Balancing between User Kernel Threads

LocalRedoLogBufferSize

LOCAL_REDO_LOG_BUFFER_SIZE

If you enter a value > 0, then the system allocates a local buffer of this size (in bytes) to each transaction for saving redo log entries.

Changes only apply after a restart of the database.

-

LogQueues

LOG_QUEUE_COUNT

Number of log queues

If this number is 0, the system calculates the number from the parameter MaxLogQueues

Changes only apply after a restart of the database.

Glossary, Log Queue

LogQueueSize

LOG_IO_QUEUE

Size of the individual log queues (in pages)

Changes only apply after a restart of the database.

See above

MaxEvents

_MAXEVENTS

Maximum number of events in the working memory that can be processed by the system

Changes only apply after a restart of the database.

Glossary, Event

MaxExclusiveLockCollisionLoops

MP_RGN_LOOP

Maximum number of times a task attempts to access a critical section that has been locked by another task

If this number is exceeded, the accessing task changes its state to Waiting.

Can be changed in ONLINE or ADMIN operational state

Glossary, Critical Section

MaxLogWriterTasks

MAX_BACKUP_TASKS

Maximum number of log writer tasks (determines the maximum number of log partitions)

Changes only apply after a restart of the database.

Concepts of the Database System, Log Area and Tasks

MaxMemoryAllocationSize

MEMORY_ALLOCATION_LIMIT

Maximum amount of working memory to be used by the database (in KB)

Can be changed in ONLINE or ADMIN operational state

-

MaxParallelLiveCacheTraceFiles

_MAX_MESSAGE_FILES

Maximum number of trace files that the system can open simultaneously

Changes only apply after a restart of the database.

-

MaxRetentionTime

MinRetentionTime

MAX_RETENTION_TIME

MIN_RETENTION_TIME

For SAP liveCache databases

Specifies the time (in min) after which the garbage collectors start deleting the history data (undo log entries and links to them)

The garbage collectors start deleting the history data in the following cases:

  • When the data area is more than 90% full, the garbage collectors delete all history data that is older than MinRetentionTime.

  • When the data area is less than 90% full, the garbage collectors delete all history data that is older than MaxRetentionTime.

Can be changed in ONLINE or ADMIN operational state

Concepts of the Database System, How Databases Log Data Changes

MaxServerTasks

MAXSERVERTASKS

Maximum number of server tasks

Changes only apply after a restart of the database.

Concepts of the Database System, Tasks

OfficialNodeName

OFFICIAL_NODE

Only for hot standby systems

Virtual Server Name by which the cluster is addressed from the outside

The system administrator initially assigns the Virtual Server Name to the computer on which the master database of the hot standby system is located.

If the master database fails, then the name transfers to the standby database that takes on the master role.

Changes only apply after a restart of the database.

Glossary, Hot Standby

OmsHeapThreshold

OMS_HEAP_THRESHOLD

For SAP liveCache databases

Specifies how much working memory usage the OMS heap may use (in %)

Changes only apply after a restart of the database

-

OmsSubHeaps

OMS_HEAP_COUNT

For SAP liveCache databases

Specifies whether the OMS heap is divided into segments

If the OMS heap is not divided into segments, the internal heap memory management locks the entire OMS heap whenever a database procedure requests or releases memory.

Changes only apply after a restart of the database

Concepts of the Database System, Working Memory Areas

OmsVersionThreshold

OMS_VERS_THRESHOLD

For SAP liveCache databases

Specifies how much working memory the OMS versions may use (in KB)

Changes only apply after a restart of the database

-

RequestTimeout

REQUEST_TIMEOUT

Maximum time that a database session waits for a locked database object to be released (in s)

If this time is exceed, the system sends a message to the waiting database session. The system then rolls back any changes that were previously executed within the respective transaction.

Changes only apply after a restart of the database.

Concepts of the Database System, Locks

RequestUpdateStatisticsThreshold

-

If the system detects that the size of a table has changed by more than the value specified in this parameter (in percent) since the last statistics update, it marks the table as needing a statistics update.

Can be changed in ONLINE or ADMIN operational state

RowLockManagementStripes

_ROW_RGNS

Number of critical sections into which the row lock list is divided

This division enables a parallel access to the lock list.

Changes only apply after a restart of the database.

Glossary, Critical Section

RowLocksPerTransactionThreshold

-

Maximum percentage of all available locks that a transaction can hold before the system attempts a lock escalation.

Can be changed in ONLINE or ADMIN operational state

Glossary, Lock

SequenceCacheSize

SEQUENCE_CACHE

Size of the sequence cache (in pages)

Changes only apply after a restart of the database.

Glossary, Sequence Cache

SessionTimeout

SESSION_TIMEOUT

Timeout value for database sessions (in s)

Can be changed in ONLINE or ADMIN operational state

Glossary, Database Session

SharedSQLCleanupThreshold

SHAREDSQL_EXPECTEDSTATEMENTCOUNT

Expected number of SQL statements to be stored in the shared SQL cache

Can be changed in ONLINE or ADMIN operational state

-

SharedSQLCommandCacheSize

SHAREDSQL_COMMANDCACHESIZE

Maximum size of the Shared SQL cache (in KB)

Can be changed in ONLINE or ADMIN operational state

-

TableLockManagementStripes

_TAB_RGNS

Number of critical sections into which the table lock list is divided

This division enables a parallel access to the lock list.

Changes only apply after a restart of the database.

Glossary, Critical Section

TraceBufferSize<task_type>Task

TRACE_PAGES_<task_type>

Each user kernel thread has its own trace area in the working memory.

This parameter specifies the maximum number of pages that are available to the specified task type per user kernel thread.

<task_type>:BUP (Backup Task, not yet implemented)|FS (Floating Service Task: either an event task or a Database Analyzer task)|GC (Garbage Collector)|LW (Log Writer)|PG (Pager)|SV (Server Task)|TI (Timer Task)|US (User Task)|UT (Utility Task)

Changes only apply after a restart of the database.

Concepts of the Database System, Tasks

TransactionHistorySize

TRANS_HISTORY_SIZE

Specifies for how many long-running transactions the system stores information

Changes only apply after a restart of the database.

-

TransactionHistoryThreshold

TRANS_THRESHOLD_VALUE

Time (in s) after which a transaction is considered long-running by the system

Can be changed in ONLINE or ADMIN operational state

-

TransactionLockManagementStripes

_TRANS_RGNS

Number of critical sections into which the transaction lock list is divided

This division enables a parallel access to the lock list.

Changes only apply after a restart of the database.

Glossary, Critical Section

UpdateStatSampleAlgorithm

UPDATESTAT_SAMPLE_ALGO

Determines the algorithm that the database system uses to update the SQL optimizer statistics

In SAP systems we recommend the value 1 for this parameter.

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, SQL Optimizer Statistics

UseableCPUs

-

Restricts the number of available CPUs in a running system.

The following constraint applies:1 ≤ UseableCPUs ≤ MaxCPUs

To permanently configure the number of available CPUs, use the general database parameter MaxCPUs.

Can be changed in ONLINE or ADMIN operational state

UseBackupSecurityDescriptor

USE_BACKUP_SECURITY_DESCRIPTOR

Only on Microsoft Windows

Specifies whether the system uses the Microsoft Windows Security Descriptor for backups to data carriers of the file type

Caution Caution

If you want to carry out backups to a Samba share, set this parameter to NO.

End of the caution.

Changes only apply after a restart of the database.

-

UseDataCacheScanOptimization

LRU_FOR_SCAN

Specifies whether the whole data cache is used for scans

Can be changed in ONLINE or ADMIN operational state

-

UseHashedResultset

HASHED_RESULTSET

Specifies whether the SQL optimizer uses temporary hash tables for creating aggregations.

Can be changed in ONLINE or ADMIN operational state

UseLobClustering

CLUSTERED_LOBS

Specifies whether the database system stores LOB values as clusters in the data area

Can be changed in ONLINE or ADMIN operational state

-

UseSharedSQL

SHAREDSQL

Activates the Shared SQL function

Parameter can be activated in ONLINE or ADMIN operational state but not deactivated

Glossary, Shared SQL

UseUnicodeColumnCompression

-

Specifies whether the system stores application data in columns of the type (VAR)CHAR UNICODE in newly created tables as UTF8

Can be changed in ONLINE or ADMIN operational state

Glossary, Data Type

VolumeFormattingMode

FORMATTING_MODE

The database system formats the volumes when the database is created. With this parameter, you specify the formatting type. Only use parallel formatting for data volumes of the FILE type that are located on different hard disks.

Changes only apply after a restart of the database.

Glossary, Volume
Support Database Parameters

Name

(from version 7.7.03)

Old Name

(up to and including version 7.7.02)

Description

Change Restrictions

More Information

CommandBufferSize

_PACKET_SIZE

Size of the packages (shared memory segments) in which SQL statements and data are transferred

A package consists of a request part and a reply part.

The minimum package size is 48 KB.

Changes only apply after a restart of the database.

-

DataIOClusterSize

DATA_IO_BLOCK_COUNT

Block size that the database system uses when writing data pages from the data cache to the data area.

The optimum block size depends on your hardware and software.

Changes only apply after a restart of the database.

-

DeadlockDumpFileName

DEADLOCK_DUMP_FILENAME

Determines whether the system writes a dump file when it encounters an SQL deadlock situation

If you do not specify a file name, the system does not write a dump file.

If you specify a file name, the system writes a dump file with that name in the database run directory.

Note that the dump file can only be analyzed by development support.

Can be changed in ONLINE or ADMIN operational state

EnableMultipleServerTaskUKT

ALLOW_MULTIPLE_SERVERTASK_UKTS

Specifies whether the database system distributes the server tasks to the available user kernel threads. Otherwise they all run in the same user kernel thread.

Changes only apply after a restart of the database.

-

EnableRemoveUndoOnTransactionEnd

-

YES: All undo files that are not needed for the history or for the garbage collectors are removed by the transactions themselves. This means that nearly all OLTP undo files will be removed at the end of a transaction.

NO: The undo files are removed by the garbage collectors.

Can be changed in ONLINE and ADMIN operational state

Concepts of the Database System, Working Memory Areas

EnableSymbolDemangling

SYMBOL_DEMANGLING

Specifies whether the database system carries out C/C++ demangling

Can be changed in ONLINE and ADMIN operational state

-

EnableVariableInput

EnableVariableOutput

USEVARIABLEINPUT

These parameters determine how the system transfers the content of variables between client and kernel.

The system either transfers the actual length of the content or the maximum possible length of the content. In the latter case, the system fills up the content up to the maximum length (depending on the data type).

Changes only apply after a restart of the database

-

EventFileName

_EVENTFILE

Name of the file in which the database system logs events

Changes only apply after a restart of the database.

Log Files

EventFileSize

_EVENTSIZE

Size of the file in which the database system logs events (in KB)

Changes only apply after a restart of the database.

-

FloatingServiceTasks

-

Maximal number of tasks in the floating service task pool

The floating service task pool contains tasks that the system can use for events and for Database Analyzer

You must configure at least 2 event tasks and 1 Database Analyzer task.

See also PreservedEventTasks and PreservedDBAnalyzerTasks

Changes only apply after a restart of the database.

Concepts of the Database Systems, Tasks

InitialAllocatorSize

INIT_ALLOCATORSIZE

Initial size of the working memory that is reserved at the start of a database session

Changes only apply after a restart of the database.

-

KernelDumpFileName

_KERNELDUMPFILE

Name and location of the dump file that is written by the kernel when the database crashes

The system writes the contents of the data cache and the converter to this file. Caution: This file may become very large. You can estimate the size of this file in the following way: CacheMemorySize + 10%.

Changes only apply after a restart of the database.

Parameter DIAG_HIST_NUM

KernelTraceFile

_KERNELTRACEFILE

Name and location of th file to which the kernel writes the database trace messages

The kernel only writes database trace messages if you previously activated the database trace.

Changes only apply after a restart of the database.

Concepts of the Database System, Load Balancing Between User Kernel Threads

LoadBalancingWorkloadDeviation

LOAD_BALANCING_EQ

For internal load balancing

Specifies which time delays the system should regard as equal when comparing waiting tasks (as a percentage)

Can be changed in ONLINE and ADMIN operational state

-

LoadBalancingWorkloadThreshold

LOAD_BALANCING_DIF

For internal load balancing

If the system considers moving a task from one user kernel thread to another, this parameter specifies the amount of time this task has to have waited longer than the longest waiting task in the target user kernel thread (as a percentage).

Can be changed in ONLINE and ADMIN operational state

-

LogIOClusterSize

LOG_IO_BLOCK_COUNT

Block size that the database system uses when writing log pages from the log queues to the log area

The optimum block size depends on your hardware and software.

Changes only apply after a restart of the database.

-

MaxPagerTasks

MAXPAGER

Maximum number of pagers

The system calculates this parameter from the MAXDATAVOLUMES parameter and other parameters.

Not changeable

You can override this parameter using the XP_MAXPAGER parameter.

-

MaxSavepointTimeInterval

_RESTART_TIME

Minimum time between two savepoints (in s)

This corresponds to the time that is required for a restart after a system crash.

Note that the database system always writes a savepoint in the following cases:

  • After you have created a new index

  • When the number of pages released by a savepoint is larger than the number of free blocks in the data volumes

Changes only apply after a restart of the database.

-

MaxServerTaskStackSize

MAX_SERVERTASK_STACK

Maximum size of the stack that is used by the server tasks

Changes only apply after a restart of the database.

Server Task

MaxSpecialTaskStackSize

MAX_SPECIALTASK_STACK

Maximum size of the stack that is used by the special tasks (all tasks except user tasks and server tasks)

Changes only apply after a restart of the database.

-

MaxTaskStackSize

_MAXTASK_STACK

Size of the stack that is used by the user tasks

Changes only apply after a restart of the database.

User Task

MaxTempFilesPerIndexCreation

_IDXFILE_LIST_SIZE

Number of temporary result files when the system is creating an index using multiple server tasks (parallel indexing)

The database system indexes large tables using multiple server tasks. These server tasks write their results to temporary files. When the number of these files reaches the value of this parameter, the database system has to merge the files before it can generate the actual index. This results in a decline in performance.

Can be changed in ONLINE and ADMIN operational state

-

OMSStreamTimeout

OMS_STREAM_TIMEOUT

Maximum wait time for all database sessions that may elapse until the reply to an OMS stream request from a client (in s)

Can be changed in ONLINE and ADMIN operational state

-

PreservedDBAnalyzerTasks

-

Minimum number of Database Analyzer tasks in the floating service task pool

See also FloatingServiceTasks

Changes only apply after a restart of the database.

Database Analyzer documentation

PreservedEventTasks

_MAXEVENTTASKS

Minimum number of event tasks in the floating service task pool

See also FloatingServiceTasks

The database system uses event tasks both for Event Dispatcher commands and for the DBM commands event_wait,event_receive, event_available, auto_extend and auto_update_statistics.

Changes only apply after a restart of the database.

Glossary, Event

QueryAnalysisMode

-

Specifies which internal mechanism is used for semantic analysis of queries.

To enable extended semantic analysis and as a prerequisite for the QueryRewrite function, choose EXTENDED.

Can be changed in ONLINE and ADMIN operational state

Special database parameter EnableQueryRewrite

ReadAheadLobThreshold

_READAHEAD_BLOBS

If a LOB value is too large to be transferred to the client in a single request package, the database system splits it into several request packages.

To increase performance, server tasks can import further parts of the LOB value while the first request package is being sent. This parameter specifies the minimum number of pages for a LOB value to be imported in advance by additional server tasks.

Can be changed in ONLINE and ADMIN operational state

-

RTEDumpFileName

_RTEDUMPFILE

Name of the file to which the kernel writes information about the runtime environment if the system crashes

Changes only apply after a restart of the database.

-

ShowMaxStackUsage

SHOW_MAX_STACK_USE

Specifies whether the system logs the maximum stack usage of each task in the kernel log

Only set this parameter to YES for diagnosis purposes as it compromises performance.

Changes only apply after a restart of the database.

-

TaskCluster01 to TaskCluster03

_TASKCLUSTER_01 to _03

These parameters determine how the database system distributes user tasks to the threads. Only change these parameters after consulting support.

Changes only apply after a restart of the database.

-

TaskSpecificCatalogCacheMinSize

CAT_CACHE_MINSIZE

Minimum size of the task-specific catalog cache (in bytes)

Changes only apply after a restart of the database.

Concepts of the Database System, Working Memory Areas

UpdateStatParallelServerTask

UPDATESTAT_PARALLEL_SERVERS

Specifies how many parallel server tasks the database system uses for updating the SQL optimizer statistics

Can be changed in ONLINE and ADMIN operational state

-

UseAsynchronousIO

_USE_ASYNC_IO

Specifies whether operating system functions or special I/O threads are used for asynchronous I/O operations

Changes only apply after a restart of the database.

-

UseColumnCompression

COLUMNCOMPRESSION

Only for columns that are not primary key columns

Specifies whether the system can store the column values in variable length or not

Default value: YES (columns have variable length, so the values can be compressed if necessary)

Can be changed in ONLINE and ADMIN operational state

-

UseExtendedOracleSQLMode

_SERVERDB_FOR_SAP

Specifies whether the database is being used in an SAP system

Can be changed in ONLINE and ADMIN operational state

-

UseFilesystemCacheForBackup

-

Specifies whether the database system uses the operating system's file system cache for I/O operations (O_DIRECT flag) when opening volumes or data carriers for backup or restore

YES: The database system does not use the O_DIRECT flag

NO: The database system uses the O_DIRECT flag (if this flag is supported by the file system; note that this flag is ignored for Linux kernels < 2.4.18).

Changes only apply after a restart of the database.

-

UseFilesystemCacheForVolume

(USE_OPEN_DIRECT)

Caution Caution

This parameter replaces the USE_OPEN_DIRECT parameter, but with a different logic. For backward compatibility, DeprecatedParameter29 has been introduced as a direct replacement for USE_OPEN_DIRECT, see Obsolete Database Parameters.

After migrating from an earlier database version and if USE_OPEN_DIRECT was set explicitly for example using a script, the system changes UseFilesystemCacheForVolume to the opposite value. Note though that after you have changed UseFilesystemCacheForVolume for the first time, it does not depend on USE_OPEN_DIRECT any longer.

End of the caution.

Specifies whether the database system uses the operating system's file system cache for I/O operations O_DIRECT flag) when it is opening volumes for normal database operation

YES: The database system does not use the O_DIRECT flag

NO: The database system uses the O_DIRECT flag (if this flag is supported by the file system; note that this flag is ignored for Linux kernels < 2.4.18).

Changes only apply after a restart of the database.

-

UseStrategyCache

OPTIM_CACHE

Specifies whether the database system determines the search strategy only once or every time it executes a parsed SQL statement

For prepared statements with parameters, it may be sufficient to determine the search strategy only once.

Can be changed in ONLINE and ADMIN operational state

-

UseSystemPageCache

USE_SYSTEM_PAGE_CACHE

Specifies whether the database uses the system page cache for buffering memory pages that are no longer required

Changes only apply after a restart of the database.

-

UseSystemTrigger

ENABLE_SYSTEM_TRIGGERS

Specifies whether system triggers are called when the database is restarted

Changes only apply after a restart of the database.

-

UseVolumeLock

SET_VOLUME_LOCK

Specifies whether the database system sets a lock when a volume is added, which prevents the same volume from being added again later

In the following cases, it may make sense to set this parameter to NO:

  • For NFS-mounted volumes

  • In hot standby systems

Changes only apply after a restart of the database.

-

More Information

Checking the Database Configuration


Database System - SAP Documentation

Background documentation Database System

The database system is the entire set of software that you use to create and manage databases, and with which you can process data in these databases.

More Information

Concepts of the Database System

  • What is an SAP MaxDB Database?

  • Database Tools

  • Interfaces


Database Function - SAP Documentation

Background documentation Database Function

A database function is a user-defined function. To create a database function, you define a database procedure with only one output parameter. You call a database function in the same way that you would call a predefined function.

More Information

SQL Reference Manual

  • Name of a Database Function

  • CREATE FUNCTION Statement (create_function_statement)

  • Database Function Call (dbfunction_call)

SQL Tutorial, Database Functions

Database Studio,

  • Creating Database Functions

  • Using Database Functions

  • Deleting Database Functions


Database Object - SAP Documentation

Background documentation Database Object

Database objects are the logical units with which the database system works. The database stores the metadata of database objects in the database catalog.

To create and manage database objects, you use SQL statements.

Database Objects

Tables

View tables

Synonyms

Indexes

Database users

Schemas

Triggers

Database procedures

Database functions

More Information

SQL Reference Manual, Data Definition, Authorization


Data Record - SAP Documentation

Background documentation Data Record

A data record corresponds to a row in a base table in the database.

More Information

Database Studio, Changing Data in the Database


DBM Server - SAP Documentation

Background documentation DBM Server

The DBM Server establishes the connection between Database Studio, the client part of the Database Manager (Database Manager CLI, SAP DBMRFC) and the database.

This graphic is explained in the accompanying text.

Database Studio and DBM Server

This graphic is explained in the accompanying text.

Database Manager

More Information

Concepts of the Database System, Architecture of the Database Tools


Database System Administrator - SAP Documentation

Background documentation Database System Administrator

The database system administrator (also called SYSDBA user) is the first database user. This user is created when a database is created. The default name for the database system administrator is DBADMIN.

This database system administrator has the most comprehensive rights of all database users. The database system administrator is a database administrator (database user of class DBA) and a DBM operator with all DBM server authorizations.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

More Information

  • Database Administration, Database System Administrator, DBM Operators, Conventions for User Names and Passwords

  • Database Studio, DBM Operators: Creating, Editing and Deleting

  • Database Manager CLI, Managing DBM Operators

  • SAP MaxDB Security Guide, Changing the Passwords of Standard Users


Data Type - SAP Documentation

Background documentation Data Type

The data type specifies which values a table column is allowed to contain.

SAP MaxDB Data Types
Data Type | Description in SQL Reference Manual
BOOLEAN | BOOLEAN
CHAR[ACTER] [ASCII | BYTE | UNICODE] | CHAR[ACTER]
DATE | DATE (date value)
FIXED | FIXED
FLOAT | FLOAT
INT[EGER] | INT[EGER]
CLOB [ASCII] CLOB UNICODE BLOB | LOB Column In earlier database versions, this data type was known as LONG.
SMALLINT | SMALLINT
TIME | TIME (time value)
TIMESTAMP | TIMESTAMP (time stamp value)
VARCHAR [ASCII | BYTE | UNICODE] | VARCHAR

More Information

Database Studio, Creating Columns

SQL Reference Manual, Data Type (data_type)

Loader, Data Types


C - SAP Documentation

Background documentation C


Data Area - SAP Documentation

Background documentation Data Area

All data volumes in a database together form the data area. The data area contains, among other things, the application data, the database catalog and the undo log entries of the database.

More Information

  • Concepts of the Database System, Data Area, Volumes (Permanent Storage)

  • Database Studio,

    • Displaying Information About the Data Area

    • Adding Data Volumes

    • Activating or Deactivating Automatic Extension of the Data Area

  • Database Manager CLI, show

  • Database Administration in CCMS, Monitoring the Data Area, Data Area


BLOB - SAP Documentation

Background documentation BLOB

See LOB


User Group - SAP Documentation

Background documentation User Group

SAP MaxDB uses special operating system user groups. Members of these user groups have comprehensive authorization to access database resources at the operating system level.

More Information

Database Administration, Special Operating System Users and Groups


Authorization - SAP Documentation

Background documentation Authorization

There are two types of user authorizations in the SAP MaxDB database system:

  • Authorizations of database users for accessing database objects using SQL statements

  • Authorizations of DBM operators for carrying out administration tasks such as backups

Authorizations for Database Users

Each database user belongs to a database user class. The user class primarily determines which actions the database user may carry out in the database using SQL statements.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables
Authorizations for DBM Operators

DBM operators have a set of DBM server authorizations, which determine the administration tasks they can carry out.

DBM Server Permissions
Permission | Required for Logon to a Database with Database Studio | Name in Database Manager CLI
Accessing an SQL session | Yes | AccessSQL
Access to Utility sessions | - | AccessUtility
Executing backups | - | Backup
Accessing database files (reading only) | Yes | DBFileRead
Displaying status information | Yes | DBInfoRead
Starting the database | - | DBStart
Stopping the database | - | DBStop
Managing the event dispatcher | Yes | EvtDispMgm
Using the Loader program | - | ExecLoad
Installation management | - | InstallMgm
Loading the system tables | - | LoadSysTab
Accessing database parameters (reading and writing; only those commands for changing parameters may be executed whose changes are checked against the default parameter file cserv.pcf) | - | ParamCheckWrite
Accessing database parameters (reading and writing; all commands can be executed, even those for directly changing the parameter file without the changes being checked by the system) | - | ParamFull
Accessing database parameters (reading only) | Yes | ParamRead
Restoring databases | - | Recovery
Managing the scheduler | - | SchedulerMgm
Scheduling DBM commands | - | Scheduling
Managing the shared memory | - | SharedMemoryAdmin
Executing operating system commands | - | SystemCmd
Managing DBM operators | - | UserMgm

More Information

Database Administration, Managing Users

Database Administration in CCMS, User Data

Database Studio,

  • Creating Database Users

  • Changing the Properties of Database Users

  • DBM Operators: Creating, Editing and Deleting

SQL Reference Manual, CREATE USER statement


Operating System User - SAP Documentation

Background documentation Operating System User

To protect database resources from unauthorized access with operating system commands, special operating system users and user groups are available for SAP MaxDB.

More Information

Database Administration, Special Operating System Users and Groups


Before Image - SAP Documentation

Background documentation Before Image

See Undo Log Entry


User-Defined Function - SAP Documentation

Background documentation User-Defined Function

See Database Function


B - SAP Documentation

Background documentation B


Example - SAP Documentation

Background documentation Example

To illustrate commands and actions, the documentation uses the DEMODB demo database with demo data which is contained in the HOTEL schema.

Example

dbmcli -d DEMODB -u DBADMIN,SECRET db_online

loadercli -d DEMODB -u MONA,RED -s HOTEL

More Information

Documentation Variable

Concepts of the Database System, Demo Database


User Key - SAP Documentation

Background documentation User Key

You can store your logon data in user keys. When you log on to the database, you only need to enter your user key.

Use the XUSER database tool to create and manage user keys.

More Information

XUSER, Creating and Changing XUSER Entries


Leaf Page - SAP Documentation

Background documentation Leaf Page

A leaf page is a page on the lowest level of a B* tree. Leaf pages contain the data records.

More Information

Concepts of the Database System, Logical Access Structures


B* Tree - SAP Documentation

Background documentation B* Tree

A B* tree is an internal database structure which the database system uses to access application data.

More Information

Concepts of the Database System, Logical Access Structures


Backint for SAP MaxDB - SAP Documentation

Background documentation Backint for SAP MaxDB

Backint for SAP MaxDB is an interface that enables you to back up and restore SAP MaxDB databases using third-party backup tools.

More Information

http://maxdb.sap.com/archive/


Operating Mode - SAP Documentation

Background documentation Operating Mode

You can call the following command line programs in different operating modes:

  • Database Manager CLI

  • SQLCLI

Operating Modes
Name | Description
Command Mode | When calling the program, you specify opions and then exactly one command. The system executes this command and then ends the program.
Session Mode | First you just call the program, then you enter and execute commands in succession without the program being ended. To exit session mode, you end the program.
Script Mode | When calling the program, you specify the name of a script file that contains the commands to be executed. The program executes the script in the background.

Loader also has several operating modes. They are, however, different from the operating modes described above.

More Information

  • Database Manager CLI, Calling Database Manager CLI

  • SQLCLI, Executing Commands

  • Loader, Calling the Loader


Operational State - SAP Documentation

Background documentation Operational State

The following table lists the operational states that databases can be in. Note that during the transition from one operational state to another, databases may temporarily be in intermediate states not listed here.

Database Operational States
Icon | Operational State | Description
 | ONLINE | The database is running. Database users can log on and execute SQL statements. The database system administrator and DBM operators can perform administrative tasks.
- | STANDBY | For standby databases in hot standby systems only Note that you cannot connect to a standby database. It is in a constant restart state.
 | ADMIN | The database is only available for administration tasks.
 | OFFLINE | The database is not running.

To monitor or change the operational state of databases, use Database Studio or DBA Cockpit (in SAP systems only).

More Information

  • Database Studio, Starting or Stopping Databases

  • Database Manager CLI, Controlling Database Instances

  • Database Administration in CCMS: Properties


User - SAP Documentation

Background documentation User

The database system differentiates between the following types of user:

  • Database System Administrator

  • Database Users

  • DBM Operators

More Information

Database Administration, Managing Users

Database Administration in CCMS, User Data


Database ID - SAP Documentation

Background documentation Database ID

The database ID uniquely identifies the data area of a database. The database system creates the database ID during the creation of a new database according to the following pattern:

<computer_name>:<database_name>_<date>_<time>

Example Example

Database ID of the data area of the DEMODB database on the PARMA computer, which was created on 01/30/2006 at 11:26:33.

PARMA:DEMODB_20060130_112633

End of the example.

When restoring a database, the system uses the database ID to check whether the backups really belong to this database.

The database ID of the data area changes in the following situations:

  • After initializing the database and then restoring it from a data backup. The data area of the database inherits the database ID that was stored in the backup.

    Note that after importing a backup into another database (for example when creating a database copy), the database ID contains the name of the backed-up database. Only after performing the first backup of the restored database is a new database ID assigned, which contains the correct database name and the current time stamp.

  • After carrying out a data backup in a database with an interrupted backup history (for example after the restart of the database up to a certain time, or after the overwrite mode for the log area was switched on).

    The data area of the database gets a new database ID with the current time stamp.

The database system stores the database ID in the following places:

  • The restart record in the data area (identifies the data area of the database)

  • The information page of the log area (identifies the log area of the database)

  • The information page of each backup (identifies the backup)

In the following cases the database ID of data area and log area do not match:

  • After importing a database backup from another database without initializing the database (and thereby emptying the log area).

  • In hot standby systems (multiple databases use the same log area)

More Information

Database Manager CLI

  • db_restartinfo

  • medium_label


Environment Variable - SAP Documentation

Background documentation Environment Variable

Environment variables contain information on a user's software environment.

Environment Variables Used by SAP MaxDB
Name | Definition | Description | Restrictions
PATH | On Windows: <installation_path>\bin\;<installation_path>\pgm;<global_program_path>\bin:<global_program_path>\pgm;%PATH% On Unix: <installation_path>\bin:<global_program_path>/bin:$PATH * See Glossary, Directory | Path to the executable SAP MaxDB files | -
LD_LIBRARY_PATH | <installation_path>\lib or <installation_path>\lib\lib64 | Used by the SAP MaxDB ODBC driver and SQLDBC interface | On Unix and Linux only
SQLOPT | - | Can be set by a database application to define options for connecting to the database | -

* PATH settings must be defined in the user environment and not in the system environment any more. If system PATH settings for SAP MaxDB exist after an installation or upgrade to a version ≥ 7.8, delete them.


OMS Heap - SAP Documentation

Background documentation OMS Heap

In addition to the data cache and the converter, SAP liveCache databases also use a private OMS cache in the working memory during operation: the OMS heap. The OMS heap contains local copies of the OMS data and local application data.

Note Note

The OMS heap is only used by SAP liveCache databases.

End of the note.

More Information

  • Database Administration

    • Working Memory Areas

    • General Database Parameters, Special Database Parameters

  • Database Administration in CCMS

    • Heap Usage

    • Monitoring the Main Memory Areas

  • SAP Note 1128916 (MaxDB/liveCache Heap Management)


Master Database - SAP Documentation

Background documentation Master Database

In a Hot Standby System

The master database is the database in the cluster that is in the ONLINE operational state and with which the users are working. If the master database fails, one of the standby databases in the cluster automatically becomes the new master database.

More Information

Database Administration, Hot Standby

Database Manager CLI, hss_enable


OMS Version - SAP Documentation

Background documentation OMS Version

An OMS version is based on a consistent view and represents a consistent state of the SAP liveCache database, valid as of the time it was last restarted. An OMS version is generated by the application, and can extend across multiple transactions. It defines a data space in which competing applications can carry out transactions that change objects. An OMS version can be edited only within a database session at a certain time.

An OMS version can be activated at any time in the Object Management System (OMS). All subsequent OMS operations refer to the activated OMS version. In particular, you can make changes that are visible only within the OMS view.

The data of each OMS version is copied to the OMS heap when it is read. The application decides whether the changes made to the objects within the OMS version are copied to the current state of the application. No changes to the data of an OMS version are copied to the data cache in any form without being requested by the application. This means that any data that the application does not copy to the current state is lost when an OMS version is deleted.

The previous OMS versions no longer exist after a restart. They are implicitly deleted.

When you close an OMS version (end a database session), the data can be swapped from the OMS heap to the data cache if memory bottlenecks occur.

Note Note

OMS versions are only used by SAP liveCache databases.

End of the note.

More Information

Consistent View

Database Administration in CCMS, Monitoring OMS Versions


Error Handling - SAP Documentation

Background documentation Error Handling

When installing or updating your database software, when upgrading databases and their software, or when migrating the catalog data to Unicode, an error may occur, which causes the program to terminate. In the event of such an error, you can use the available programs, your data backups, and the software of the source version to return temporarily to the original version. This gives you time for troubleshooting, and keeps downtime as short as possible.

Caution Caution

Under no circumstances delete installed files from the file system manually. Even if installations crash, only use the program SDBUNINST for uninstalling software. Otherwise, unexpected problems may occur in your next installation or upgrade.

End of the caution.

Correcting Errors in the Execution of the SDBINST Program

Correcting Errors in the Execution of the SDBUPD Program

Error While Migrating the Catalog to Unicode


Creating the Demo Database DEMODB - SAP Documentation

Procedure documentation Creating the Demo Database DEMODB

A demo database was developed for demonstration purposes. This demo database with the name DEMODB is the basis for the examples in the SAP MaxDB documentation.

If you want to use the demo database, you must first create it and fill it with demo data. Use Installation Manager to do this (see also: Using Installation Manager).

Note Note

The values of individual demo database parameters have been defined especially for testing purposes. Therefore, do not use this demo database in a production system.

End of the note.

Procedure

Go to the directory where you downloaded the database software. Call the program SDBSETUP.exe and follow the instructions displayed by Installation Manager:

  1. In step 1, choose the Installation option.

  2. In step 2, select the Create a New Database option.

  3. In step 3, choose the Desktop PC / Laptop database template.

  4. in step 4, configure the demo database and choose whether you want to load the demo data.

    • Enter DEMODB as Database name.

    • If you want to load the demo data, leave the Load Tutorial Data option selected.

      You need the demo data for working with the Loader Tutorial, for example.

    • If you do not want to load the demo data, remove the selection of Load Tutorial Data. In this way, you maintain the possibility to enter the demo data manually into the database using SQL statements, as described in the SQL Tutorial.

    • Enter DBADMIN as User name and SECRET as User password. Enter the password again in the Confirm password field.

  5. Confirm all default values of Installation Manager in succession to create the database.

Result

You have created the demo database with the following data:

  • Name of the database: DEMODB

  • Name of the database manager operator: DBM

  • Name of the database system administrator: DBADMIN/SECRET

  • Name/password of a database user: MONA/RED

  • Name of the demo schema: HOTEL

This enables you to reproduce step by step the examples shown in the SAP MaxDB documentation and to obtain similar results.

For more information on the demo data, see Objects in the Schema HOTEL.

More Information

Concepts of the Database System, Demo Database

Database Administration, Creating Databases

SQL Tutorial

Loader Tutorial


Errors in the Execution of the SDBINST Program - SAP Documentation

Background documentation Errors in the Execution of the SDBINST Program

If an error occurs when you execute the SDBINST program, the program terminates with a message describing the cause of the error.

Frequent Causes of Errors:

  • Files of the software you want to update are still being used.

    • Administration sessions are still running, which means that Database Manager is still active.

    • Applications that use the runtime or scripting interfaces of the database system are still running.

  • There is not enough disk space for the new software.

  • You have attempted to update a 64 bit database kernel with software for a 32 bit kernel. This is not possible.

  • You have ignored the dependencies between the software components while updating the software. These dependencies concern the versions of the components or the order in which they need to be installed.

Activities

Remove the cause of the error and execute the program again.


Downgrading Dependent Software, No Databases Exist Yet - SAP Documentation

Procedure documentation Downgrading Dependent Software, No Databases Exist Yet

No databases exist that refer to the higher software version.

Procedure

Either uninstall the entire database software using the SDBUNINST program or uninstall only those software components that you want to install in a lower version. Take into account the dependencies between the components.

More Information

Uninstalling in the Command Line


Details - SAP Documentation

Background documentation Details

Software Components

Logging

Displaying Information About Installed Software

Overview of Options for the SDBINST program

Overview of Options for the SDBUNINST program

Overview of Options for the SDBUPD program

More Information

Glossary, Directory


Log Segment - SAP Documentation

Background documentation Log Segment

The log area of a database is subdivided into logical log segments. You configure the size of the log segments using the AutoLogBackupSize general database parameter. If automatic log backup is active, the database system automatically performs a log backup as soon as a log segment is full.

More Information

Database Administration,

  • Log Area

  • Backing Up Log Entries

Database Studio,

  • Changing Database Parameters

  • Activating or Deactivating Automatic Log Backup

Database Administration in CCMS, Activating Automatic Log Backups


Configuration File - SAP Documentation

Background documentation Configuration File

Database systems and database tools have various configuration files that determine basic properties.

More Information

Database Administration, Configuration Files


O - SAP Documentation

Background documentation O


Mailing List - SAP Documentation

Background documentation Mailing List

See Forum


OLTP (MaxDB) - SAP Documentation

Background documentation OLTP (MaxDB)

SAP MaxDB is a relational database system that was developed for Online Transaction Processing (OLTP).

See MaxDB


Log Queue - SAP Documentation

Background documentation Log Queue

Log queues are the working memory areas that the system uses for redo log entries. At a later time, the system writes the redo log entries from the log queues to the log area (permanent storage).

You can configure the number of log queues using the special database parameter LogQueues and the size of the log queues using LogQueueSize.

More Information

Concepts of the Database System, Working Memory Areas

Database Administration, Special Database Parameters

Database Studio, Changing Database Parameters


Log Page - SAP Documentation

Background documentation Log Page

Log pages are the units the database system uses in the log queue (working memory) and the log area (permanent storage). The size of a log page is 8 KB.

More Information

Concepts of the Database System, How Databases Log Data Changes


Log Mode - SAP Documentation

Background documentation Log Mode

Log mode is a log setting. You can use the log mode to configure whether the database system mirrors the log area.

We recommend that you use this setting only if hardware-based mirroring is not possible.

More Information

  • Concepts of the Database System, How Databases Log Data Changes

  • Database Studio, Changing Log Settings

  • Database Manager CLI, param_addvolume

  • Database Administration in CCMS, System Settings, Log Area


Optimizer - SAP Documentation

Background documentation Optimizer

See SQL Optimizer


KNLDIAG - SAP Documentation

Background documentation KNLDIAG

See Kernel Log File


Log Volume - SAP Documentation

Background documentation Log Volume

Log volumes are the permanent storage in which the database system stores redo log entries. Together, all log volumes form the log area.

More Information

  • Concepts of the Database System, Volumes (Permanent Storage), Log Area

  • Database Studio, Adding Log Volumes

  • Database Manager CLI, db_addvolume

  • Database Administration in CCMS, Log Area, Volumes


Loader - SAP Documentation

Background documentation Loader

SAP MaxDB Loader is a database tool for exporting and importing (unloading and loading) data.

You cannot use data exported with Loader to restore a database because it may represent an inconsistent database state. Exported data is, therefore, not a substitute for data backups.

Note Note

From SAP MaxDB version 7.7 with the database tool Database Studio, a GUI is provided for Loader.

More information:

Database Studio,

  • Exporting Data and/or Information from the Database Catalog

  • Importing Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

End of the note.

More Information

Loader documentation

Concepts of the Database System, Database Tools


SAP MaxDB - SAP Documentation

Background documentation SAP MaxDB

SAP® MaxDB™ is SAP’s own database specifically designed to provide lower total cost of ownership (TCO) for SAP applications. SAP solutions use SAP MaxDB to store both application logic and business data. The database is a central component of any SAP solution installation.

SAP MaxDB is a robust and reliable technology, optimized to run all major SAP solutions:

  • SAP Business Suite

  • SAP Business All-in-One

  • SAP Business ByDesign

  • SAP NetWeaver

SAP MaxDB is based on database industry standards and can be used seamlessly for non-SAP applications as well.

More Information

SAP MaxDB website at https://www.sdn.sap.com/irj/sdn/maxdb


Migration - SAP Documentation

Background documentation Migration

As of version 7.7, the catalog data of the database is stored in Unicode. You can therefore upgrade to version 7.7 only if the catalog data of the database to be updated is stored in Unicode. If you want to upgrade a database from version 7.5 or 7.6 to version 7.7 and the database catalog was stored in ASCII, you must migrate the database catalog to Unicode before the upgrade.

For more information, see Upgrade

More Information

SAP Note 1007129 (FAQ: DB migration with MaxDB as target)


Logging - SAP Documentation

Background documentation Logging

To keep track of data changes in the database, the system writes log entries.

More Information

  • Concepts of the Database System, How Databases Log Data Changes

  • Database Administration, Backing Up Log Entries

  • Database Studio, Backing Up Log Entries

  • Database Administration in CCMS, Scheduling Log Backups


Loading - SAP Documentation

Background documentation Loading

See Import


Log Entry - SAP Documentation

Background documentation Log Entry

Using log entries, the database system logs all transactions that change data in the database. There are undo log entries (before images) and redo log entries (after images).

The database system needs the log entries to be able to undo SQL statements or to restore after a system failure (transaction consistency).

Types of Log Entries

Name

Alternative Name

Use

Undo Log Entries

Before Images

  • Enable the rollback of transactions that are not yet complete

  • Enable consistent views (only for SAP liveCache databases)

Redo Log Entries

After Images

  • Enable repetition of completed transactions

More Information

Concepts of the Database System, How Databases Log Data Changes

Database Administration, Backing up Log Entries


Naming Conventions - SAP Documentation

Background documentation Naming Conventions

Some restrictions apply to choosing names in the database system.

Database Administration,

  • Conventions for Database Names

  • Conventions for User Names and Passwords

More Information

Documentation Variable

Keyword

Password


Network - SAP Documentation

Background documentation Network

SAP MaxDB databases, tools, and interfaces can be installed on different computers in a network.

More Information

Concepts of the Database System,

  • Network Communication

  • Technical System Landscape


Configuration - SAP Documentation

Background documentation Configuration

When you create a new database, you define its properties (configuration). Later you can customize the configuration.

More Information

Database Administration,

  • Changing Database Properties

  • Checking the Database Configuration


Command Monitor - SAP Documentation

Background documentation Command Monitor

You can use the command monitor to analyze long-running SQL statements and identify bottlenecks.

  • The command monitor is part of the CCMS in SAP systems.

  • SQL performance analysis is part of the Database Studio.

More Information

Database Administration in CCMS, Command Monitor

Database Studio,

  • Configuring and Starting SQL Performance Monitoring

  • Analyzing SQL Performance Bottlenecks


Log Backup - SAP Documentation

Background documentation Log Backup

When you execute a log backup the system backs up all redo log entries that have been written since the last log backup from the log area to a data carrier. Once the redo log entries are backed up, the system can overwrite them again in the log area.

To automatically back up log entries, activate automatic log backup.

More Information

  • Database Administration, Backing Up Log Entries

  • Database Studio, Backing up Log Entries

  • Database Manager CLI, Backing Up and Restoring Database Instances

  • Database Administration in CCMS, Scheduling Log Backups


Command Mode - SAP Documentation

Background documentation Command Mode

Command mode is an operating mode in command line programs.

See Operating Mode


Control Structure - SAP Documentation

Background documentation Control Structure

You can use various control structures in database procedures, database functions and database triggers, for example loops or branches.

More Information

SQL Reference Manual, Routine (routine)

SQL Tutorial, Database Procedures, Database Functions, Database Triggers


Log Sequence Number - SAP Documentation

Background documentation Log Sequence Number

See Log Page


Costs - SAP Documentation

Background documentation Costs

SQL statement costs are the resources for I/O operations that the system requires in order to aggregate and read the results of the SQL statement.

More Information

SQL Optimizer, How the SQL Optimizer Estimates the Costs of SQL Statements


Merge - SAP Documentation

Background documentation Merge

When the system performs a merge, it merges the primary key lists of an index to one single primary key list, which it can then read in sorted order.

More Information

SQL Optimizer documentation


LOB - SAP Documentation

Background documentation LOB

Data type used to define an alphanumeric column of any length. The following LOB data types are available for SAP MaxDB:

  • BLOB (Binary Large Object)

  • CLOB (Character Large Object)

More Information

  • SQL Reference Manual, LOB Column

  • Loader, Exporting and Importing LOB Values

  • Concepts of the Database System, B* Trees for Tables with LOB Columns


K - SAP Documentation

Background documentation K


Optimistic Lock - SAP Documentation

Background documentation Optimistic Lock

For a database object for which you have set an optimistic lock, the database system keeps track of all changes that are made to the object.

More Information

Concepts of the Database System, Locks

Database Administration,

  • Configuring Locks for Database Objects

  • Analyzing Database Performance


Communication Server - SAP Documentation

Background documentation Communication Server

See X Server


Log Area - SAP Documentation

Background documentation Log Area

All log volumes in a database together form the log area. The database system writes the redo log entries of transactions to the log area.

More Information

Concepts of the Database System,

  • Log Area

  • Volumes (Permanent Storage)

  • How Databases Log Data Changes

Database Studio,

  • Displaying Information About the Log Area

  • Adding Log Volumes

  • Backing Up Log Entries

  • Activating or Deactivating Automatic Log Backup

Database Administration in CCMS, Monitoring the Log Area, Log Area


N - SAP Documentation

Background documentation N


Kernel - SAP Documentation

Background documentation Kernel

The database kernel is the central component of the database system. The kernel manages access to the permanently stored data in a database and processes the SQL statements. In SAP liveCache databases, it also processes the OMS procedures.

More Information

Concepts of the Database System

  • Services

  • Threads

  • Architecture of the Database Tools


L - SAP Documentation

Background documentation L


Log Settings - SAP Documentation

Background documentation Log Settings

You can use log settings to configure the most important properties of transaction logging.

Log Settings

Name

Description

Log mode

Specifies whether the database system supports software-based mirroring of the log volumes.

  • The log volumes are not mirrored

    Default value

  • The log volumes are mirrored (software-based)

    Only use this setting if hardware-based mirroring, for example using a RAID system, is not possible. Software-based mirroring reduces the performance of your database system..

    When software-based mirroring is activated, the database system writes redo log entries to two log areas in parallel (primary and secondary log area). The database system can only overwrite the log areas with new log entries after the log entries in the primary log area have been backed up.

Overwrite mode for the log area

Specifies whether the database system can overwrite redo log entries in the log area even if they have not been backed up.

  • OFF

    The database system can only overwrite the log area once the corresponding redo log entries have been backed up. We therefore recommend that you activate the automatic log backup function or regularly carry out interactive log backups.

  • ON

    The database system cyclically overwrites the log area without first backing up the redo log entries. This results in gaps in the backup history. This, in turn, means that you can only restore your database up to the time of the last data backup.

    Caution Caution

    Switching on overwrite mode interrupts the backup history. If you have to restore the database after an error, no redo log entries are available for this period of time, and you lose all data since the last data backup.

    End of the caution.

If overwrite mode is on and you switch it off, you then have to carry out a complete data backup.

Redo log management

Specifies whether the database system writes redo log entries.

  • ON

    Default value

    The system writes redo log entries.

  • OFF

    Caution Caution

    Do not switch redo log management off in normal database operation. When redo management is switched off, the system does not write regular savepoints. This means that if you restart your database after a database crash, you lose all data since the last savepoint. If you have to restore your database, you can only restore it to the state of the last data backup.

    Only consider switching redo log management off in special situations, for example in a test system or during a large load job.

    End of the caution.

If redo log management is off and you switch it back on, you then must carry out a complete data backup.

Note Note

In addition to the log settings, there are several database parameters that influence logging.

More information: Database Parameters

End of the note.

More Information

Concepts of the Database System, How Databases Log Data Changes

Database Studio, Changing Log Settings

Database Manager CLI, param_addvolume

Database Administration in CCMS, Log Area


Load Balancing - SAP Documentation

Background documentation Load Balancing

Load balancing is a process whereby load is distributed across multiple resources to achieve optimum use of the resources. The database system uses internal load balancing to distribute tasks in an optimum way to the available user kernel threads.

More Information

Concepts of the Database System, Load Balancing Between User Kernel Threads


Critical Section - SAP Documentation

Background documentation Critical Section

A critical section is a working memory area to which the database system synchronizes access of competing tasks through special semaphores (regions, reader-writer-locks)

Special Synchronization Mechanisms

Name

Used for

Description

Region

Data Cache

EXCLUSIVE

When a task accesses a critical section, the associated region blocks this critical section for all other tasks.

Reader-writer lock

(share lock)

Catalog Cache

Shared SQL Cache

EXCLUSIVE or SHARED

If a task write-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all other write-accesses but allows other read-accesses.

If a task read-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all write-accesses but allows other read-accesses.

More Information

Concepts of the Database System, Working Memory Areas

Database Administration in CCMS, Critical Sections


Loader Server - SAP Documentation

Background documentation Loader Server

Loader Server is the server part of the SAP MaxDB Loader database tool. It creates the connection between the client part of Loader and the database.

This graphic is explained in the accompanying text.

Architecture of the Loader

More Information

Loader documentation

Concepts of the Database System, Architecture of the Database Tools


MapChar Set - SAP Documentation

Background documentation MapChar Set

See Language Support


Multiprocessor Configuration - SAP Documentation

Background documentation Multiprocessor Configuration

To make optimum use of computers with multiple processors (support the largest possible number of database sessions with a minimum number of operating system threads), the database provides several configuration options, for example the two general database parameters MaxUserTasks and MaxCPUs.

More Information

Database Administration, General Database Parameters

Database Studio, Changing Database Parameters

Database Administration in CCMS, Parameters


Kernel Log File - SAP Documentation

Background documentation Kernel Log File

The kernel log file contains all messages from the kernel.

Kernel Log Files

Name

File Name

Directory

File ID

Description

Database Messages

KnlMsg

Run directory of the database (see Run Directory).

KNLMSG

Current kernel log file of the database, containing all kernel messages (error messages, warnings, and information)

This file is written in a pseudo-XML format.

The first part of the file contains messages of the database start into the operational state ADMIN: information about the software version, important paths and the current values of the database parameters. These messages are not be overwritten until the next database start, when the old version of the kernel log file is copied to the Database Messages (Old) file.

The second part of the file contains the messages that the database writes during operation. These messages will be overwritten cyclically. If the database crashes, a stack back trace is written.

See also Special Database Parameters KernelMessageFileSize and KernelMessageHistoryCount

Database Errors

KnlMsgArchive

Run directory of the database

KNLMSGARC

Error messages and start messages of the kernel since installation

This file is written in a pseudo-XML format.

This file is not overwritten cyclically. If you are analyzing database problems and the Database Messages and Database Messages (Old) files do not contain the relevant information anymore, check the Database Errors file.

See also the special database parameter MaxKernelMessageArchiveSize

Database Messages (Old)

KnlMsg.Old

Run directory of the database

KNLMSGOLD

Last kernel log file (before the last restart)

This file is written in a pseudo-XML format.

Database Messages (Classic)

-

(generated from the KnlMsg file)

Run directory of the database

KNLDIAG

Classic form of the current database kernel log file

Database Dump

knldump

Run directory of the database

Depending on your system, this file may become very large. To change the location of the file, use the database parameter KernelDumpFileName, see Support Database Parameters.

KNLDUMP

In case of an emergency datatabase shutdown, the global memory of the database is dumped into this file (in binary format).

Note that on Unix, no dump file is written if the database crashes due to a Unix signal.

Runtime Environment Dump

rtedump

Run directory of the database

To change the location of the file, use the support database parameter RTEDumpFileName.

RTEDUMP

In case of an emergency database shutdown, this file contains the tasks that were active in the database at the time of the emergency shutdown.

More Information

Database Administration, Log Files

Database Administration in CCMS, Kernel Messages


M - SAP Documentation

Background documentation M


ODBC - SAP Documentation

Background documentation ODBC

For accessing SAP MaxDB databases via ODBC, the SAP MaxDB ODBC driver is available.

More Information

ODBC Manual


Share Lock - SAP Documentation

Background documentation Share Lock

A share lock enables other transactions to read but not change a database object.

More Information

Concepts of the Database System, Locks

Database Administration, Configuring Locks for Database Objects, Analyzing Database Performance

Database Administration in CCMS, SQL Locks


Log Reader - SAP Documentation

Background documentation Log Reader

The log reader is a server task, which runs in the user kernel thread. It determines all information that the database system needs for a restart or restore of the database and generates the necessary files and lists to repeat the transactions.

More Information

Concepts of the Database System

  • How Databases Log Data Changes

  • Tasks


Log Writer - SAP Documentation

Background documentation Log Writer

The log writer is a task in the user kernel thread. It is responsible for writing the redo log entries from the log queues to the log area.

More Information

Concepts of the Database System

  • How Databases Log Data Changes

  • How Databases Store Data and Log Entries

  • Tasks

Database Administration in CCMS, Task Manager


LONG - SAP Documentation

Background documentation LONG

Old name for LOB


OMS - SAP Documentation

Background documentation OMS

Object Management System (OMS) is a type of data management.

Note Note

Only SAP liveCache databases use OMS.

End of the note.

A large part of the data in SAP liveCache databases is managed in objects. This object data is called OMS data. OMS data is managed in containers that are assigned to precisely one persistent C++ class of the object type.

OMS data is processed in the OMS intermediate layer. You can include application logic in SAP liveCache by using DB procedures. This removes much of the load that would otherwise be needed for communication and the transfer of data.

The system keeps the OMS data pages in the data cache.

More Information

Database Administration in CCMS, Class Containers


Kernel Variant - SAP Documentation

Background documentation Kernel Variant

Kernel variants are different variants of the kernel of the database system. They differ in terms of which logging and runtime checks the database system performs during operation.

When the database is started, restarted, transferred to the ADMIN operational state, or transferred to the ONLINE operational state, you can specify explicitly which kernel variant you want to use.

Kernel Variants
Kernel Variant | Description
fast | System default Fastest kernel variant, with minimum logging and runtime checks
slow | Kernel variant with extensive logging and runtime checks Do not use this kernel variant during production operation of the database.
test | Kernel variant which was developed especially for test purposes Do not use this kernel variant during production operation of the database.

More Information

Database Studio, Starting or Stopping Databases

Database Manager CLI, db_speed


Consistent View - SAP Documentation

Background documentation Consistent View

Note Note

Consistent views are only used by SAP liveCache databases.

End of the note.

The database system uses consistent views to guarantee read access to an object, independently of any changes being made to the data by other transactions. A consistent view can extend across one or more transactions (OMS version).

When a user opens a transaction, the user retains his or her view of the data until the transaction ends. Any changes made to the data in the meantime by other transactions do not affect the first user’s data view.

When an object within a consistent view is accessed for the first time, the database system copies this object data to the OMS heap. If multiple consistent views access the same data, the database system copies the data for each consistent view to its own separate area of the OMS heap. When a consistent view is closed, the database system deletes the corresponding data in the OMS heap.

More Information

Concepts of the Database System,

  • How Databases Log Data Changes

  • Example: Consistent View

Database Administration in CCMS: SAP liveCache Technology

  • OMS Versions

  • Monitoring OMS Versions


Upgrading Databases and Their Server Software - SAP Documentation

Procedure documentation Upgrading Databases and Their Server Software

When you upgrade a database to a higher version and update its server software at the same time, this procedure is known as an upgrade.

The upgrade procedure depends on the target version as well as on the number of databases which use the software installation to be updated

Recommendation Recommendation

Make sure you have made complete backups of all data in the relevant database, and that you also have the database software of the source version. Only then you can immediately revert to the source version if an error occurs and this way avoid long periods of system downtime.

End of the recommendation.

Procedure

Upgrade the software and one or more databases using this software with the help of the SDBINST or SDBUPD program. Which of these two programs applies, depends on the number of databases using the same software installation.

If a software installation is used by just one database which needs to be upgraded together with the software, use the SDBUPD program. It is quick and safe and requires very few user interaction.

(See: Upgrade if an Individual Database Uses the Software Installation

If a software installation is used by several databases and you want to upgrade one or more of these databases, use the SDBINST program. Within the upgrade process, first install the new version of the database software and then upgrade the affected databases one by one.

(See: Upgrade if Several Databases Use the Software Installation)

Starting with version 7.7, the catalog data of all SAP MaxDB databases is stored in Unicode. Therefore, databases of versions up to and including 7.6., whose catalog data is not stored in Unicode, need to be migrated before you can upgrade them to version 7.8.

(See: Catalog Migration to Unicode)

The migration procedure must be carried out in version 7.6.

If you want to upgrade a database from version 7.5. or 7.6 to version 7.8 , whose catalog data is not stored in Unicode, the following procedure applies:

  1. Upgrade to version 7.6 and migrate the database catalog to Unicode

  2. Upgrade to version 7.8

If you want to upgrade a database to version 7.8 , the catalog data of which is stored in Unicode yet, you can directly upgrade your database software to version 7.8.

Note Note

For all database versions whose catalog data might not be stored in Unicode yet, that is for all databases up to and including version 7.6, you can display the value of the UNICODE database parameter (see: Database Manager CLI, param_getfull) and this way determine whether the catalog data is stored in Unicode.

End of the note.


Working Memory Areas - SAP Documentation

Background documentation Working Memory Areas

To prevent that the database system accesses the permanent storage (volumes) more often than necessary, read and write operations are buffered in the working memory (RAM).

The unit used for reading from and writing to the working memory is a page (8 KB).

The database system divides the working memory into the following areas:

  • I/O buffer cache, which mainly consists of:

    • Data cache (largest part)

    • Converter

    • Internal file directory

  • Catalog cache

  • Shared SQL cache

  • Sequence cache

  • Log queues

  • For SAP liveCache databases only: OMS heap

Working Memory Areas

Working Memory Area

Database Parameters

Description

I/O Buffer Cache

CacheMemorySize

More information: Database Administration, General Database Parameters

The database system uses the I/O buffer cache to manage the working memory that is available for I/O operations.

Note that this parameter only roughly determines the size of the working memory used by the database. There are database functions that also need a certain amount of working memory, but whose memory consumption is not configured with this parameter.

Data Cache

It is not possible to configure the size of the data cache and the converter directly; instead, you can configure them indirectly via the parameter CacheMemorySize.

The database system uses the data cache to store the pages that it has recently read or write-accessed in the data area. This includes, for example, tables, indexes, LOB values and undo log entries.

The database system always searches for data in the data cache before accessing the data area.

The size of the data cache has the following effect on the performance of the database system:

  • A large data cache makes a high hit rate possible. We recommend a hit rate of at least 98%.

  • If, on a computer with a small working memory, the data cache is configured too large, this can cause the system to swap pages from the working memory to the hard disk, which considerably reduces performance.

Converter Cache

It is not possible to configure the size of the data cache and the converter directly; instead, you can configure them indirectly via the parameter CacheMemorySize.

The converter is where the database system stores information about which logical page number is saved at what physical position (block address). When the database starts, the database system imports the complete converter into the working memory.

If the converter grows while the database is running, and requires more pages, the database system gives it more pages from the I/O buffer cache.

More information: Converter

Catalog Cache

TaskSpecificCatalogCacheMinSize

More information: Database Administration, Special Database Parameters

The database system stores the following in the catalog cache:

  • Information from the database catalog

  • Information on SQL statements that have already been executed by individual database users (user-specific, only if the UseSharedSQL database parameter has the value NO). If more than one database user executes the same SQL statement, the system stores the statement in the catalog cache more than once.

Once the catalog cache is full, the database system moves part of it to the data cache.

The database system assigns a catalog cache area to each user task at the start of the database session; the system releases this catalog cache again after the database session has ended.

We recommend a hit rate > 85% for the catalog cache. The lower limit for the hit rate depends largely on the application.

Shared SQL Cache

SharedSQLCommandCacheSize

More information: Database Administration, Special Database Parameters

If the UseSharedSQL database parameter has the value YES, the database system uses the shared SQL cache.

The shared SQL cache is where the database system stores SQL statements that have already been executed, together with their execution plans. The shared SQL cache is shared by all database users, so the system saves the same SQL statement only once.

Note that if the UseSharedSQL database parameter has the value NO, the database system saves the executed SQL statements for each database user individually in the catalog cache.

Sequence Cache

SequenceCacheSize

More information: Database Administration, Special Database Parameters

The database system stores all information about sequences in the sequence cache.

Log Queues

LogQueueSize

LogQueues

More information: Database Administration, Special Database Parameters

The database system assigns each transaction a log queue, where the transaction writes its redo log entries. More than one transaction can write to the same log queue.

Working Memory for the Internal File Directory

It is not possible to configure the size of the data cache and the converter directly; instead, you can configure them indirectly via the parameter CacheMemorySize.

When the database starts, the database system imports the complete internal file directory into the working memory. The database system stores information for logically accessing database objects, such as the assignments of the root pages of B* trees to table IDs, in the internal file directory.

OMS Heap (only for SAP liveCache Databases)

You can configure the maximum size of the OMS heap using the OmsMaxHeapSize general database parameter.

The OMS heap is a specific working memory area only used by SAP liveCache databases. The OMS heap contains the following data:

  • Local copies of OMS data

    When an object within a consistent view is accessed for the first time, the database system writes the corresponding data to the OMS heap.

  • Local application data

    The database system copies the data of each OMS version to the OMS heap when it is read.

To access a persistent object, the database system searches first in the OMS heap. If it does not find the object there, it searches in the data cache. If it does not find the object there either, the database system copies the object from the data area to the data cache, and from there to the OMS heap. The database system then makes all changes to the object in the OMS heap. Any objects that are read but not changed within a consistent view are deleted from the OMS heap by the database system. When a transaction ends (COMMIT), the database system writes the OMS data from the OMS heap to the data cache.

If the application requires additional working memory, the OMS heap grows.

This graphic is explained in the accompanying text.

Working Memory Areas

Example: Working Memory Areas
Working Memory Area | Database Parameters | Maximum Size
I/O Buffer Cache | CacheMemorySize = 2500 | 19.53 MB
Catalog Cache | TaskSpecificCatalogCacheMinSize = 1632 | 12.75 MB
Shared SQL Cache | SharedSQLCommandCacheSize = 262144 | 256 MB (initial 16 MB)
Sequence Cache | SequenceCacheSize = 1 | 0.01 MB
Log Queues | LogQueueSize = 50 (size of a log queue) LogQueues = 1 (number of log queues) | 0.4 MB
How Does the Database System Synchronize Access to Caches?

A stripe is a logical part of a cache (data cache or converter). To synchronize access of competing tasks, the database system uses special synchronization means such as regions and reader-writer locks. A stripe contains several critical sections.

You can override the access restrictions calculated by the system using the special database parameters DataCacheStripes and ConverterStripes.

Special Synchronization Mechanisms

Name

Used for

Description

Region

Data Cache

EXCLUSIVE

When a task accesses a critical section, the associated region blocks this critical section for all other tasks.

Reader-writer lock

(share lock)

Catalog Cache

Shared SQL Cache

EXCLUSIVE or SHARED

If a task write-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all other write-accesses but allows other read-accesses.

If a task read-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all write-accesses but allows other read-accesses.

More Information

Database Parameters

Savepoint


P - SAP Documentation

Background documentation P


PTS (Problem Tracking System) - SAP Documentation

Background documentation PTS (Problem Tracking System)

Error and problem messages for SAP MaxDB are recorded in the SAP-internal Problem Tracking System (PTS). Users can track the processing of messages via the PTS web interface:

http://maxdb.sap.com/webpts

More Information

Database Administration, Tracking Problem Messages in PTS


PHP - SAP Documentation

Background documentation PHP

The SAP MaxDB PHP extension enables you to access SAP MaxDB databases using PHP.

More Information

PHP Manual


Privilege - SAP Documentation

Background documentation Privilege

A privilege defines the SQL statements permitted for a database object.

Users may only execute SQL statements on database objects for which they have been granted privileges. When a user creates a database object, this user then automatically becomes the owner of the database object, and is granted all privileges for this database object.

The owner of an object can grant privileges for this database object to other users. The database systems does not grant any privileges implicitly. Other users can only grant privileges for a database object when they themselves have been granted these privileges and have permission to grant these to other users.

More Information

SQL Reference Manual

  • Privileges: Overview

  • GRANT Statement (grant_statement)

  • REVOKE Statement (revoke_statement)

SQL Tutorial, Database Users and Their Privileges, Roles


Perl - SAP Documentation

Background documentation Perl

With the SAP MaxDB Perl module, you can use Perl scripts to access databases.

SAP MaxDB Perl Module
Name | Programming Interface | Use
DBD::MaxDB | SQL | Executing SQL queries and processing the results

More Information

Perl Manual


Parameter File - SAP Documentation

Background documentation Parameter File

The parameter file is a binary file that contains the database parameter values for a database.

More Information

Database Administration, Configuration Files


Primary Key - SAP Documentation

Background documentation Primary Key

Each database table has a primary key (primary index). The primary key is either defined by the user or generated by the system. A user-defined primary key can consist of one or more columns. The primary key must have a unique value for each table row.

More Information

  • SQL Reference Manual, Key Definition (key_definition)

  • SQL Tutorial, Primary Key

  • Database Studio, Creating Tables


Process - SAP Documentation

Background documentation Process

Several operating system processes belong to the SAP MaxDB database software.

Processes
Microsoft Windows |  | Unix and Linux |  | Function
Process Name | Process Owner (Operating System User) | Process Name | Process Owner (Operating System User) |
dbanalyzer.exe | When started on the command line: logged-on operating system user When called from another database tool: Local System Account | dbanalyzer | When started on the command line: logged-on operating system user When called from another database tool: sdb | Database Analyzer
dbmcli.exe | logged-on operating system user | dbmcli | logged-on operating system user | Database Manager CLI
DBMGui3.exe | logged-on operating system user | - | - | Database Manager GUI
dbmsrv.exe | Local System Account | dbmsrv | sdb | DBM Server
dbstudio.exe | logged-on operating system user | dbstudio | logged-on operating system user | Database Studio
kernel.exe | Local System Account | kernel | sdb | Database system kernel Every database has its own kernel process. On Microsoft Windows, the kernel of the database runs as an individual operating system process. On Unix and Linux, the kernel uses two operating system processes: upon starting, the database system generates a watchdog process which then directly starts the actual kernel process.
loadercli.exe | logged-on operating system user | loadercli | logged-on operating system user | Loader
- On Microsoft Windows, NI support is an integral part of the global listener. | - | niserver | sdb | NI server (for connections with SAPRouter, in SAP systems only)
- On Microsoft Windows, NISSL support is an integral part of the global listener. | - | nisslserver | sdb | NISSL server (for SSL connections with SAPRouter, in SAP systems only)
serv.exe | Local System Account | sdbgloballistener | sdb | Global listener On Unix and Linux, a new child process is started for each database connection.
serv.exe | Local System Account | vserver | sdb | SAP MaxDB X server (communication server) On Unix and Linux, a new child process is started for each database connection.
sqlcli.exe | logged-on operating system user | sqlcli | logged-on operating system user | SQLCLI
SQLSto.exe | logged-on operating system user | - | - | SQL Studio


Port - SAP Documentation

Background documentation Port

A port is the end point of a logical connection. Services and server programs can be assigned port numbers. SAP MaxDB uses port numbers, for example, for the SAP MaxDB X Server.

Ports and Protocols of the SAP MaxDB X Servers
Scope | Default Port | Function of the X Server | Protocol | Protocol Identifier
All installations on the database computer | 7210 | Global listener | TCP/IP | remote://
 | 7269 | Global listener with SAP networtk protocol NI (for connections via SAPRouter, only available in SAP systems) | NI (based on TCP/IP) | sapni://
 | 7270 | Global listener with SAP networtk protocol NI and SAP encryption library (for connections via SAPRouter, only available in SAP systems) | SSL/TLS NISSL (based on TCP/IP) | remotes:// sapnis://
First installation <installation_1> on the database computer | 7200 | X server for <installation_1> | TCP/IP | remote://
Second installation <installation_2> on the database computer | 7203 | X server for <installation_2> | TCP/IP | remote://
Separate Database Studio installation | 7299 | X server for the separate Database Studio installation, only used by the system to access the local user management database .UMDB | TCP/IP | remote://

The ports are stored in the services file, which you can find at the following locations:

  • Microsoft Windows: C:\WINDOWS\system32\drivers\etc\services

  • Unix and Linux: /etc/services

More Information

Global Listener and X Servers


Prepared Statement - SAP Documentation

Background documentation Prepared Statement

Prepared statements are used for developing database applications. Prepared statements enable you to use SQL statements with placeholders in methods of the language selected for the database application.

Use a question mark ? as placeholder in the SQL statement.

Prepared statements have the following advantages when compared to simple SQL statements:

  • They are more efficient, because the database system only needs to parse them once, even if they are used more than once (see Shared SQL).

  • They are more secure since they separate SQL logic from the data specified by the user, thus reducing the risk of a user deliberately entering invalid values (SQL injection).

Interfaces for SAP MaxDB: Prepared Statement Support
Interface | Implementation
JDBC | PreparedStatement class
ODBC | SQLPrepare method
SQLDBC | SQLDBC_PrepareStatement class
PHP | maxdb_prepare
Perl | prepare
Python | Method prepare (class SapDB_Session), Class SapDB_Prepared (module sdb.sql)

Example

Prepared statement for the SAP MaxDB SQLDBC interface:

SQLDBC_PrepareStatement *stmt = conn->createPreparedStatement();

SQLDBC_Retcode rc = stmt->prepare("SELECT zip, name FROM hotel.city WHERE name = ?");

if (rc != SQLDBC_OK) {

// Handle error ...

}

rc = stmt->execute();

if (rc != SQLDBC_OK) {

// Handle error ...

}

More Information

Database Studio, Testing Prepared Statements

SAP MaxDB Security Guide, Checking User Inputs in SQL Statements.


Performance - SAP Documentation

Background documentation Performance

The configuration of your database has a significant impact on performance.

Internally, the database system transforms SQL statements to speed up their processing. The SQL optimizer then selects the best access strategy.

More Information

  • Database Administration, Analyzing Database Performance

  • Database Studio,

    • Configuring and Starting SQL Performance Monitoring

    • Analyzing SQL Performance Bottlenecks

  • Database Administration in CCMS, Performance Analysis in CCMS

  • SAP Note 819641 (FAQ: MaxDB Performance)


Precompiler - SAP Documentation

Background documentation Precompiler

See SQLDBC

Up to and including database version 7.5, the precompiler provided an interface between SAP MaxDB database interfaces and C/C++ application programs. From database version 7.6, SQLDBC replaces the Precompiler.

More Information

SAP Notes 649814 and 822239


Predicate - SAP Documentation

Background documentation Predicate

A predicate is a comparison operation with a result that is true or false. You can use predicates in the WHERE condition of an SQL statement.

More Information

SQL Reference Manual, Predicate (predicate)

SQL Optimizer, Search Conditions


Parameters in SQL Statements - SAP Documentation

Background documentation Parameters in SQL Statements

You can embed SQL statements in programming languages. You can use parameters within SQL statements to specify the values that the programs are to query or to save. You declare these parameters as variables (so-called host variables) within the embedding program.

The data type of the host variables is defined when they are declared in the programming language. If possible, the values of the host variables are implicitly converted from the programming language data type to the data type of the database system, and vice versa.

Each parameter can be combined with an indicator variable that indicates irregularities (such as different value and parameter lengths, NULL value, special NULL value, and so on) that may occur when the values are assigned. Indicator variables are essential for transferring NULL values and special NULL values. The indicator variables are declared as variables in the embedding program.

More Information

SQL Reference Manual, Parameter Names

Concepts of the Database System, Interfaces


Python - SAP Documentation

Background documentation Python

With the SAP MaxDB Python modules, you can use Python scripts to access SAP MaxDB databases.

SAP MaxDB Python Modules
Name | Programming Interface | Use
sdb.dbapi Module | SQL | Executing SQL statements (implements the Python Database API Specification v2.0)
sdb.sql Module | SQL | Executing SQL statements (SAP MaxDB-specific)

More Information

Python Manual


Pager - SAP Documentation

Background documentation Pager

Pagers are tasks in the user kernel thread. Pagers write data from the data cache to the data area at each savepoint, and if necessary inbetween savepoints as well. When the database starts, the pagers load the converter into the working memory. When you remove a data volume, the pagers read the data from the volume to be removed and then write the data to the remaining data volumes.

More Information

Concepts of the Database System,

  • How Databases Store Data and Log Entries

  • Tasks

Database Administration in CCMS, Task Manager


Parallel Backup - SAP Documentation

Background documentation Parallel Backup

To speed up a backup, you use several data carriers in parallel.

More Information

  • Database Administration, Backing Up Databases

  • Database Studio, Backup Templates and Data Carriers

  • Database Manager CLI, medium_put

  • Database Administration in CCMS, Backup Templates


Programming Interface - SAP Documentation

Background documentation Programming Interface

See Interface


Log File - SAP Documentation

Background documentation Log File

The database system writes information about actions and errors to log files.

More Information

Database Administration, Log Files

Database Administration in CCMS, Logs, Messages


Parameter - SAP Documentation

Background documentation Parameter

See

  • Database Parameters

  • Parameters in SQL Statements


Exclusive Lock - SAP Documentation

Background documentation Exclusive Lock

While a database object is exclusively locked by a transaction, other transactions have neither read nor write access to that database object.

More Information

Concepts of the Database System, Locks

Database Administration, Configuring Locks for Database Objects, Analyzing Database Performance

Database Administration in CCMS, SQL Locks


Server Task - SAP Documentation

Background documentation Server Task

Server tasks are tasks in the user kernel thread.

The database system uses server tasks to parallelize database functions (for example, data backups).

More Information

Concepts of the Database System, Tasks


Lock - SAP Documentation

Background documentation Lock

The database system allows competing transactions to access the same database objects. Locks are required to guarantee that parallel processes are synchronized and individual transactions isolated.

Lock Types
Name | System Name | Description | Objects that Can Be Locked
Shared lock | SHARE LOCK | Other transactions retain read access to the database object and can continue to set shared locks for this database object. | Tables, rows, database catalog
Exclusive lock | EXCLUSIVE LOCK | Other transactions have neither read nor write access to the database object. All SQL statements that change data, such as INSERT, UPDATE and DELETE statements, always request an exclusive lock. | Tables, rows, database catalog
Optimistic lock | - | Keeps track of changes to a database object Other transactions can continue to set shared, exclusive or optimistic locks for the database object. | Rows

More Information

  • Concepts of the Database System, Locks

  • Database Administration,

    • Configuring Locks for Database Objects

    • Analyzing Database Performance

  • Database Administration in CCMS, SQL Locks

  • SAP Note 1243937 (FAQ: MaxDB SQL Locks)


Backup File - SAP Documentation

Background documentation Backup File

You can back up data and log entries to files (backup files). The name of a backup file consists of a file name (specified in the backup template) and a sequential number assigned by the database system (for example, logfile.001).

During a log backup to a file, the system backs up each log segment of the log area to a separate backup file.

We recommend that you regularly archive backup files.

More Information

  • Database Administration,

    • Backup Templates and Data Carriers

    • Backing Up Log Entries

    • Archiving Backup Files

  • Database Manager CLI, Other Commands for Backups

  • Database Administration in CCMS, Archiving Backup Files


Sequence Cache - SAP Documentation

Background documentation Sequence Cache

The sequence cache is an area of the working memory in which the database system stores information on sequences.

You can use the special database parameter SequenceCacheSize to configure the size of the sequence cache.

More Information

Concepts of the Database System, Working Memory Areas

Database Administration, Special Database Parameters


Sequence - SAP Documentation

Background documentation Sequence

A sequence (also called number generator) is a database object whose value the database system automatically increases or decreases with each access. To guarantee quick access, the database system holds the values and management information for sequences in the sequence cache.

Sequence: Properties

Property

Description (Link to SQL Reference Manual)

Sequence Name

Sequence name (sequence_name)

Schema

Schema name (schema_name)

Start With

First value of the sequence

Increment By

Difference between two successive values of the sequence

A negative value generates a descending sequence.

Default value: 1

Minimum Value

Minimum value

Maximum Value

Maximum value

Values to Cache

Number of values of the sequence that the system stores in the sequence cache

Cycle

Ascending sequences: after the system has reached the maximum value, it allocates the minimum value as next value.

Descending sequences: after the system has reached the minimum value, it allocates the maximum value as next value.

More Information

  • Database Studio, Creating Sequences, Deleting Sequences

  • SQL Tutorial, Number Generators for Tables

  • SQL Reference Manual, CREATE SEQUENCE Statement


Stored Procedure - SAP Documentation

Background documentation Stored Procedure

See Database Procedure


Page Chain - SAP Documentation

Background documentation Page Chain

A page chain is a sequence of pages that logically belong together.

More Information

Concepts of the Database System, Logical Access Structures


Start - SAP Documentation

Background documentation Start

To manually start a database, transfer it to the ONLINE operational state using Database Studio, Database Manager CLI, or CCMS (in SAP systems only).

You can also configure the database so that it is automatically transferred to the ONLINE operational state when the computer is started.

More Information

  • Database Administration, Activating Automatic Database Start

  • Database Studio, Starting or Stopping Databases

  • Database Manager CLI, db_online


System Trigger - SAP Documentation

Background documentation System Trigger

A system trigger is a special database procedure that is executed during a restart (while connections are not possible yet).

More Information

SQL Reference Manual, CREATE SYSTEM TRIGGER Statement


Backup Medium - SAP Documentation

Background documentation Backup Medium

See Backup Template and Data Carrier


Software Component - SAP Documentation

Background documentation Software Component

The SAP MaxDB database software is comprised of several software components. When you install the database software, you can select which software components you want to install.

The Database Software Comprises the Following Packages:
<package_name> | Description
ADO.NET Driver | SAP MaxDB .NET driver for accessing the SAP MaxDB database system, Available on Microsoft Windows only
Base | Programs programs required to access the database system (including Database Manager CLI, XUSER and SQLCLI)
Database Kernel | Database kernel with runtime environment
DB Analyzer | Database Analyzer program (tool for analyzing database performance)
FastLoad API | Object-oriented C++ interface to access the SAP MaxDB fastload function
Global Listener | Specialized X server
Installation Compatibility | Content ensures the downwards compatibility,allows to install SAP MaxDB versions lower than 7.8 later on
Installer | Installation administration tools (deinstallation program, installation diagnosis tool sdbregview)
JDBC | SAP MaxDB JDBC driver for accessing the SAP MaxDB database system
Loader | Loader program (tool for importing and exporting data)
ODBC | SAP MaxDB ODBC driver for accessing the SAP MaxDB database system
Redist Python | Python interface and extensions
SAP Utilities | dbmrfc and ni libraries:
SAP Utilities Installation Compatibility | Content ensures the downwards compatibility in SAP systems, allows to install SAP MaxDB versions lower than 7.8 later on
Server Utilities | Tools for administering the database kernel (including XCONS)
SQLDBC | Object-oriented C++ interface for accessing the SAP MaxDB database system. Contains a non-versioned SQLDBC library, among other things.
SQLDBC<version> | Versioned SQLDBC library, relevant for SAP applications only
WebDAV-Servlet | Implements the WebDAV service for use in a JSP container (e.g. Tomcat, SAP Netweaver AS)


Snapshot - SAP Documentation

Background documentation Snapshot

A snapshot stores the state of the data area at the time of the snapshot.

Once you have made a snapshot, you can continue to work normally and make data changes. You can later decide whether you want to return to the state the data area was in at the time of the snapshot or accept all changes since the snapshot.

More Information

  • Database Administration, Snapshot of the Data Area

  • Database Studio,

    • Displaying Information About Snapshots

    • Making Snapshots of the Data Area

  • Database Administration in CCMS, Snapshots


Service Database - SAP Documentation

Background documentation Service Database

The service database is a specially-configured additional database that the database systems uses for internal purposes, for example to check backups or to restore the parameter file from a data backup. The database system starts the service database when necessary.

The database system creates the service database when the database software is installed. Its name is generated from the software version.

Example Example

.M760200

End of the example.

More Information

Database Manager CLI, -uSRV: Opening a Service Session

Concepts of the Database System, Services


Support - SAP Documentation

Background documentation Support

Support for SAP MaxDB
Name | Description
SAP MaxDB Forum on SDN | https://www.sdn.sap.com/irj/sdn/forum?forumID=90&start=0 The forum is based on mutual support between SAP MaxDB users and is free of charge. Both the database development team and members of the forum can reply to you.
Support contract with SAP | If you use SAP MaxDB in an SAP solution, your SAP support contract gives you access to the SAP support infrastructure. More information: SAP Note 826037


System Failure - SAP Documentation

Background documentation System Failure

If the database fails due to a hardware defect or a logical error, you can restore the database to a consistent state by importing your data and log backups.

For increased security, there are also various replication and high availability mechanisms available.

More Information

Database Administration,

  • Restoring Databases

  • Replication and High Availability

  • Troubleshooting


Statistics - SAP Documentation

Background documentation Statistics

The database system automatically saves basic statistical information on the size of tables and indexes in the internal file directory. On request, the database system also determines a range of additional statistical information, which it saves in the database catalog (this operation is called “updating the statistics”). SQL optimizer uses these statistics to determine the optimum strategy for accessing data in the database when processing complicated SQL statements, such as joins.

More Information

  • Database Administration, SQL Optimizer Statistics

  • Database Studio, Updating SQL Optimizer Statistics

  • Database Manager CLI, sql_updatestat, auto_update_statistics

  • Database Administration in CCMS, Scheduling the Update of the SQL Optimizer Statistics


Service Session - SAP Documentation

Background documentation Service Session

A service session is a special database session during which you are connected to the service database.

More Information

Database Manager CLI,

  • -uSRV: Opening a Service Session

  • service_connect


Session Mode - SAP Documentation

Background documentation Session Mode

Session mode is an operating mode in command line programs.

See Operating Mode


Script Mode - SAP Documentation

Background documentation Script Mode

Script mode is an operating mode in command line programs.

See Operating Mode


Standby Database - SAP Documentation

Background documentation Standby Database

  • Standby databases:

    A standby database is a copy of the active database, which you update regularly using the log backups of the active database.

    More information: Database Administration, Standby Databases

  • Hot standby systems:

    In a hot standby system, one or more standby databases regularly track the data changes that have been made in the master database. If the master database fails, one of the standby databases becomes the new master database. Standby databases are always in the STANDBY operational state.

    More information:

    • Database Administration, Hot Standby

    • Database Manager CLI, hss_addstandby


System Requirements - SAP Documentation

Background documentation System Requirements

You can use SAP MaxDB on many different operating systems, including Microsoft Windows and various versions of Unix and Linux.

More Information

Download


Backup Tool - SAP Documentation

Background documentation Backup Tool

SAP MaxDB directly supports the use of several third-party backup tools. Using scripts, you can also use all other backup tools that can process backups from pipes.

Supported Third-Party Backup Tools

Name

Key

Description

More information

TSM (IBM/Tivoli)

TSM

You can connect TSM using the TSM client adint2 or using the Backint for Oracle interface.

With adint2, you achieve better performance. However, this program is not available on all platforms.

Installation Manual,

  • Connecting to TSM

  • Connecting to a Backint for Oracle Interface

NetWorker (Legato)

NSR

You can connect NetWorker using the command line clients SAVE, RECOVER and MMINFO that are included in the Networker software, or using the Backint for Oracle interface.

The command line clients deliver better performance.

See Installation Manual, Connecting to NetWorker

NetBackup (Veritas)

BACK

-

Installation Manual, Connecting to VERITAS NetBackup

All backup tools that support Backint for SAP MaxDB

BACK

Backint for SAP MaxDB is an interface that is supported by various third-party vendors.

Installation Manual, Connecting to a Backint for SAP MaxDB Interface

For more information about the requirements for the Backint for SAP MaxDB interface, see http://maxdb.sap.com/archive/

All backup tools that support Backint for Oracle

BACK

Backint for Oracle is an interface that is supported by various third-party vendors.

Installation Manual, Connecting to a Backint for Oracle Interface

More Information

Database Administration, Using Third-Party Backup Tools

Loader, Exporting and Importing Using Third-Party Backup Tools

Certification of Third-Party Backup Tools

See [image] https://www.sdn.sap.com/irj/sdn/interface-certifications [image] BC-SDB


Strategy - SAP Documentation

Background documentation Strategy

In general, different strategies for accessing data (search strategies) are available to the database system. These strategies differ in the costs that they incur when executed.

More Information

Concepts of the Database System

  • Search Strategies

  • List of All Search Strategies

Database Studio, Analyzing SQL Statements (EXPLAIN)


Backup Template - SAP Documentation

Background documentation Backup Template

Before you can back up data and redo log entries to a data carrier, you must create a backup template.

Backup Template Properties

Property

Description

Name

The name of the backup template has no influence on the name of the backup created later using this backup template.

Backup Type

  • Complete data backup

  • Incremental data backup

  • Log backup

Device Type

Data carrier type

  • File

  • Tape

  • Pipe

    Note Note

    For automatic log backups, you cannot use pipes.

    End of the note.

Backup Tool

Only if you are using a third-party backup tool

Specify the backup tool:

  • BACK: Backint for Oracle or Backint for MaxDB

  • NSR: Networker

  • TSM: TSM

More information: Database Administration, Using Third-Party Backup Tools

Device/File

Depending on the backup type enter the required information:

  • Name of the tape device in the operating system

  • Path and file name of the file in the file system

    Caution Caution

    If you do not enter a full path here, the system stores your backup in the run directory of the database.

    More information: Glossary, Run Directory

    End of the caution.

  • Path and name of the pipe

We recommend that you do not use the same data carrier for several databases.

For log backups to files, the system adds a sequence number to the name of each new backup file. It assigns the numbers sequentially as long as the history of the log backups is not interrupted. If the log backup history is interrupted (for example after the database was initialized), the system starts numbering at 001 again.

It also uses sequential numbers if you carry out multiple log backups for one database onto different data carriers, and thus to files with different file names.

Example Example

LogUri.001

LogKai.002

LogOleg.003

LogUri.004

LogUri.005

End of the example.

If automatic log backup is switched on, the system stores all backup files under the same file name using a sequence number.

Example Example

DEMODB_MYLOG.001

DEMODB_MYLOG.002

DEMODB_MYLOG.003

DEMODB_MYLOG.004

DEMODB_MYLOG.005

End of the example.

You can also back up to data carriers on remote computers. More information: Database Administration, Backing Up and Restoring Data with Remote Computers

Size

There is no size restriction in default mode.

The size of log backups to files is calculated as the size of a log segment (general database parameter AutoLogBackupSize) plus the space required by system information.

More information: Database Administration, General Database Parameters

Compressed

For backup templates of the FILE and PIPE types only

Specifies whether the backup is compressed

Overwrite

For backup templates of the FILE type only

Specifies whether the backup file can be overwritten

We recommend that you do not overwrite a backup with the backup that immediately follows it. Always keep an older version of the backup.

Block Size

Block size that the system uses to write backups to the data carrier.

Autoloader

Select this option if you want to use a tape device with an automatic tape loader.

OS Command

For backup templates fo the TAPE type only

Operating system command for backing up to tape devices

Encryption

Prerequisites: license for SAP Cryptolib (only available in SAP systems), private-public key pair has been created using sapgenpse

  • Algorithm

    Available encryption algorythms: DES, AES

  • Owner

    Private key owner (see X.509 certificate)

For more information, see Encryption.

More Information

  • Database Administration, Backup Templates and Data Carriers

  • Database Studio,

    • Defining Backup Templates

    • Changing the Properties of Backup Templates

    • Deleting Backup Templates

  • Database Manager CLI, medium_put

  • Database Administration in CCMS, Backup Templates


Shared SQL - SAP Documentation

Background documentation Shared SQL

The database system can use the shared SQL function to avoid multiple parsing of SQL statements and multiple storage of parse information (such as execution plans and descriptions of result sets).

If shared SQL is activated, the database system saves all parsed SQL statements and prepared statements with their corresponding information in a global cache, which shared by all users. The system can use this information again later, if needed.

You can activate or deactivate shared SQL using the UseSharedSQL special database parameter.

More Information

Database Administration, Special Database Parameters


Separator - SAP Documentation

Background documentation Separator

The entries in the root pages and index pages of a B* tree are called separators. A separator acts as a pointer to the appropriate page on the next level down in the B* tree. A separator consists of the significant part of the primary key of a data record (which differentiates it from the following entry), information about the length, and a pointer.

More Information

Concepts of the Database System, Logical Access Structures


Language Support (MapChar Sets) - SAP Documentation

Background documentation Language Support (MapChar Sets)

SAP MaxDB uses MapChar sets to map language-specific characters to alternative representations, such as ü to ue. The characters to be converted and the Mapchar set must use the same character set. If, for example, a MapChar set has been defined in Unicode, this MapChar set can only be used for Unicode values.

When a database is created, the database system creates the default MapChar set DEFAULTMAP. You can change the DEFAULTMAP MapChar set and define additional MapChar sets.

MapChar sets are only valid for internal system functions.

The MAPCHAR(x,n,i) function uses MapChar sets to sort fields that contain umlaut characters.

More Information

SQL Reference Manual, Mapchar Set Name (mapchar_set_name) and MAPCHAR(x,n,i)


Secondary Key - SAP Documentation

Background documentation Secondary Key

See Index


Backup Type - SAP Documentation

Background documentation Backup Type

Backup Types
Name | Description
Complete Data Backup | You back up the entire data area.
Incremental Data Backup | You back up all data in the data area that has been changed since the last complete backup.
Log Backup | You back up the log area.

More Information

Database Administration, Backing Up Databases

Database Administration in CCMS, Scheduling a Data Backup, Scheduling Log Backups


Backup History - SAP Documentation

Background documentation Backup History

In the backup history, the database system chronologically logs information about all the actions it carried out when backing up and restoring a database.

The database system writes the backup history to the following files:

  • For backups without third-party backup tools, to the dbm.knl log file

  • For backups using third-party backup tools, to the dbm.ebf log file

Backup History
Property | Description
Label | Backup ID
Backup Type | Backup Type The HISTLOST entry means that the backup history was interrupted.
Action | Internal name of the executed function
Start | Time when the action began
Medium | Name of the backup template
Size | Size in pages
Devices | Number of parallel data carriers, if applicable
Next Log Page | Log Sequence Number
From Page | From log sequence number
To Page | To log sequence number

More Information

  • Database Studio, Opening the Backup History

  • Database Manager CLI, Backing Up and Restoring Database Instances

  • Database Administration, Log Files

  • Database Administration in CCMS, DBA History


Backup - SAP Documentation

Background documentation Backup

When you carry out a back up, the database system saves the contents of the volumes to data carriers.

More Information

Database Administration, Backing Up Databases

Database Studio, Backing Up Data, Backing Up Log Entries

Database Manager CLI, backup_start

Database Administration in CCMS, Scheduling a Data Backup, Scheduling Log Backups


System Table - SAP Documentation

Background documentation System Table

In the system tables of a database, the database system stores information about database objects and their relationships to each other, database states, statistics, operation and settings.

The system tables are not maintained by database users. The database system itself checks whether the system tables are still up to date every time the database is started. If this is not the case, an automatic function ensures that the system tables are updated.

You nevertheless have the option of updating (loading) the system tables at any time without needing to restart the database, for example in order to restore inadvertently deleted system table entries.

More Information

  • SQL Reference Manual, System Tables

  • Database Studio, Updating System Tables

  • Database Manager CLI, auto_load_systab, load_systab

  • Database Administration in CCMS, SYSINFO Views


Synonym - SAP Documentation

Background documentation Synonym

A synonym is an alternative name for a database table. You can use synonyms, for example, in order to shorten long or complicated table names.

Within a database schema, each synonym needs to have a unique name that is different from all other table names.

More Information

SQL Reference Manual,

  • Synonym Name (synonym_name)

  • CREATE SYNONYM Statement (create_synonym_statement)

Database Studio,

  • Creating Synonyms

  • Renaming Synonyms

  • Deleting Synonyms


Selectivity - SAP Documentation

Background documentation Selectivity

Selectivity is the ratio between data records that the system had to read and the number of data records actually required when accessing data.


Lock List - SAP Documentation

Background documentation Lock List

The database system keeps locks and lock requests for all users in the lock list.

More Information

Concepts of the Database System, Locks

Database Administration, Configuring Locks for Database Objects, Analyzing Database Performance

Database Administration in CCMS, Activities Overview, SQL Locks


Syntax Notation - SAP Documentation

Background documentation Syntax Notation

The syntax notation used in the documentation is derived from the Backus Naur Form (BNF). The following conventions apply.

Syntax Notation: Conventions
Syntax Element | Description
KEYWORD | Keywords are shown in uppercase letters for the sake of emphasis. If there is no specific reference to case-sensitivity in the documentation, you can write keywords in either upper- or lowercase letters.
<variable> | Placeholder for syntax elements, such as variables. When you enter the variable, do not enter the angle brackets.
[syntax_element] | Optional syntax element When you enter the syntax element, do not enter the square brackets.
syntax_element1 | syntax_element2 | Alternative syntax elements (OR)
syntax_element, ... | Syntax element can be repeated as often as required.
Syntax Notation: Formatting (for better readability of the documentation)
Example | Description
dbmcli db_enum | Commands and SQL statements that users should enter are formatted in a bold monospace font.
OK DEMODB C:\Program Files\sdb\Installation_1 7.8.01.04 fast running | System replies and output from database tools and other programs are formatted in a monospace font.
The db_enum command lists all databases. The documentation uses the DEMODB demo database. | Syntax elements and examples in continuous text are formatted in a monospace font.

Example

sqlcli -d <database_name> -u <database_user>,<database_user_password> <sql_statement>

To illustrate commands and actions, the documentation uses the DEMODB demo database with the HOTEL schema sample data:

sqlcli -d demodb -u mona,red SELECT * FROM hotel.city

| ZIP | NAME | STATE |

| ----- | -------------------- | ----- |

| 10019 | New York | NY |

| 10580 | New York | NY |

| 11788 | Long Island | NY |

| 12203 | Albany | NY |

| 20005 | Washington | DC |

| 20019 | Washington | DC |

More Information

  • Documentation Variable

  • SQL Reference Manual, SQL Syntax

  • Loader, Syntax Rules


Special Thread - SAP Documentation

Background documentation Special Thread

Special threads are operating system threads. They provide those services to user kernel threads that the user kernel threads must process asynchronously. Those services include connection requests, reading or writing to data volumes, and backups.

Special Threads

Name

Description

Coordinator

The Coordinator thread monitors all threads in the database. It is the first thread that the system creates when the database is started. It coordinates the start processes of the other threads. If errors occur, the Coordinator thread can stop other threads.

Requester

The Requester thread accepts user logons to the database and assigns them to a user task within a user kernel thread.

Console

The Console thread processes the requests of the XCONS database tool (database console).

Clock

Only on Microsoft Windows

The Clock thread sets a global time variable with which internal time measurements are aligned.

dev<n>

Dev Threads are responsible for carrying out write and read requests of the tasks in the volumes.

The Dev threads are numbered sequentially (dev<n>). The Dev thread dev0 plays a special role here. It coordinates and monitors the other Dev threads.

The number of Dev threads is primarily dependent on the number of volumes in the database. The database system activates two Dev threads for each data volume and each log volume. If the database trace is on, the database system activates a Dev thread for it as well.

asdev<i>

To perform data backups, the database system activates temporary Dev threads asdev<i> for reading and writing the data.

Timer

Timer threads are responsible for monitoring the time for time-outs, for internal load balancing and for other time-dependent internal controls.

Worker

The Worker thread is responsible for reporting completed asynchronous I/O operations.

More Information

Concepts of the Database System, Threads


Search Strategy - SAP Documentation

Background documentation Search Strategy

See Strategy


Subtransaction - SAP Documentation

Background documentation Subtransaction

You can subdivide a transaction into self-contained units (subtransactions).

More Information

SQL Reference Manual, SUBTRANS Statement (subtrans_statement)


Server Permission - SAP Documentation

Background documentation Server Permission

To execute DBM commands, DBM operators and the database system administrator require the corresponding permissions for the DBM server. These permissions are called server permissions. A server permission may cover more than one DBM command and one DBM command may have more than one server permission assigned to it.

DBM Server Permissions
Permission | Required for Logon to a Database with Database Studio | Name in Database Manager CLI
Accessing an SQL session | Yes | AccessSQL
Access to Utility sessions | - | AccessUtility
Executing backups | - | Backup
Accessing database files (reading only) | Yes | DBFileRead
Displaying status information | Yes | DBInfoRead
Starting the database | - | DBStart
Stopping the database | - | DBStop
Managing the event dispatcher | Yes | EvtDispMgm
Using the Loader program | - | ExecLoad
Installation management | - | InstallMgm
Loading the system tables | - | LoadSysTab
Accessing database parameters (reading and writing; only those commands for changing parameters may be executed whose changes are checked against the default parameter file cserv.pcf) | - | ParamCheckWrite
Accessing database parameters (reading and writing; all commands can be executed, even those for directly changing the parameter file without the changes being checked by the system) | - | ParamFull
Accessing database parameters (reading only) | Yes | ParamRead
Restoring databases | - | Recovery
Managing the scheduler | - | SchedulerMgm
Scheduling DBM commands | - | Scheduling
Managing the shared memory | - | SharedMemoryAdmin
Executing operating system commands | - | SystemCmd
Managing DBM operators | - | UserMgm

More Information

  • Database Administration, Managing Users

  • Database Studio, DBM Operator: Creating, Editing, and Deleting

  • Database Manager CLI, user_getrights, user_put


System Copy - SAP Documentation

Background documentation System Copy

A system copy is a duplicate of an SAP system. You re-install all instances of the SAP system, but create the target database as a copy of the source database (database copy). Some settings in the target system may be different from those in the source system.

Homogenous System Copy

The following conditions apply to homogeneous system copies with SAP MaxDB databases:

  • Source and target systems must both use SAP MaxDB as their database.

  • The databases on the source and target computers must have the same version in the first three places of the version number (7.<minor>.<servicepack>). The build level of the database on the target computer must be equal or greater than the build level of the database on the source computer (7.<minor>.<servicepack>.<build>)

    As of SAP MaxDB 7.6, the service pack level of the database on the target computer may be higher than the service pack level of the database on the source computer.

  • The computer on which the database of the target system is running must use the same byte order as the computer on which the source system is running (compatible process architecture).

    Example Example

    Database computer of the source system: Little Endian —> Database computer of the target system: Little Endian

    Database computer of the source system: Little Endian —> Database computer of the target system: Big Endian

    End of the example.

One of the steps in creating a homogeneous system copy is creating a database copy.

More information:

  • Concepts of the Database System, Database Copy

  • SAP Note 129352 (Homogeneous System Copy with MaxDB)

Heterogeneous System Copy

  • The target system may use a different database system than the source system.

    Example Example

    Database of the source system: Oracle —> Database of the target system: SAP MaxDB

    End of the example.

  • The computer on which the database of the target system is running may use a different byte order than the computer on which the source system is run.

    Example Example

    Database computer of the source system: Little Endian —> Database computer of the target system: Big Endian

    Database computer of the source system: Little Endian —> Database computer of the target system: Little Endian

    End of the example.

More Information

SAP Note 1014782 (FAQ: MaxDB System Copy)


Backup ID - SAP Documentation

Background documentation Backup ID

The database system assigns a backup ID <IBID> to each backup. This provides a unique identification for all backups since the database was created or since it was last initialized.

<IBID> ::= <key><backup_type>_<sequence_no>

<key>

Key assigned by the system

<backup_type>

Backup type:

  • DAT (complete data backup)

  • PAG (incremental data backup)

  • LOG (log backup)

<sequence_no>

Sequence number

The database system numbers the data backups sequentially, regardless of whether they are complete or incremental. The database system numbers log backups separately.

If you are using third-party backup tools, the system assigns an external backup ID (EBID or External Backup ID).

After the backup is completed, the system writes the backup ID to the dbm.knl log file. The backup history contains information from this file. When you restore a database, you can display the backup history and select the required backup using its backup ID.

The Loader writes the external backup ID to the Loader log file and to the Loader-related system tables.

Recommendation Recommendation

If you use a tape as data carrier, write the backup ID on the tape label.

End of the recommendation.

More Information

Database Administration

  • Backing Up Databases

  • Log Files

Loader, Exporting and Importing Using Third-Party Backup Tools


Column - SAP Documentation

Background documentation Column

All values in a column of a database table have the same data type. A value in a row of a column is the smallest data unit that can be selected from a table, to which functions can be applied and that can be modified. Each column in a base table has a name that is unique within the table.

Column Types
Column Type | Description
Alphanumeric | Character string column All character strings in an alphanumeric column have the same length
Numeric | Floating or fixed point column All numbers in a floating point column have the same mantissa length All numbers in a fixed point column have the same format, that is, the same number of pre- and post-point decimal places
Columns
Property | Description (Links to SQL Reference Manual)
Name | Column Name (column_name)
Data Type | Data Type (data_type)
Dim | Dimension Maximum number of characters
Code Attribute | Code attribute
Key | If you select this option, you add this column to the primary key. Key Definition (key_definition) All columns in the primary key must be NOT NULL columns. You cannot use any columns of the LOB data type in the primary key. The database ensures that no NULL value exists in the key column and that no two data records in the table have the same values in all key columns.
Not Null | If you select this option, the value for this column cannot be a NULL value. Column Attributes (column_attributes)

More Information

SQL Reference Manual, Column Definition

Database Studio,

  • Creating Columns

  • Changing Column Properties

  • Deleting Columns


Shared Memory - SAP Documentation

Background documentation Shared Memory

Shared memory is the area of the working memory that is used by multiple processes of a database.

Example

The DBM server of a database can consist of multiple processes. These processes communicate via shared memory. This communication is necessary in the following situations:

  • To coordinate access to shared resources, such as the parameter file or the DBM server log file.

  • To transfer database parameters.

  • To retrieve the results of special DBM server processes, such as the Command Scheduler.

    The database system also saves the content of the DBM server's shared memory in the files. This ensures that the contents of the shared memory are also available even when no DBM server processes are active.

    More information: Database Administration, Miscellaneous Database Files

    Note Note

    DBM server processes from different databases cannot communicate with one another via shared memory.

    End of the note.

More Information

Database Manager CLI, Other Commands for Managing Database Manager


Complete Data Backup - SAP Documentation

Background documentation Complete Data Backup

During a complete data backup, the system writes the entire content of the data area a data carrier.

More Information

  • Database Administration, Backing Up Data

  • Database Studio, Backing up Data

  • Database Manager CLI, Backing Up and Restoring Database Instances

  • Database Administration in CCMS, Scheduling a Data Backup


User Kernel Thread - SAP Documentation

Background documentation User Kernel Thread

A user kernel thread (UKT) bundles several tasks that execute client queries. A database normally has multiple user kernel threads. You can use database parameters to configure the number of user kernel threads and the number and type of tasks that can run in a user kernel thread.

More Information

Concepts of the Database System

  • Threads

  • Load Balancing Between User Kernel Threads

Database Administration, Database Parameters

Database Administration in CCMS, Task Manager


Undo Log Entry - SAP Documentation

Background documentation Undo Log Entry

The database system writes undo log entries (before images) for every transaction that changes data in the database. In the undo log entries, the database system saves the original values of all database objects that the transaction changes.

The database system uses undo log entries if it has to undo an incomplete transaction (ROLLBACK).

More Information

Concepts of the Database System

  • How Databases Log Data Changes

  • Example: Consistent View


Trace Writer Task - SAP Documentation

Background documentation Trace Writer Task

The trace writer task is a task in the user kernel thread.

The trace writer task writes the database trace log file.

More Information

Concepts of the Database System, Tasks


Task - SAP Documentation

Background documentation Task

Tasks execute requests made to the database (either by users or by the database kernel). The database system executes tasks in user kernel threads.

Task Types

Name

Description

Database Analyzer task

Tasks for Database Analyzer

Database Analyzer tasks are taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter. More information: Support Parameter

Event task

Tasks for events

Event tasks are also taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter.

Floating Service task

Database Analyzer and Event tasks are taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter.

Idle task

Used for internal task scheduling

Log Writer

Log Writers write log entries from the log queue to the log area, for example after a COMMIT or during a savepoint.

There is a log writer for each log partition. More information: Log Area

You define the maximum number of log writers with the special database parameter MaxLogWriterTasks. More information: Special Database Parameters

Pager (formerly Data Writer)

Pagers write the data from the data cache to the data volumes at each savepoint. Writing a savepoint can take a long time for a large data cache. If necessary, Pagers also become active between savepoints, to write the changed data asynchronously.

During a restart of the database, Pagers read the converter pages from the data volumes into the converter.

The system calculates the number of Pagers required. It is primarily dependent on the size of the data cache and the number of data volumes.

Server task

Server tasks parallelize database functions. They are required, for example, to back up data and log entries, create indexes and to permanently delete tables. During a restart of the database, Server tasks import log entries and process transactions in parallel.

You can configure the number of Server tasks that are available using the MaxServerTasks special database parameter.

Server tasks can have special names that reflect how they are used, for example Savepoint, BackupMedium, BackupVolume, AutosaveCoordinator, AutosaveMedium.

Timer task

The Timer task is responsible for time-outs of SQL lock requests and checks whether log entries can be backed up.

Trace Writer task

The Trace Writer task writes the trace entries in the working memory when the database trace is switched on.

User task

User tasks execute SQL statements.

When a database user opens a database session, the database system assigns one User task to this database user.

User tasks create the main load for the processor.

You can configure the number of available User tasks using the special database parameter MaxUserTasks.

Utility task

The Utility task performs administration tasks.

More Information

Task State

Concepts of the Database System, Tasks

Database Administration in CCMS, Task Manager


U - SAP Documentation

Background documentation U


Timer Task - SAP Documentation

Background documentation Timer Task

The timer task is a task in the user kernel thread.

It is responsible for timeouts.

More Information

Concepts of the Database System, Tasks


User Task - SAP Documentation

Background documentation User Task

User tasks are tasks in the user kernel thread. User tasks execute SQL statements. When a database user opens a database session, the database system assigns one user task to this database user.

You can configure the number of available user tasks using the MaxUserTasks database parameter.

More Information

Concepts of the Database System, Tasks

Database Administration, General Database Parameters

Database Administration in CCMS, Task Manager


Trigger - SAP Documentation

Background documentation Trigger

See

  • Database Trigger

  • System Trigger


Update - SAP Documentation

Background documentation Update

During an update, you transfer the database software to a higher version.

Caution Caution

If there are databases that use the database software to be updated, you must carry out an upgrade.

End of the caution.

See your installation documentation for the description how to proceed.

More Information

Installation


Upgrade - SAP Documentation

Background documentation Upgrade

During an upgrade, you transfer the database and the database software to a higher version.

Note Note

If there are no databases that use the database software to be updated, carry out an update.

End of the note.

See your installation documentation for the description how to proceed.

More Information

Installation


Administration - SAP Documentation

Background documentation Administration

As the administrator of an SAP MaxDB database, you must carry out certain administration tasks on a regular basis. Backups are one example of such a task. Many administration tasks can be automated. Certain events may lead to additional administration tasks, for example a database restore after a hardware failure.

More Information

Database Administration


Encryption - SAP Documentation

Background documentation Encryption

You have the following encryption options:

  • You can encrypt backups.

  • SAP customers can encrypt the communication between clients (interface to an application or database tool) and the global listener/SAP MaxDB X servers (communication servers) using SSL/TLS.

More Information

Database Administration, Encryption


Version - SAP Documentation

Background documentation Version

The current version number of SAP MaxDB is 7.8. SAP MaxDB and SAP liveCache use the same version numbers.

The version information for the database software is provided according to the following notation:

<major>.<minor>.<servicepack>.<build>

Version Notation
Name | Number of Digits | Description
major | 1 | Major version number
minor | 1 | Minor version number
servicepack | 2 | Service pack number
build | 2 | Build number

Example Example

MaxDB 7.8.02.04

End of the example.

In technical areas, the following notation with a three-digit build number is also frequently used:

<major>.<minor>.<servicepack> Build <build>

Example Example

MaxDB 7.8.02 Build 004

End of the example.

To display the version of your database software, you can use Database Studio, Database Manager CLI or the CCMS (for SAP systems only).

The version number of the database software is the same as the version number of the database and of Database Manager CLI. The Database Manager CLI software is part of the base package of the database software and can only be installed together with that software. To display the version of your database software, you can therefore use the dbm_version DBM command. If you have already created databases, you can also use the db_enum DBM command.

More Information

Database Studio, Displaying Database Properties

Database Manager CLI, dbm_version, db_enum

Database Administration in CCMS, Properties


Thread - SAP Documentation

Background documentation Thread

A database includes multiple operating system threads which are responsible for executing tasks.

There are two types of threads: user kernel threads (UKTs) and special threads. The number of user kernel threads and special threads depends on the hardware configuration, the number of volumes used, and the way the database parameters are set.

More Information

  • Database Administration, Database Parameters

  • Concepts of the Database System, Threads

  • Database Studio, Displaying Information About Threads

  • Database Administration in CCMS, Thread Overview


Virtual Host - SAP Documentation

Background documentation Virtual Host

In hot standby systems, the virtual host is the computer in the cluster on which the master database of the hot standby system is currently running.

More Information

Database Administration, Architecture of a Hot Standby System


Variable - SAP Documentation

Background documentation Variable

See

  • Documentation Variables

  • Parameters in SQL Statements


Template - SAP Documentation

Background documentation Template

Installation Manager and Database Studio provide database templates for creating databases with predefined properties.


Task State - SAP Documentation

Background documentation Task State

The task state provides information as to whether a task is currently active and what it is currently doing

Task States
Old Name | New Name (as of software version 7.7.03.15 ) | Description
AsynClose | Stream Close | Task is closing I/O ports after backup or restore.
AsynCntl | - | Task is determining parameters or initializing a backup device.
AsynIO | Stream IO | Task is executing I/O operation (during backup or restore).
- | Stream Init | Task is initializing backup or restore operation.
AsynOpen | Stream Open | Task is opening I/O ports for backup or restore.
AsynWaitRead/Write | Stream Wait(R)/(W) | Task is waiting for the end of an I/O operation during backup or restore (W: Write, R: Read).
Command reply | Command reply | Task is sending the result of a request to the application.
Command wait | Command wait | Database session without a request.
Connect wait | Connect wait | Task is already running and waiting for the database session to be created.
Continue | Continue | Tasks is in the process of releasing another task from the Stopped state.
DcomObjCalled | LCApp Called | Task is executing an SAP liveCache application routine.
Inactive | Inactive | Task is free (not linked) and cannot run. The task does not have a stack.
InsertEvent | Insert Event | Task is generating an event.
- | IO CPort Wait | Task is waiting for an RTE Completion Port.
- | IO Job Execute | Task is executing an I/O job.
- | IO Job Wait | Task is waiting for the end of an I/O job.
IO wait (W/R) | IO wait (W/R) | Task is waiting for the result of an I/O operation (W: Write, R: Read).
Locked | Locked | Task was locked as the kernel was shut down (to avoid this task being rescheduled).
Mark for Start | Startable | Task is free (not linked) and cannot run. The task already has a stack (system has already allocated all resources) and is waiting for the start.
RescheduleMsec | RescheduleMsec | Short-term wait situation, task will run again automatically after a predefined time span (in microseconds).
Runnable | ShareLck Yield | Task can run now, but has been displaced due to long runtime or priority of another task.
Runnable | ExclLock Yield | Task can run now, but has been displaced due to long runtime or priority of another task.
Running | Running | Task is running, using CPU.
Spinlock loop | Spinlock Loop | Task is trying to obtain a spinlock.
SpinlockYield | Spinlock Yield | Task gives up control voluntarily. This situation occurs when the task has just tried to obtain a spinlock but without success.
Stopped | Stopped | Task was stopped by the kernel and is waiting to run again.
Terminated | Terminated | Task or database session was ended.
UNKNOWN | UNKNOWN | Task state is unknown.
Vattach | Volume Attach | Task is opening I/O ports (volumes, normal operation).
Vbegexcl | Enter ExclLock | Task is waiting to be allowed to enter a protected area exclusively.
Vdetach | Volume Detach | Task is closing I/O ports (volumes).
Vdevsize | - | Task is determining the size of a volume or formatting a volume.
Vdualvectorio | Dual Vector IO | Task is performing a vector I/O operation (read or write) on two volumes in parallel.
vdiaginit | Trace init | Task is initializing the trace volume.
Vendexcl | Leave ExclLock | Task is leaving a protected area.
VenterRWRegion | Enter ShareLck | Task is waiting to be allowed to enter a conditionally shared area.
Vfclose | File Close | Task is closing a file.
Vfopen | File Open | Task is opening a file.
Vfwrite | File Write | Task is writing to a file.
VleaveRWRegion | Leave ShareLck | Task is exiting a protected, conditionally shared area.
- | VolumeFormatW | Task is waiting for a volume to be formatted.
Vopmsg | Message Output | Task is writing a message to one of the following database files: knldiag, knldiag.err, opmsg[n]
Vrelease | Connect Close | Task is ending the database session.
Vshutdown | DB OFFLINE | Task is changing the operational state of the database from ONLINE to OFFLINE.
Vsleep | Sleeping | Short-term wait situation, task will run again automatically after a predefined time span.
Vsuspend | Suspend | Task is suspended and waiting to be awoken explicitly by another task (Vresume). There are special Vsuspend wait situations that are displayed under a specific name. More information: Vsuspend Task States table
Vvectorio | Vector IO | Task is executing a vector I/O operation (read or write).
- | Volume Format | Task is formatting volume(s).
- | IOComPort Wait | Task is waiting for an I/O order confirmation from the I/O completion port.
- | Aborting | Task is exiting the database session.
Yielding | - | Task gives up control voluntarily.
- | Initialized | Task was initialized.
WaitForEvent | Wait For Event | Task is waiting for an event.
Vsuspend Task States
Name | Description
DB FULL | The data area is full and cannot accept any more pages. Add a new data volume.
DC OvFlow | The data cache is operating at capacity and cannot accept any new data. Only after the system has written pages from the data cache to the volumes can the data cache accept new pages. If you frequently observe DC OvFlow states, check whether your data cache is large enough or the I/O system too slow.
InvNodeExcl | Can occur while accessing B* trees that represent an index. A task is trying to set an exclusive lock on a non-root page of a B* tree but has to wait due to a lock collision.
InvNodeShare | Can occur while accessing B* trees that represent and index. A task is trying to set a shared lock on a non-root page of a B* tree but has to wait due to a lock collision.
InvRootExcl | Can occur while accessing B* trees that represent an index. A task is trying to set an exclusive lock on the root page of a B* tree but has to wait due to a lock collision.
InvRootShare | Can occur while accessing B* trees that represent and index. A task is trying to set a shared lock on the root page of a B* tree but has to wait due to a lock collision.
LOG FULL | The log area is full. You have to back up your log entries.
LogIOWait | Can occur during a commit Waiting for a log page to be written to the log area.
LogQ FULL | The log queues are operating at capacity and cannot accept any new redo log entries. Only when the log writer has written data from the log queues to the log area can the log queues accept log entries again. If you frequently observe LogQ Full states, check whether your log queues are too small or the I/O system too slow.
ObjNodeExcl | Can occur while accessing page chains which represent SAP liveCache objects. A task is trying to set an exclusive lock on a non-root page of a page chain but has to wait due to a lock collision.
ObjNodeShare | Can occur while accessing page chains which represent SAP liveCache objects. A task is trying to set a shared lock on a non-root page of a page chain but has to wait due to a lock collision.
ObjRootExcl | Can occur while accessing page chains which represent SAP liveCache objects. A task is trying to set an exclusive lock on the root page of a page chain but has to wait due to a lock collision.
ObjRootShare | Can occur while accessing page chains which represent SAP liveCache objects. A task is trying to set a shared lock on the root page of a page chain but has to wait due to a lock collision.
SVP-End | Can occur while a savepoint is active A task is trying to execute an operation which needs to be synchronized with the savepoint
SyncRedo | During a redo, the system writes information on all transactions which need to be repeated to transaction-specific files. These files are processed by a redo server when the respective commit time stamp is reached in the redo process. As long as the commit time stamp has not yet been reached, the redo task has to wait.
TableNodeExcl | Can occur while accessing B* trees that represent permanent data. A task is trying to set an exclusive lock on a non-root page of a B* tree but has to wait due to a lock collision.
TableNodeShare | Can occur while accessing B* trees that represent permanent data. A task is trying to set a shared lock on a non-root page of a B* tree but has to wait due to a lock collision.
TableRootExcl | Can occur while accessing B* trees that represent permanent data. A task is trying to set an exclusive lock on the root page of a B* tree but has to wait due to a lock collision. Tasks request exclusive locks on B* trees for structure-changing operations such as tree balancing, among others.
TableRootShare | Can occur while accessing B* trees that represent permanent data. A task is trying to set a shared lock on the root page of a B* tree but has to wait due to a lock collision. As a rule, all operations on a B* tree begin with a shared lock, which is refined as the operation descends into the B* tree, that is, it is extended to become an exclusive or shared lock at non-root level.
Vwait | Task is waiting to be awoken explicitly by another task (Vsignal). Example: Task is waiting for an SQL lock.

More Information

Concepts of the Database System, Tasks

To display information about tasks, use Database Studio, Database Manager CLI or DBA Cockpit (in SAP systems only).

  • Database Studio, Displaying Information About Tasks

  • Database Manager CLI, show

  • Database Administration in CCMS, Task Manager

  • XCONS documentation


Transaction - SAP Documentation

Background documentation Transaction

A transaction is a sequence of SQL statements that the database system treats as a unit. A transaction brings the database from one consistent state to another. If a transaction is interrupted, then the database system returns the database to the state it was in before the transaction began (ROLLBACK).

More Information

  • Concepts of the Database System, Transactions

  • SQL Reference Manual, Transactions

  • Database Administration in CCMS, Transactions


View Table - SAP Documentation

Background documentation View Table

A view table is a view of an existing table. A view table never actually exists physically but is created from the rows of the underlying base table(s).

View: Properties

Property

Description (Link to SQL Reference Manual)

View Name

The same rules as for table names apply: Table Name (table_name)

Schema

Schema Name (schema_name)

Check on Insert and Update

If this option is set, you cannot use INSERT or UPDATE statements on the view table to generate any rows that can afterwards no longer be selected via the view table. Resulting rows must fulfill the view table's search condition.

The option is inherited. This means that, if you have defined a view table VIEWTABLE1 with this option and are using VIEWTABLE1 in the FROM condition of a modifiable view table VIEWTABLE2, then only rows that can be selected using VIEWTABLE1 may be added or modified with VIEWTABLE2.

Replace Existing View

If you choose these option, the view table replaces a previously existing view table.

More Information

  • SQL Reference Manual, CREATE VIEW Statement (create_view_statement)

  • SQL Tutorial, View Tables

  • Database Studio,

    • Creating View Tables

    • Renaming View Tables

    • Deleting View Tables


V - SAP Documentation

Background documentation V


Timeout - SAP Documentation

Background documentation Timeout

The timeout value determines the maximum duration of inactivity in a database session. The duration of inactivity is the time interval between ending an SQL statement and sending the next SQL statement. When the timeout value is exceeded, the database system ends the database session with a ROLLBACK.

You can configure the timeout value in the following way:

  • You can use the SessionTimeout special database parameter to configure the default timeout value for all users of the database.

  • You can specify a special timeout value for a single user with a CREATE USER statement or an ALTER USER statement.

The database system always uses the smallest of these timeout values for a database session. When you log on to the database, you can also select an even smaller timeout value for the duration of the database session.

Timeout values are specified in seconds.

More Information

Database Administration, Special Database Parameters

SQL Reference Manual, CREATE USER, ALTER USER Statement, CONNECT Statement


Table ID - SAP Documentation

Background documentation Table ID

Each table in the database has a table ID of a fixed length, which uniquely identifies the table. The database system uses the table ID to access a table.

To access a table with an SQL statement, you specify the table name (not the table ID).

The allocation of the table name to the table ID is stored in the database catalog; the allocation of the table ID to the B* trees is stored in the internal file directory.

More Information

Concepts of the Database System, Logical Access Structures


Default Parameter File - SAP Documentation

Background documentation Default Parameter File

The cserv.pcf default parameter file contains the default values for the database parameters and a description of the permitted values.

More Information

Database Administration

  • Configuration Files

  • Database Parameters


Transaction File - SAP Documentation

Background documentation Transaction File

The transaction file is an internal file in the data area of the database. At savepoints, the system writes information about open transactions into this file.

The log reader uses the transaction file when restarting or restoring the database to recreate the transaction list.

More Information

Concepts of the Database System, How Databases Log Data Changes


Trace - SAP Documentation

Background documentation Trace

You can activate different traces to create a detailed log of the messages issued by the database system.

More Information

Database Administration, Traces

Database Administration in CCMS, Tools


Tutorial - SAP Documentation

Background documentation Tutorial

The following tutorials are available:

  • SQL Tutorial

  • Loader Tutorial


Undo Log File - SAP Documentation

Background documentation Undo Log File

The database system writes undo log entries (before images) for transactions that change data in the database system. These undo log entries are written to undo log files in the data area.

More Information

Concepts of the Database System, How Databases Log Data Changes


Table Name - SAP Documentation

Background documentation Table Name

Each table in a database has a unique name.

If you specify a table name in an SQL statement without specifying an owner or a schema, then the database system searches through the database catalog for the table name in the following order:

  1. Catalog part of the current owner

  2. Set of PUBLIC synonyms

  3. Catalog part of the database administrator who created the user currently logged on

  4. Catalog part of the database system administrator

  5. Catalog part of the owner of the system tables

You can only access tables from another owner or schema if you already have the necessary privileges.

More Information

  • Database Studio,

    • Creating Tables

    • Changing Table Properties

    • Deleting Tables

  • SQL Tutorial,

    • Tables

    • View Tables

  • SQL Reference Manual,

    • Table Name

    • Definitions of the System Tables


View - SAP Documentation

Background documentation View

See View Table


Directory - SAP Documentation

Background documentation Directory

When installing SAP MaxDB software of version 7.8 and higher, the software and database are stored in the following directories:

Installation Directories from Database Version 7.8
Path Name | Variable Name | Properties | Shared | Stored Components
Global programs path | GlobalProgPath | Once per computer only, can be defined for the first installation on a computer* | By all SAP MaxDB installations on this computer | Installation tools (for example: sdbuninst, sdbverify, sdbconfig), global listener (sdbgloballistener)
Global data path | GlobalDataPath | Once per computer only, can be defined for the first installation on a computer* | By all SAP MaxDB installations on this computer | Parameter and log files of the SAP MaxDB installations (for example: installation registry and installation log files, database parameter files, knldiag file, etc.)
Installation path | InstallationPath | Once per installation, several installation paths on a computer allowed | No | Database server software, like database kernel, X server software (for SAP MaxDB versions < 7.8), and database client software, like DBMCLI, SQLDBC
Private data path | Private Data Path | Optional, can be defined once per installation, several private paths on a computer are allowed | No | If defined: All database related files are stored here and not in the global data path

Note Note

* If there are previous installations of SAP MaxDB on this computer, the relevant software will be stored under the existing path.

End of the note.

More Information

  • Database Manager CLI, dbm_getpath

  • Database Studio, Displaying the Database Properties

    Database Administration in CCMS, Properties

  • Glossary, Run Directory, Log File, Configuration File, Documentation Variable


Utility Task - SAP Documentation

Background documentation Utility Task

Utility tasks are tasks in the user kernel thread. They execute administrative actions.

More Information

Concepts of the Database System, Tasks


Unicode - SAP Documentation

Background documentation Unicode

Unicode is an international standard character set. The Unicode character set provides a unique representation for all characters used in alphabets. The ASCII character set, on the other hand, is suited only for use with English and Central European characters.

SAP MaxDB supports Unicode according to ISO 10646. Internally, the database system stores Unicode data in UTF-16/UCS-2 format. This requires twice as much storage space as saving the data in ASCII format, since the coding is 16-bit rather than 8.

You can use Unicode for the database catalog and for application data.

  • Database catalog:

    In database versions prior to and including 7.6 you can select whether the database catalog is saved in Unicode or ASCII. From Version 7.7 the database catalog is always saved in Unicode.

    For more information about migrating your database, see your installation and upgrade documentation.

  • Application data:

    To store application data of a CHAR, VARCHAR or LOB type column in Unicode, select UNICODE as code attribute for the column.

    To configure UNICODE as default code attribute for all CHAR, VARCHAR and LOB data type columns, select UNICODE for the DefaultCodePage special database parameter.

    The following requirements must be met so that the code attribute can be changed for a column that already contains data:

    • ASCII -> Unicode: All values in the column still fit into the column after conversion (Unicode data requires twice as much space as ASCII data).

    • Unicode -> ASCII: The values contain only characters that are part of the ASCII character set.

Which Database Tools Support Unicode?
Database Tool | Unicode Supported*
Database Studio | Yes
Database Manager | Yes
Loader | Yes
SQLCLI | No
XUSER | Limited You can import user names and passwords from a file into XUSER in Unicode only by using option -b, but you cannot enter them directly on the command line.
* Note when using command line programs that the command line environment must also support Unicode.
Which Interfaces Support Unicode?
Interface | Unicode Supported
JDBC | Yes
ODBC | Yes
Perl | Yes
PHP | No
Python | Yes
SQLDBC | Yes
WebDAV | Yes

More Information

SQL Reference Manual, Code Attribute


Hit Rate - SAP Documentation

Background documentation Hit Rate

The hit rate is the number of times a cache was accessed successfully as a proportion based on the total number of times the cache was accessed. A cache is accessed successfully if the required data is in the cache at the time the access takes place.

More Information

  • Database Studio, Displaying Information About Caches (Working Memory Areas)

  • Database Manager CLI, Info

  • Database Administration in CCMS, Caches


Volume - SAP Documentation

Background documentation Volume

The database system permanently stores the data and log entries of a database in volumes.

Volumes: Types
Type | Main Content
Data Volume | Data Database Catalog Undo Log Entries
Log Volume | Redo Log Entries
Volumes: Properties

Property

Description

Size

Minimum size: 1000 pages or 8000 KB

Device/File

Device/path and file name

Type

Type of physical memory

  • FILE (F)

    A volume can be a part of a physical hard disk, a complete physical hard disk, or a storage system consisting of several storage units.

    Can be used on all operating systems

  • LINK (L)

    Can only be used on Unix and Linux

  • RAW (R)

    Raw device

    Can only be used on Unix and Linux

Data Volume: Example
Property | Sample Data
Name | DISKD0001
Size | 256 MB
Device/File | C:\ProgramData\sdb\globaldata\DEMODB\volumes\data\DISKD0001
Type | FILE
Log Volume: Example
Property | Sample Data
Name | DISKL0001
Size | 50 MB
Device/File | C:\ProgramData\sdb\globaldata\DEMODB\volumes\log\DISKL0001
Type | FILE

More Information

  • Database Administration, Planning the Database

  • Concepts of the Database System, Volumes (Permanent Storage)

  • Database Studio, Adding Data Volumes, Deleting Data Volumes, Adding Log Volumes

  • Database Manager CLI, Configuring Database Instances, db_addvolume

  • Database Administration in CCMS, Data Area, Log Area, Volumes


Documentation Variable - SAP Documentation

Background documentation Documentation Variable

In the documentation, the syntax of commands is described using variables. Variables in the documentation are indicated by angled brackets: <variable>

Example Example

The syntax of the db_create command is described in the documentation as follows:

dbmcli db_create <database_name> <dbm_operator>,<dbm_operator_password>

To execute the DBM command, enter values in place of the variables <database_name>, <dbm_operator>, <dbm_operator_password>, for example:

dbmcli db_create DEMODB DBM,DBM

End of the example.

The following table lists the most commonly used variables and example values for them.

Documentation Variables and Example Values

Variable

Example Values

Description

<arch>

ia64

Architecture (processor)

<build>

24

Build number of the database software (part of the version number)

<computer_name>

GENUA

PARMA

SIENA

COMO

Computer name

<database_computer>

GENUA

PARMA

SIENA

COMO

Name of the computer on which the database is installed

<data_path>

You can display the path using one of the following two methods:

  • dbm_getpath DBM command:

    dbmcli dbm_getpath DataPath

    For more information, see Database Manager CLI, dbm_getpath.

  • Database Studio, Displaying the Database Properties

Data path

If you have defined a private data path, <data_path>=<private_data_path>.

If you have not defined a private data path, <data_path>=<global_data_path>.

<database_name>

DEMODB

TESTDB

SAMPLEDB

Database name

<database_user>

MONA

DAVID

BORIS

NINA

Database user

<database_user_password>

RED

BLUE

PINK

BLACK

Password of the database user

<dbm_operator>

DBADMIN

DBM

OLEG

ELENA

JULIE

Name of the DBM operator

<dbm_operator_password>

SECRET

DBM

MONDAY

SUNDAY

TUESDAY

Keyword of the DBM operator

<file_name>

sample.txt

File name

<global_data_path>

You can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalDataPath

Global data path

For more information, see Directory.

<global_programs_path>

You can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalProgPath

Global programs path

For more information, see Directory.

<installation_path>

You can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

Installation path

For more information, see Directory.

<os>

Microsoft Windows

Operating system

<os_user>

ANNA

Name of the operating system user

<os_user_password>

MAY

Password of the operating system user

<package_name>

a) APO LC APPS

b) 20050512183812.prt

a) Name of the software package during installation

b) Name of the Loader command file (see Loader, Command File)

<password>

SECRET

Password

<path>

C:\test

Path

<private_data_path>

If you have configured a private data path during installation, you can display the path using the dbm_getpath DBM command:

dbmcli dbm_getpath DataPath

Note that if you have not configured a private data path, the global data path will be used as data path.

Private data path

For more information, see Directory.

<sdb_user>

sdb

On Unix and Linux:

Special operating system user for SAP MaxDB

More information: Database Administration, <sdb_user> (Special Operating System User)

<sdba_group>

sdba

On Unix and Linux:

Special operating system user group for SAP MaxDB

More information: Database Administration, <sdba_group> (Special Operating System Group)

<sysdba_user>

DBADMIN

Name of the database system administrator

<sysdba_user_password>

SECRET

Password of the database system administrator

<tool>

Loader

Database tool name

<user_home>

  • Microsoft Windows:

    C:\Documents and Settings\anna

  • Unix and Linux: /home/anna

Home directory of the operating system user

<user_key>

SAMPLEKEY

XUSER user key

<user_name>

-

See <database_user>

<version>

7.8.00.07

Version number of the database software

<virtual_server_name>

VIRTUAL_SERVER

HOTEL_VIRTUAL

Name of the virtual computer in a hot standby system

More Information:Database Administration, Hot Standby

More Information

Directory

Syntax Notation

Naming Conventions


Table - SAP Documentation

Background documentation Table

A table is a set of rows. Each row in a table has the same number of columns and contains a value for each column.

Table Types
Table type | Description
Base table | System tables and all tables containing application data are base tables. Base tables are saved permanently.
Results table | The database system creates unnamed result tables when a SELECT statement is executed and then deletes them at the end of the session. The database system creates named result tables when a DECLARE CURSOR statement is executed.
Join table | A join table is a special results table that the database system creates when two or more tables are linked.
System Table | A system table is a base table that contains system information (information about the database objects, states, statistics, monitor data; Loader system tables).
Temporary table | A temporary table is a special base table that the database system deletes at the end of the session. Temporary tables belong to the TEMP schema.
View Table | A view table is derived from a base table and its definition is saved permanently. View tables themselves contain no data, they only provide a view of the data.

The database system automatically increases and decreases the size of tables without the administrator having to take any action. The database system uses database-internal striping to distribute the data in a table evenly across all the data volumes. You can neither influence how the data is distributed across the data volumes nor can you find out which tables are saved in which data volumes.

Table Properties
Columns
Property | Description (Links to SQL Reference Manual)
Name | Column Name (column_name)
Data Type | Data Type (data_type)
Dim | Dimension Maximum number of characters
Code Attribute | Code attribute
Key | If you select this option, you add this column to the primary key. Key Definition (key_definition) All columns in the primary key must be NOT NULL columns. You cannot use any columns of the LOB data type in the primary key. The database ensures that no NULL value exists in the key column and that no two data records in the table have the same values in all key columns.
Not Null | If you select this option, the value for this column cannot be a NULL value. Column Attributes (column_attributes)
Constraints
Property | Description (Links to SQL Reference Manual)
Name | Constraint Name (constraint_name)
Definition | CONSTRAINT Definition (constraint_definition)
Indexes
Property | Description (Link to SQL Reference Manual)
Index name | Index Name (index_name)
In Index | Indicates whether a column belongs to the index
Sort | Sort sequence
Name | Column name
Data Type | Column data type You cannot use LOB columns in an index.
Unique | Indicates whether the values for this columns must be unique UNIQUE Definition (unique_definition)
Disabled | Indicates whether the index is deactivated
Usage Count | Indicates how often the system has used the index
Bad | Indicates whether the index is damaged
Foreign Keys
Property | Description (Link to SQL Reference Manual)
Name | Foreign key name
Referencing Columns | Referencing column Referential CONSTRAINT Definition (referential_constraint_definition)
Reference Schema | Schema to which the table with the column that is referenced belongs
Reference Table | Table to which the column that is referenced belongs
Reference Column | Column which is referenced
Rule | Rule for behavior of the table referenced if a data record is deleted in the referencing table DELETE Rule (delete_rule)
Optimizer Statistics
Property | Description
Columns and Indexes | Columns and indexes
Distinct Values | Estimated number of lines in the table
Page Count | Estimated table size (in pages) This size affects which search strategy is selected by the system. More information: SQL Optimizer, Search Strategies
Last Statistics Update | Time of the last statistics update
Table: Miscellaneous

Property

Description (Link to SQL Reference Manual)

Sample Type

Sample type that the system uses for estimating the statistics for the SQL Optimizer

More information:

  • Updating SQL Optimizer Statistics

  • SQL Reference Manual, SAMPLE Definition (sample_definition)

Sample Data

Sample value (in data records or percent) that the system uses for estimating the statistics for the SQL Optimizer

Table Size

Information about the current table size

Clustered

Only for SAP NetWeaver BI systems with BW Feature Pack

This attribute has the result that the database does not distribute pages in single blocks of 8 KB across all volumes, rather, where possible it saves the contents in larger, contiguous blocks in the data volumes.

More information:

  • SAP Note 1040431

  • MaxDB Wiki: https://wiki.sdn.sap.com/wiki/x/W0o

Virtual Primary Key

Only for SAP NetWeaver BI systems with BW Feature Pack

For tables which have no primary key, the system forms a primary key internally and sets the Clustered attribute. Columns which the system uses for the primary key do not need to have the UNIQUE attribute.

Packed

Only for SAP NetWeaver BI systems with BW Feature Pack

The system stores numerical columns that are not key columns in compressed form.

More Information

  • Database Studio,

    • Creating Tables

    • Changing Table Properties

    • Deleting Tables

  • SQL Tutorial,

    • Tables

    • View Tables

    • Joins: Information From Several Tables

    • Data Query

  • SQL Reference Manual,

    • Data Definition

    • QUERY Statement (query_statement)

    • Definitions of the System Tables


Transaction List - SAP Documentation

Background documentation Transaction List

The transaction list is an internal list of all open transactions. The transaction list is located in the working memory. The transaction entry for an open transaction in the transaction list contains, for example, references to any existing redo log entries and undo log entries.

The log reader uses the transaction file when restarting or restoring the database to recreate the transaction list.

More Information

Concepts of the Database System, How Databases Log Data Changes


T - SAP Documentation

Background documentation T


Activating Automatic Database Start - SAP Documentation

Procedure documentation Activating Automatic Database Start

You can configure your system so that the database, global listener and X servers (database communication servers necessary for remote communication) are started automatically when the database computer is started and are stopped automatically when it is shut down.

Procedure

Microsoft Windows

  1. Activate the automatic database start when you create the database.

    More information:

    • Database Studio, Creating the Database

    • Database Manager CLI, db_create

    The system sets the Startup Type for the database kernel service, the global listener and the X servers to Automatic.

    More information: Glossary, Service

  2. To activate or deactivate the automatic database start later, use Database Manager CLI.

    More information: Database Manager CLI, db_reg

Unix and Linux

  1. Write a start script.

    More information: Example: Start Script for a Database (Linux)

  2. Create symbolic links to the start script in the necessary Runlevel directories.

    For more information about starting programs automatically, see your operating system documentation.


B* Trees for Tables with LOB Columns - SAP Documentation

Background documentation B* Trees for Tables with LOB Columns

The database system creates the following B* trees for the LOB values of a table:

  • One B* tree for the data records (primary tree), sorted by primary key

  • A common B* tree for all the short LOB values (LOB values < 8 KB)

  • One additional B* tree for each long LOB value (LOB values > 8 KB)

For the values of the LOB column, the leaf pages of the primary tree contain either links to the common B* tree for the short LOB values or a link to the B* tree of the respective long LOB value.

The following figure shows the B* trees for a table with a LOB column, which contains two short LOB values and two long LOB values.

This graphic is explained in the accompanying text.

Example: B* Trees for a Table with a LOB Column

More Information

Logical Access Structures


B* Trees for Tables with Indexes - SAP Documentation

Background documentation B* Trees for Tables with Indexes

The database system creates a B* tree for every index of a base table.

It stores the inversion lists of the index as follows:

  • 1:1 relationship between index (secondary key) and primary key:

    The database system stores the inversion list directly on the corresponding leaf page of the B* tree of the index.

  • 1:n relationship between index and primary keys:

    The database system also stores the inversion list directly on the corresponding leaf page of the B* tree of the index (flat list). If the inversion list becomes too large for the leaf page, the database system creates another B* tree for this inversion list. The leaf page of the B* tree of the index then contains only the reference to the B* tree of the inversion list.

Example

The CUSTOMER table contains the names of all the customers of a hotel.

  • Primary key: Customer number cno

  • Index: Last name name

CUSTOMER Table
cno (Primary Key) | name (Index) | firstname
2003 | Miller | Frank
2011 | Griffith | Mary
2078 | Miller | Jane
2104 | Miller | Susan
2295 | Miller | Sally

The index contains the following inversion lists:

Inversion Lists
Name | Index | Primary Key
Inversion List 1 | Griffith | 2011
Inversion List 2 | Miller | 2003, 2078, 2104, 2295

The database system stores inversion list 1 directly on the leaf page of the B* tree of the index.

For inversion list 2, the database system creates an additional B* tree because there is not enough space on the leaf page of the B* tree of the index.

More Information

Logical Access Structures


Example: DELETE Statement - SAP Documentation

Background documentation Example: DELETE Statement

In the ADDRESS table, the CITY column is defined as the primary key.

A user enters a DELETE statement to delete from the table the entry Apach for the primary key field CITY.

  1. The database system deletes the data record and its position entry from the corresponding leaf page.

    This leaves gaps in the leaf page.

  2. The database system closes these gaps and then updates the address information in the position list of the leaf page.

More Information

Logical Access Structures


Example: INSERT Statement - SAP Documentation

Background documentation Example: INSERT Statement

In the ADDRESS table, the CITY column is defined as the primary key.

A user enters an INSERT statement to insert into the ADDRESS table a new entry with the value Arbon for the primary key field CITY.

  1. The database system inserts the data record after the last data record on the leaf page.

    If there is not enough space on the respective leaf page of the B* tree for the new data record, the database system adds a new leaf page and redistributes the data records. More information: Rebalancing

  2. The database system updates the position list by inserting the position entry of the new data entry at the correct place in the position list.

More Information

Logical Access Structures


Redo Log Management - SAP Documentation

Background documentation Redo Log Management

Redo log management is the part of the database software that manages redo log entries. You can switch redo log management off.

Caution Caution

Do not switch redo log management off in normal database operation. When redo management is switched off, the system does not write regular savepoints. This means that if you restart your database after a database crash, you lose all data since the last savepoint. If you have to restore your database, you can only restore it to the state of the last data backup.

Only consider switching redo log management off in special situations, for example in a test system or during a large load job.

End of the caution.

More Information

Concepts of the Database System, How Databases Log Data Changes

Database Studio, Changing Log Settings

Database Manager CLI, param_addvolume

Database Administration in CCMS, Log Area


RESOURCE User - SAP Documentation

Background documentation RESOURCE User

RESOURCE users are database users who have additional rights compared to STANDARD database users. They can, for example, grant certain privileges to other users.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

More Information

Database Administration, Database Users

Database Studio, Creating Database Users, Changing the Properties of Database Users

SQL Tutorial, Database Users and Their Privileges

SQL Reference Manual, CREATE USER Statement


ROLL FORWARD - SAP Documentation

Background documentation ROLL FORWARD

With a ROLL FORWARD the database system repeats the effects of transactions that have already been completed, for example when restarting after a power outage.

More Information

Concepts of the Database System,

  • How Databases Log Data Changes

  • Example: Restart


ROLLBACK - SAP Documentation

Background documentation ROLLBACK

During a ROLLBACK, the database system undoes all changes that a transaction executed in the database. To do this, the database system uses the transaction's undo log entries.

The database system then releases all locks that have been allocated to the transaction, implicitly deletes all results tables that have been generated by the transaction, and opens a new transaction.

Note Note

Any changes that are have been completed by a COMMIT can no longer be reversed by a ROLLBACK.

End of the note.

A ROLLBACK can be explicitly requested using the ROLLBACK statement.

More Information

SQL Reference Manual, ROLLBACK Statement

Concepts of the Database System, How Databases Log Data Changes


Redo Log Entry - SAP Documentation

Background documentation Redo Log Entry

Redo log entries (or after images) are used by the database system for logging data changes. Redo log entries are needed when the system has to repeat a completed transaction, for example after a system failure.

More Information

Concepts of the Database System, How Databases Log Data Changes


Query Tool - SAP Documentation

Background documentation Query Tool

Query tools are database tools you can use to access data and the database catalog, create and implement SQL queries and create and manage database objects and database users.

The following query tools are available:

  • Database Studio

  • SQLCLI

More Information

Concepts of the Database System, Database Tools


Reorganization - SAP Documentation

Background documentation Reorganization

It is not necessary to reorganize data in the SAP MaxDB database system.

More Information

Concepts of the Database Systems, How Databases Store Data and Log Entries


Resource Monitor - SAP Documentation

Background documentation Resource Monitor

You can use the resource monitor to monitor resource usage in the database and identify expensive SQL statements.

More Information

Database Studio,

  • Configuring and Starting SQL Performance Monitoring

  • Analyzing SQL Performance Bottlenecks

Database Administration in CCMS, Resource Monitor


Restriction - SAP Documentation

Background documentation Restriction

Several restrictions apply to SAP MaxDB databases, such as the maximum number of data volumes a database can have or how many columns are allowed in an index.

More Information

Database Administration, Planning the Database

SQL Reference Manual, Restrictions for SQL Statements


Reserved Word - SAP Documentation

Background documentation Reserved Word

See Keyword


Raw Device - SAP Documentation

Background documentation Raw Device

A raw device is a hard disk or part of a hard disk not managed by the operating system. On Unix and Linux systems, you can use raw devices as volumes.

More Information

  • Database Administration, Planning the Database

  • Concepts of the Database System, Volumes (Permanent Storage)

  • Database Studio, Adding Data Volumes, Deleting Data Volumes, Adding Log Volumes

  • Database Manager CLI, Configuring Database Instances, db_addvolume

  • Database Administration in CCMS, Volumes


Q - SAP Documentation

Background documentation Q


Redo Log Manager - SAP Documentation

Background documentation Redo Log Manager

The redo log manager is a service task that runs in the user kernel thread.

When the database is restarted or recovered, the redo log manager ensures that the necessary redo log entries are made available and are processed in the correct chronological order. The redo log manager starts the log reader and the redo tasks.

More Information

Concepts of the Database System

  • How Databases Log Data Changes

  • Tasks


Replication - SAP Documentation

Background documentation Replication

Replication means that you create duplicates of a database which are regularly updated.

More Information

Database Administration, Replication and High Availability


Reader-Writer Lock - SAP Documentation

Background documentation Reader-Writer Lock

Reader-writer locks (share locks) are special database semaphores. The system uses them to synchronize tasks when they access critical sections of the working memory (both exclusive and non-exclusive access).

Special Synchronization Mechanisms

Name

Used for

Description

Region

Data Cache

EXCLUSIVE

When a task accesses a critical section, the associated region blocks this critical section for all other tasks.

Reader-writer lock

(share lock)

Catalog Cache

Shared SQL Cache

EXCLUSIVE or SHARED

If a task write-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all other write-accesses but allows other read-accesses.

If a task read-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all write-accesses but allows other read-accesses.

More Information

Concepts of the Database System, Working Memory Areas

SQL Reference Manual, SHARELOCKINFORMATION, SHARELOCKSTATISTICS, SHARELOCKWAITINGTASKS


Restart - SAP Documentation

Background documentation Restart

With a restart, the database system restarts the database, that is, switches it from the ADMIN or ONLINE operational state to the OFFLINE operational state, and then switches it back to the ONLINE operational state.

A restart is necessary, for example, in the following situations:

  • You have changed a database parameter and the change only takes effect after a restart.

  • The database was not stopped correctly because the computer was switched off due to a power failure.

For a restart, the database system uses information from the last savepoint (most recent consistent state of the database stored in the volumes), and the log entries still stored in the volumes, in order to bring the database as close as possible to the state it was in when it was switched to the OFFLINE operational state.

For a restart to be successful, the volumes in the database must not be damaged. If a hard disk has been damaged, you must restore the database.

You can also restart the database to a state it was in at a point in time in the past.

Each time the database is started, a copy of the kernel log file is created, and the old kernel log file is overwritten with new information.

More Information

  • Concepts of the Database System, Example: Restart, Savepoint

  • Database Studio, Starting or Stopping Databases

  • Database Manager CLI, db_restart


Region - SAP Documentation

Background documentation Region

A region is a database-specific synchronization mechanism for synchronizing exclusive task access to a critical section in the working memory.

Special Synchronization Mechanisms

Name

Used for

Description

Region

Data Cache

EXCLUSIVE

When a task accesses a critical section, the associated region blocks this critical section for all other tasks.

Reader-writer lock

(share lock)

Catalog Cache

Shared SQL Cache

EXCLUSIVE or SHARED

If a task write-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all other write-accesses but allows other read-accesses.

If a task read-accesses a critical section, the associated reader-writer lock (share lock) blocks this critical section for all write-accesses but allows other read-accesses.

More Information

Concepts of the Database System, Working Memory Areas

Database Administration in CCMS, Critical Sections


R - SAP Documentation

Background documentation R


Redo List - SAP Documentation

Background documentation Redo List

The redo list is a database-internal list of transactions that is created by the redo log manager. It is kept in the working memory.

The redo list supplements the transaction list. It contains information on the transactions that the database system started after the most recent savepoint took place and in which sequence the transactions were carried out. These are the transactions that would need to be repeated if a restart or restore of the database was required.

More Information

Concepts of the Database System, How Databases Log Data Changes


Role - SAP Documentation

Background documentation Role

A role is a group of privileges that can be granted to database users, user groups, or to other roles.

While privileges apply at all times, roles are initially inactive, which means that the privileges they contain do not apply. You can activate roles for individual database sessions. Every database user to whom roles have been assigned can also define which roles should be active in each database session. The database user can change this definition after opening a database session.

More Information

SQL Reference Manual, Role Name (role_name)

SQL Tutorial, Roles


Restart Information - SAP Documentation

Background documentation Restart Information

The restart information contains all information required by the database system to restart the database, including the following:

  • Information about the log area

  • The converter starting point that the database system backed up at the last savepoint

  • The history directory starting point that the database system backed up at the last savepoint

  • The starting point for the internal file directory

The restart information is located on the first page of the first data volume.

The database system updates the restart information at each savepoint.

More Information

Concepts of the Database System,

  • Volumes (Permanent Storage)

  • Savepoint

Database Manager CLI, db_restartinfo


Redo Log File - SAP Documentation

Background documentation Redo Log File

Redo log files are database-internal files and are located in the data area.

They are used by the database system during a restart or a restore. Redo log files contain the redo log entries for all the transactions that were not completed at the last savepoint and which the system therefore needs to repeat.

More Information

Concepts of the Database System, How Databases Log Data Changes


Redo Task - SAP Documentation

Background documentation Redo Task

Redo tasks are server tasks.

When the database is restarted or restored, redo tasks execute any transactions that need to be repeated.

More Information

Concepts of the Database System, Tasks

Database Administration, Example: Restart


X Server - SAP Documentation

Background documentation X Server

The SAP MaxDB X servers are the communication servers of the SAP MaxDB database system. They are required to connect to databases on remote computers. Note that the JDBC interface, and therefore Database Studio, requires an X server even for local communication.

To establish a connection to a database on a remote computer, applications (via interfaces) and database tools use an X server running on the remote computer. There is one X server acting as a global listener per database computer, and one X server per SAP MaxDB installation. This means that on each database computer, there are at least one global listener and one X server.

On Unix and Linux, the X server processes are called vserver.

More Information

Global Listener and X Servers

Concepts of the Database System, Network Communication

SAP MaxDB Security Guide,

  • Starting SAP MaxDB X Servers Without NI Support (Unix and Linux)

  • Accessing Databases Behind a Firewall


vserver - SAP Documentation

Background documentation vserver

vserver is the name of the global listener and X server (SAP MaxDB communication servers) processes on Unix and Linux.

See X Server


vtrace - SAP Documentation

Background documentation vtrace

See Database Trace


Web Server Manager - SAP Documentation

Background documentation Web Server Manager

Up to and including version 7.5, SAP MaxDB Web Server Manager provided a web-based interface for changing the configuration of SAP MaxDB Web Server and the SAP MaxDB web tools.

Note Note

The further development of SAP MaxDB Web Server Manager has been discontinued.

End of the note.

More Information

SAP Note 856940 (Ordering Web Tools)


Web Tool - SAP Documentation

Background documentation Web Tool

In older software versions, the following web tools were available: Web DBM, Web SQL, Web Server, Web Server Manager.

Note Note

Further development of the web tools has been discontinued.

End of the note.

More Information

Concepts of the Database System, Database Tools

SAP Note 856940 (Ordering Web Tools)


sdb - SAP Documentation

Background documentation sdb

On Unix and Linux, sdb is the default name of the special operating system user for SAP MaxDB.

More Information

Database Administration, <sdb_user> (Special Operating System User)


sdba - SAP Documentation

Background documentation sdba

On Unix and Linux, sdba is the default name of the special operating system user group for SAP MaxDB. Members of this user group have comprehensive authorization to access database resources at the operating system level.

More Information

Database Administration, <sdba_group> (Special Operating System Group)


Monitoring - SAP Documentation

Background documentation Monitoring

We recommend that you monitor your database during production operation. This enables you to recognize problems early and avoid disruptions or failures.

Several database tools and functions are available for monitoring.

More Information

Database Administration, Monitoring Databases


Restore - SAP Documentation

Background documentation Restore

When you restore a database, you restore it to the last consistent state it was in before the system failure occurred. To do this, you need uninterrupted data backups and log backups.

You can also restore a database to a state it was in at an earlier point in time in the past.

Recovery Types

Recovery Type

Description

Additional Prerequisites

Recover last backup

You restore the last backup from the backup history

The log files dbm.knl and dbm.mdf are not damaged. This means that the backup history is complete.

If you are using third-party backup tools, then the dbm.ebf log file must also be not damaged.

More information: Database Administration, Log Files

Recover specified backup from history

You restore a specific backup from the backup history

The log files dbm.knl and dbm.mdf are not damaged. This means that the backup history is complete.

If you are using third-party backup tools, then the dbm.ebf log file must also be not damaged.

Recover a medium

You restore the backup from a data carrier without referring to the backup history

-

Initialize database before recovery

You initialize the database before restoring it

Usually the database system attempts to import redo log entries still present in the log area during recovery. To prevent this and force the deletion of all redo log entries in the log area, initialize the log area before the recovery.

Example Example

After a training course, you want to restore the training course to its original state by importing a data backup with the original database state. By deleting the redo log entries, you ensure that all changes to the course database made by course participants are discarded.

End of the example.

-

Recover until a specific time

You restore the database to its state at a particular point in the past

If the desired point in time is after the last data backup and the log area no longer contains all the required redo log entries, for example because they were damaged, you also need the log backups since the last data backup.

More Information

  • Database Administration, Restoring Databases

  • Database Studio, Restoring Databases

  • Database Manager CLI, recover_start


Tool - SAP Documentation

Background documentation Tool

See Database Tool


Y - SAP Documentation

Background documentation Y


XCONS - SAP Documentation

Background documentation XCONS

See Console (Database Console)


Row - SAP Documentation

Background documentation Row

A row is an ordered sequence of values. The row is the smallest unit of data that can be inserted in or deleted from a table. Each row in a table has the same number of columns and contains a value for each column.

More Information

SQL Tutorial, Inserting, Updating and Deleting Rows


Web Server - SAP Documentation

Background documentation Web Server

Up to and including version 7.5, SAP MaxDB provided its own web server.

Note Note

The further development of SAP MaxDB Web Server has been discontinued.

End of the note.

More Information

SAP Note 856940 (Ordering Web Tools)


WebDAV - SAP Documentation

Background documentation WebDAV

The SAP MaxDB WebDAV servlet is an implementation of the WebDAV protocol as defined in RFC2518. With the SAP MaxDB WebDAV servlet, you can use SAP MaxDB databases to store documents. Users can access documents in such document stores using Database Studio or with third-party tools implementing the WebDAV protocol.

More Information

  • WebDAV Servlet documentation

  • Concepts of the Database System, Repositories

  • Database Studio, Editing Objects in a Repository


W - SAP Documentation

Background documentation W


Web SQL - SAP Documentation

Background documentation Web SQL

Up to and including version 7.6, Web SQL was a a web-based database tool for accessing data and the database catalog, executing SQL statements, and creating and managing database objects and database users. The further development of Web SQL has been discontinued.

From version 7.7, use Database Studio instead of Web SQL.

More Information

Database Studio


X - SAP Documentation

Background documentation X


Z - SAP Documentation

Background documentation Z


Overwrite Mode for the Log Area - SAP Documentation

Background documentation Overwrite Mode for the Log Area

You can use this log setting to configure whether the database system overwrites the log area cyclically without first backing up the log entries.

Caution Caution

Only switch on overwrite mode if it is not important to you that you can only restore the system to the status of the last available data backup.

End of the caution.

More Information

  • Concepts of the Database System, How Databases Log Data Changes

  • Database Studio, Changing Log Settings

  • Database Administration in CCMS, Log Area


Domain - SAP Documentation

Background documentation Domain

You can use domain definitions to define domains for table columns.

Each domain name is unique within the entire database system. If no owner was specified when the domain was created, the database system searches for the domain in the catalog parts in the following order:

  1. Catalog part of the current database user

  2. Catalog part of the database administrator who created the current database user

  3. Catalog part of the database system administrator

More Information

SQL Reference Manual, Domain Name

SQL Tutorial, Domains


Web DBM - SAP Documentation

Background documentation Web DBM

Up to and including version 7.5, Web DBM was a web-based database tool for creating and managing databases and DBM operators.

Note Note

The further development of Web DBM has been discontinued.

However, you can also manage version 7.6 databases using Web DBM 7.5.

End of the note.

More Information

SAP Note 856940 (Ordering Web Tools)


XUSER - SAP Documentation

Background documentation XUSER

To simplify the logon process to databases with command line tools, you can save the logon data (user name and password, database name) in a user key using the XUSER program. The data can only be accessed by the operating system user who owns the data.

When you want to connect to the database, you only need to specify your user key.

SAP systems use XUSER for the authorization of work processes. Exception: SAP liveCache systems that use central authorization.

More Information

  • XUSER documentation

  • SAP note 39439

  • Database Administration, Managing Users


Page - SAP Documentation

Background documentation Page

A page is the basic unit that the database system uses to write data to the hard disk and read data from the hard disk. A page corresponds to a certain number of operating system blocks. Pages are used to specify memory and disk space.

The page size for the SAP MaxDB database system is 8 KB.

This graphic is explained in the accompanying text.

Operating System Blocks on a Page

More Information

Concepts of the Database Systems, How Databases Store Data and Log Entries


liveCache (SAP liveCache Technology) - SAP Documentation

Background documentation liveCache (SAP liveCache Technology)

The SAP liveCache technology is an object-based enhancement of the SAP MaxDB database system and was developed to manage complex objects. Unlike SAP MaxDB, an optimally configured SAP liveCache database holds all the data that the database system needs to access in the working memory. It combines the advantages of main memory-based data retention with a complete operating concept, including backup and recovery. The application functions are provided by database procedures (liveCache Applications), which make accessing application data extremely fast.

The SAP liveCache technology significantly increases the speed of the algorithmically complex, data- and runtime-intensive functions of various SAP applications, especially within SAP Supply Chain Management.

Note Note

You can only use SAP liveCache Technology with SAP applications.

End of the note.

Note Note

In general, the documentation for SAP MaxDB databases also applies to SAP liveCache databases. Differences are indicated in the documentation where necessary.

End of the note.

More Information

  • Concepts of the Database System, SAP liveCache Technology

  • Database Administration in CCMS: SAP liveCache Technology

  • Information about the SAP liveCache technology in SCN: https://www.sdn.sap.com/irj/sdn/livecache


SQL Studio - SAP Documentation

Background documentation SQL Studio

SQL Studio is a database tool for accessing data and the database catalog, making SQL queries, and creating and managing database objects and database users. SQL Studio has a graphical user interface. It is only available on Microsoft Windows.

Caution Caution

The development of SQL Studio has been discontinued. As of version 7.7, SQL Studio was replaced by Database Studio.

You can find the old documentation for SQL Studio at http://maxdb.sap.com/archive/

End of the caution.

More Information

Concepts of the Database System, Database Tools


SSL/TLS - SAP Documentation

Background documentation SSL/TLS

See Encryption


SQL Statement - SAP Documentation

Background documentation SQL Statement

You can use SQL statements to display, add, change or delete data in the database.

More Information

  • SQL Reference Manual, SQL Statements: Overview

  • SQL Tutorial, SQL Tutorial

  • Concepts of the Database System, SQL

  • Database Studio, Working with SQL Statements: Overview


SAP DB - SAP Documentation

Background documentation SAP DB

SAP DB is the old name of SAP MaxDB.

As of database version 7.5, the former SAP DB database software is delivered under the name SAP MaxDB. SAP MaxDB 7.5 is the result of the continuing development of the SAP DB source code. SAP MaxDB 7.5 can be used as a direct upgrade for SAP DB versions as of 2.7.04. As per the releases for SAP applications, this also applies to SAP DB databases in SAP installations.


SQL - SAP Documentation

Background documentation SQL

You can use SQL (Structured Query Language) statements to define, display, add, change and delete data in the database.

SQL Properties of SAP MaxDB (Selection)
Property | More information
Schema | SQL Tutorial, Schemas SQL Reference Manual, CREATE SCHEMA Statement (create_schema_statement)
Foreign Keys (referential integrity) | SQL Tutorial, Foreign Key Dependencies Between Tables SQL Reference Manual, Referential CONSTRAINT Definition (referential_constraint_definition)
Explicit and implicit locks on rows, tables and the database catalog | SQL Reference Manual, Transactions LOCK Statement (lock_statement) LOCK Option (lock_option)
Updatable view table | SQL Tutorial, View Tables SQL Reference Manual, CREATE VIEW Statement (create_view_statement)
Temporary table | SQL Reference Manual, CREATE TABLE Statement (create_table_statement)
Domain definition | SQL Tutorial, Domains SQL Reference Manual, CREATE DOMAIN Statement (create_domain_statement)
Join | SQL Tutorial, Joins: Information From Several Tables SQL Reference Manual, JOIN Predicate (join_predicate)
Subquery | SQL Tutorial, Subquery: Inner Queries SQL Reference Manual, Subquery (subquery)
Subtransaction | SQL Reference Manual, SUBTRANS Statement (subtrans_statement)
Number generator (auto-increment column) | SQL Tutorial, Number Generators for Tables SQL Reference Manual, CREATE SEQUENCE Statement (create_sequence_statement)
Database procedure (stored procedures) | SQL Tutorial, Database Procedures SQL Reference Manual, CREATE DBPROC[EDURE] Statement (create_dbproc_statement)
Database function (user-defined function) | SQL Tutorial, Database Functions SQL Reference Manual, CREATE FUNCTION Statement (create_function_statement)
Triggers | SQL Tutorial, Database Triggers SQL Reference Manual, CREATE TRIGGER Statement (create_trigger_statement) CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement)
Server-side cursor | SQL Reference Manual, DECLARE CURSOR Statement (declare_cursor_statement)
Shared SQL (re-use of execution plans) | Special Database Parameters UseSharedSQL
Optimization | SQL Optimizer

More Information

  • SQL Tutorial

  • SQL Reference Manual

  • Database Studio, Working with SQL Statements: Overview

  • Concepts of the Database System, SQL


SQLCLI - SAP Documentation

Background documentation SQLCLI

SQLCLI is a command line database tool for SAP MaxDB. You can use it for accessing data and the database catalog, executing SQL queries, and for creating and managing database objects and database users.

Overview of all SQLCLI Commands
Command | Description
\! <shell_command> | Executes a shell command More information: Executing a Shell Command
\? \h[elp] | Displays all SQLCLI commands
\a[utocommit] [ON|OFF] | Switches AUTOCOMMIT mode on or off
\al[ign] [ON|OFF] | Switches formatted output of the results of SQL statements on or off
\c[onnect] | Logs a user onto the database More information: Logging On to a Database
\dc [PATTERN] | Lists all table columns that correspond to the PATTERN SQLCLI lists only those tables to which the current user has access. See Requesting Information About Database Objects
\de [PATTERN] | Lists all the indexes of database objects that correspond to the PATTERN
\di[sconnect] | Logs the user off from the database
\dp [PATTERN] | Lists all database procedures that correspond to the PATTERN
\ds [NAME] | Lists all schemas that correspond to the NAME pattern
\dt [PATTERN] | Lists all tables that correspond to the PATTERN
\du [NAME] | Lists all database users that correspond to the NAME pattern
\dv [PATTERN] | Lists all views that correspond to the PATTERN
\e[dit][<file>] | Writes the command buffer to the <file> where you can edit it with an editor More information: Command Buffer
\f[ieldsep] <separator> | Uses the <separator> character to separate the individual fields of the result
\g | Executes the commands in the command buffer and returns the results
\i[nput] <file> | Imports commands from the batch file <file> More information: Batch File
\m[ode] <INTERNAL|ORACLE> | Changes the SQL mode
\mu[ltiline] ON | OFF | Switches multiple line mode on | off More information: Multiple Line Mode
\o[utput] <file> | Redirects the result to a file More information: Redirecting Results to a File
\pa[ger] | Displays results consecutively (not page by page)
\p[rint] | Displays the current command buffer
\q[uit] | Exits SQLCLI
\r[eset] | Deletes the current command buffer
\ro[wsep] <separator> | Uses the <separator> character to separate the individual rows of the result
\s[tatus] | Displays general information about the database

More Information

SQLCLI documentation

Concepts of the Database System, Database Tools


SQL Session - SAP Documentation

Background documentation SQL Session

See Database Session


SYSDBA User - SAP Documentation

Background documentation SYSDBA User

See Database System Administrator (SYSDBA User)


SQL Optimizer - SAP Documentation

Background documentation SQL Optimizer

SQL Optimizer is a part of the kernel of the database system. It analyzes SQL queries and selects the best search strategy for accessing the data.

More Information

SQL Optimizer documentation

Database Studio, Updating SQL Optimizer Statistics

Database Administration in CCMS, SQL Optimizer in CCMS

SAP Note 819324 (FAQ: MaxDB SQL Optimization)


SQL Tutorial - SAP Documentation

Background documentation SQL Tutorial

The SQL tutorial for SAP MaxDB explains the most important SQL statements. It uses the DEMODB demo database, which contains simplified data records.

More Information

SQL Tutorial


S - SAP Documentation

Background documentation S


SQL Mode - SAP Documentation

Background documentation SQL Mode

The SAP MaxDB database system supports different SQL language variants (SQL modes).

SQL Modes
Name | Description
INTERNAL | SAP MaxDB SQL definition
ORACLE | ORACLE 7 SQL definition

For Data Definition Language (DDL) statements, the database system supports SQL modes other than INTERNAL only to a limited extent.

When you open a database session, you can specify the SQL mode. The default value is INTERNAL.

Note Note

If nothing else is specified, the documentation describes the SQL statements available in the INTERNAL SQL mode: SQL Syntax.

End of the note.

More Information

SQL Reference Manual,

  • CONNECT Statement

  • SQLMODE()

  • SQL Mode ORACLE

Loader, SQLMODE Command


STANDARD User - SAP Documentation

Background documentation STANDARD User

STANDARD users are database users who have only limited rights regarding the management of database objects and no rights regarding user management.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

More Information

Database Administration, Database Users

Database Studio, Creating Database Users, Changing the Properties of Database Users

SQL Tutorial, Database Users and Their Privileges

SQL Reference Manual, CREATE USER Statement


Savepoint - SAP Documentation

Background documentation Savepoint

During savepoints, the database system writes data changes from the different caches in the working memory to the volumes (permanent storage).

More Information

Concepts of the Database System, Savepoint


SQLDBC - SAP Documentation

Background documentation SQLDBC

SQL Database Connectivity (SQLDBC) is a runtime environment for the development of database applications and database interfaces for SAP MaxDB. Using SQLDBC, applications can access SAP MaxDB databases, execute SQL statements and change data. It consists of the libSQLDBC runtime library, the SQLDBC SDK software development kit and the sqldbc_cons tool.

SQLDBC replaces the old C/C++ Precompiler. More information: SAP Notes 649814 and 822239.

More Information

  • SQLDBC documentation

  • Concepts of the Database System, Interfaces

  • Database Administration in CCMS, SQLDBC Trace


Scheduler - SAP Documentation

Background documentation Scheduler

You can use the scheduler to schedule DBM commands to be executed at specified times.

More Information

Database Manager CLI, Using the Scheduler Function

Database Administration, Automating Administration Tasks


Interface - SAP Documentation

Background documentation Interface

The SAP MaxDB database system offers interfaces for programming database applications in several different programming languages.

SAP MaxDB Interfaces

Name

Driver or Module

Features

Prerequisites

ADO.NET

SDB.Data.dll

Executing SQL statements

Microsoft .NET Framework 2.0

Backint for SAP MaxDB

-

Interface for developing third-party backup tools

-

Java

  • com.sap.dbtech.jdbc.DriverSapDB

  • com.sap.dbtech.powertoys.DBM

  • com.sap.dbtech.powertoys.Loader

(all contained in sapdbc.jar)

Executing SQL statements (JDBC driver)

Executing DBM commands

Executing Loader commands

JDBC 2.0: JRE 1.2 or JDK 1.2 (for application development)

JDBC 3.0: JRE 1.4, 1.5 or JDK 1.4, 1.5 (for application development)

ODBC

  • sdbodbc[w].dll (Microsoft Windows)

  • libsdbodbc[w].so|a (Unix and Linux)

Executing SQL statements

Microsoft Windows: ODBC Driver Manager 3.52 or higher and MDAC 2.7 or higher

Unix and Linux: Link directly to the application or use a driver manager (unixODBC 2.0.9 or iODBC 3.0.5)

Perl

  • DBD::MaxDB

Executing SQL statements

SAP MaxDB SQLDBC SDK

Perl 4 (5.6.1)

Perl DBI (1.2.1)

PHP

php_maxdb.[dll|so]

Executing SQL statements

PHP 5.2.5 or higher

Python

  • sdb.sql

Executing SQL statements

Python 1.5 - 2.3

SQLDBC

libSQLDBC.[dll|so]

Executing SQL statements

Developing applications and interfaces

-

WebDAV

webdavServletMaxDB-<version>.war

Accessing a document store in an SAP MaxDB database using the WebDAV protocol

Servlet container

More Information

Concepts of the Database System, Interfaces


Keyword - SAP Documentation

Background documentation Keyword

The database system uses a number of words as keywords, for example as syntax elements in SQL statements or as command names.

There are reserved and non-reserved keywords.

  • You can use reserved keywords in special identifiers for database objects, but not in simple identifiers.

    Example: SELECT

  • You can use non-reserved keywords in any identifiers for database objects.

    Example: COMMIT

We recommend though that you use neither non-reserved nor reserved keywords in identifiers for database objects.

More Information

SQL Reference Manual, Keyword (key_word)

Loader, Loader Keywords: Overview


Schema - SAP Documentation

Background documentation Schema

You can use schemas to group database objects that logically belong together. A database object can belong to precisely one schema.

Schemas are created in the following situations:

  • When you create a new database, the database system creates the database system administrator and implicitly creates a schema with the same name. The database system also creates the following schemas for the database system administrator: DOMAIN, SYSINFO.

  • When you create a new database user, the database system creates a schema with the name of the database user.

  • Database administrators can create schemas explicitly.

More Information

SQL Tutorial, Schemas

SQL Reference Manual, Schema Name (schema_name)

Database Studio, Creating Schemas, Deleting Schemas

Database Administration in CCMS, Schemas


Task Switching - SAP Documentation

Background documentation Task Switching

In a user kernel thread, a maximum of one task can use the processor, that is, be in the running state. All other tasks are either in the runnable state or are waiting for an external event, such as the end of an I/O operation and a corresponding message, to become runnable again.

If the current task no longer needs the processor, it triggers a task switch (cooperative task switch) and the next task in the same user kernel thread can use the processor.

Example

The following graphic shows a simplified illustration of how three tasks in a user kernel thread run alternately.

This graphic is explained in the accompanying text.

Example: Tasks in a User Kernel Thread

Initially, Task 1 is running. Task 2 and Task 3 are runnable.

  1. Task 1 sends an I/O request and puts itself in a waiting state.

    Task 2 is the next runnable task; it resumes executing.

  2. Task 2 sends an I/O request and puts itself in a waiting state.

    Task 3 is the next runnable task; it resumes executing.

  3. The I/O operation of Task 1 is completed. Task 1 receives a corresponding message and is again runnable.

  4. Task 3 sends an I/O request and puts itself in a waiting state.

    Task 1 is the next runnable task; it resumes executing.

  5. The I/O operation of Task 2 is completed. Task 2 receives a corresponding message and is again runnable.

  6. Task 1 is completed.

    Task 2 is the next runnable task; it resumes executing.

More Information

Tasks

Threads


Traces - SAP Documentation

Procedure documentation Traces

You can use various traces to obtain detailed information on the actions of the database system.

Note Note

Performance may get worse while a trace is being written. Therefore switch off the trace as soon as the actions necessary for the analysis have been logged.

As long as a trace is being written, operate the database with the lowest possible load and execute only those actions that are necessary to reproduce the error.

End of the note.

Procedure

Traces

Default File Name

Default Directory

Description

How to Use the Trace

knltrace

Run directory of the database (see Run Directory).

To change the location of this file, use the database parameter KernelTraceFile, see Support Database Parameters.

Note that the trace messages are first written to the main memory. To generate the trace file, you need to flush the database trace.

Contains the messages of the database trace

You can use the trace file to identify errors, such as those that occur while processing SQL statements.

Note that activating the database trace has a negative effect on performance only with SAP liveCache databases. This is not the case with SAP MaxDB databases.

The trace file is written in binary format. To display the trace file, use Database Studio, Database Manager CLI or CCMS.

  • Database Studio, Creating a Database Trace

  • Database Manager CLI, trace_on

  • Database Administration in CCMS, Database Trace

  • SAP Note 837385

odbctrace-<pid>.prt

Microsoft Windows:<data_path>\wrk

Unix/Linux:<user_home>/.sdb/<computer_name>

ODBC trace

The system can log SQL statements, communication packages, method calls, and call parameters.

<pid> = Process ID

Use the odbc_cons database tool.

More information:

ODBC Manual, Troubleshooting Using the SAP MaxDB ODBC Trace

User-defined

User-defined

JDBC trace

The SAP MaxDB JDBC driver logs all JDBC API calls and their input parameters, return values, and the corresponding thread.

Specify the corresponding option for establishing the connection.

More information: Java Manual, JDBC Trace

sqldbctrace-<pid>.prt

Microsoft Windows: <data_path>\wrk

Unix/Linux: <user_home>/.sdb/<computer_name>

SQLDBC Trace

The system can log SQL statements, communication packages, method calls, and call parameters.

<pid> = Process ID

Use the sqldbc_cons database tool, or the CCMS in SAP systems.

More information:

  • SQLDBC Manual, Using the SQLDBC Trace

  • Database Administration in CCMS, SQLDBC Trace

More Information

Log Files

Glossary, Directory


What Happens When the Master Database of a Hot Standby System Fails? - SAP Documentation

Background documentation What Happens When the Master Database of a Hot Standby System Fails?

If the master database of the hot standby system fails, a standby database automatically assumes the role of master database. The downtime is short (a restart of the master database would take much longer, for example).

The cluster software constantly monitors the master database of the hot standby system.

  1. When the master database fails, the cluster software notifies one of the standby databases that it must take over from the master database.

  2. The new standby database adopts the virtual server name of the old master database, with which the hot standby system is addressed externally.

  3. The storage system gives the new master database write authorization for the entire log area.

  4. The new master database imports the remaining log backups from the old master database and repeats the respective data changes.

  5. The database system transfers the new master database from the STANDBY to the ONLINE operational state.

Once you have eliminated the error in the master database, you can add the old master database as a standby database to the hot standby system.


Installation, Upgrade, and Uninstalling in the Command Line - SAP Documentation

Function documentation Installation, Upgrade, and Uninstalling in the Command Line

In the command line, you can use the following SAP MaxDB programs:

  • SDBINST for installing or updating the complete database software or individual software components

  • SDBUNINST for uninstalling the complete database software or software components

  • SDBUPD for upgrading databases and their server software

Features

Installations or Updates in the Command Line

Uninstalling in the Command Line

Upgrading Databases and Their Server Software


Overview of Options for the SDBINST Program - SAP Documentation

Syntax documentation Overview of Options for the SDBINST Program

You can specify the following options when using the SDBINST program to install or update database software:

Overview of the Options for the SDBINST Program

Option

Description

-h | -help

Displays the list of possible options and their descriptions

-b | -batch

Executes SDBINST in the background.

If you specify this option, the installation program terminates with an error if any information is missing.

If you do not specify this option, the program stops if any information is missing, and prompts you to act.

-v | -version

Displays the version number of the SDBINST program

-l | -list

Displays all installable software components

-package <package_list>

<package_list> :: = <package> | <package>,<package>,....

List of software components to be installed

-i <installation_name>

Name of the new installation

-path <installation_path>

Installation path *

-global_prog <path>

Global programs path

-global_data <path

Global data path

-private_datapath <path>

Private data path *

-global_owner <user_name>

Special oparating system user, owner of the software,

to be specified for the very first installation on a computer,

cannot be changed later on

If you do not specify this value, the system default value sdb is used by the system.

For details, see Database Administration, Special Operating System Users and Groups

-global_group <group_name>

Special operating system user group,

to be specified for the very first installation on a computer,

cannot be changed later on

If you do not specify this value, the system default value sdba is used by the system.

-network_port <number>

X server port number

-description <installation_description>

Description of the new installation

-check_files

Checks the installed software

Only if errors are found, the system overwrites the relevant software to repair the component.

-no_debug_packages

When specified on Windows:

Suppresses the installation of additional analysis software (symbol files .pdb)

On Unix this option has no effect.

-force_extract

Processes running during the upgrade are ignored by the system.

-update_global

Forces the installation program to update the global database software

If you do not specify this option, new global software is installed only if this is envisaged by the new software (for example: software patch)

-kill_running_processes

Processes running during the upgrade are stopped by the system

If you do not specify this option, the update terminates with an error mesaage if there are still running processes.

*You must place any path that contains blanks in double quotation marks.

For details about software paths, see Software Overview

For a description of the variables, see Glossary, Variables in the Documentation


Logging - SAP Documentation

Background documentation Logging

Any installation of SAP MaxDB software creates a log file. Therein, all steps involved in the relevant installation or update of the software as well as in the upgrade of a database and its software are logged.

Choose Start Menu -> SAP MaxDB -> Installation Manager -> Show SAP MaxDB Installations -> Installation Log Files to open the XML log file viewer in Installation Manager.

XML Version

The XML version of a log file is stored in the directory <global_data_path>/installations/<installation_name>/wrk.

Plain Text Version

The system also creates a plain text version of any log file in the TEMP directory of the installation environment. You can change this directory by changing the environment variable SDBINSTLOGFILE.

The log files are named sdbinst.log, sdbupd.log, sdbsetup.log, or sdbuninst.log as per the action that was carried out. They are overwritten with the next installation, update or upgrade action. Therefore, any log file crated here is also copied to the <global_data_path>/wrk directory and marked with a time stamp, which creates a history of plain text log files.

More Information

Glossary, Directory


Overview of Options for the SDBUNINST Program - SAP Documentation

Syntax documentation Overview of Options for the SDBUNINST Program

You can specify the following options when you use the program SDBUNINST to uninstall database software:

Overview of the Options for the SDBUNINST Program
Option | Description
-i <installation_name> | Name of the installation to be uninstalled
-path <installation_path> | Path of the installation to be uninstalled
-all | Uninstalling all software registered for SAP MaxDB
-package <package_name> | Logical name of the software component (not file name) to be uninstalled
-package_dir <package_directory> | Directory of the specified software component Specify this information only if there are multiple software packages with the same name.
-h | -help | Displaying the list of possible options and descriptions
-v | -version | Displaying the version number of the SDBUNINST uninstallation program
-l | -list | Displaying all installed software components

For a description of the variables, see Glossary, Variables in the Documentation


Overview of Options for the SDBUPD Program - SAP Documentation

Syntax documentation Overview of Options for the SDBUPD Program

You can specify the following options when upgrading databases using the SDBUPD program:

Overview of the Options for the SDBUPD Program

Option

Description

-h | -help

Displays the list of possible options and their descriptions

-b | -batch

Executes SDBUPD in the background.

If you specify this option, the update program terminates with an error if any information is missing.

If you do not specify this option, the program stops if any information is missing, and prompts you to act.

-v | -version

Displays the version number of the SDBUPD program

-l | -list

Displays all installable software components

-d <database_name>

Name of the database

-u <dbm_operator>,<dbm_operator_password>

Name and password of the DBM operator

For a description of the variables, see Glossary, Variables in the Documentation


Savepoint - SAP Documentation

Background documentation Savepoint

During a savepoint, the database system writes the data that was changed since the last savepoint from the data cache (working memory) to the data area (permanent storage). The data written during a savepoint always represents a consistent state of the database. You can always restart the database, for example after a power outage, to a consistent state without importing log backups.

Where Does the Database System Write the Data?

During a savepoint the database system does not overwrite the pages written to the data area at the previous savepoint, but instead writes the changed data to free positions. This is because the database system requires this information from the previous savepoint for a restart if there is a system failure during the new savepoint. Only after the database system has successfully completed the new savepoint does it release the pages of the old savepoint in the data area for overwriting.

When Does the Database System Carry out Savepoints?

In the ONLINE operational state and during restarts, the database system automatically carries out savepoints if the following conditions are met:

  • The database system has filled 2/3 of the log area with redo log entries since the last savepoint.

  • The database system has performed 5000 log I/O operations, and since the last savepoint at least the amount of time defined in the support database parameter MaxSavepointTimeInterval has elapsed.

    Note that if you increase the value for MaxSavepointTimeInterval, you reduce the number of savepoints and thus the workload, but this also slows down the restart after a system outage.

    More information: Database Administration, Support Database Parameters

  • Various database activities, such as starting a data backup, implicitly request a savepoint. All savepoints and the actions that were triggered by them are logged by the database system in the kernel log file.

Process Flow of a Savepoint

The savepoint is controlled by the database system using a server task (Savepoint Coordinator). It runs as follows:

  1. The system writes all modified permanent data pages from the data cache to the data area.

  2. The system waits for all operations to end that need to synchronize with the savepoint, for example inserting a data record into a B* tree. The database system does not permit new operations of this type.

  3. The system does not permit any transactions to be started or finished.

  4. During a savepoint during normal database operation:

    The system writes a redo log entry. This indicates from which point in time the system has to import the log entries, if a later restart has to be performed using the data from this savepoint.

    During a savepoint during a restart:

    The system determines the current position of the log reader and enters this in the restart information.

  5. The system stores information about the transactions that are not yet complete in data pages, so that it is available for repeating or rolling back the transactions in the course of a restart.

  6. The system imports the history information to the data cache.

  7. The system marks all permanent data pages modified since step 1 in the data cache.

  8. The system permits again all operations listed in steps 2 and 3.

    Any changes carried out by the database users from this point in time no longer affect the data marked in step 7. The system can only write these changes to the data area once the current savepoint is completed.

  9. The system writes the data pages marked in step 7 to the data area. In addition to the changes that were already completed with a COMMIT, this also includes the undo log files of transactions that are not complete, which are required by the system in the case of a restart.

  10. The system writes all modified pages of the internal file directory to the data area.

  11. The system writes all modified converter pages to the data area.

  12. The system updates the restart information, which contains, among others, the savepoint version (converter version).

    This completes the actual savepoint.

    More information: Database Manager CLI, db_restartinfo

  13. Now the system releases for overwriting all the pages in the data area that are no longer needed.

  14. The system wakes up those tasks that had requested or waited for a savepoint.

    If the savepoint was triggered during the transfer to the OFFLINE operational state, the system now stops the database kernel.

More Information

Example: Restart


Using Third-Party Backup Tools - SAP Documentation

Procedure documentation Using Third-Party Backup Tools

You can use third-party backup tools to back up and restore data and log entries. Some of these backup tools are supported directly by SAP MaxDB. With operating system scripts, you can also use all other backup tools that can process backups from pipes, even if they are not directly supported by SAP MaxDB.

Caution Caution

For backup tools not directly supported by SAP MaxDB: After the database system has backed up data to a pipe, it cannot check whether the backup was successful (the backup history does not offer reliable information in this case). Use your operating system script to check whether the backup was successful.

End of the caution.
Supported Third-Party Backup Tools

Name

Key

Description

More information

TSM (IBM/Tivoli)

TSM

You can connect TSM using the TSM client adint2 or using the Backint for Oracle interface.

With adint2, you achieve better performance. However, this program is not available on all platforms.

Installation Manual,

  • Connecting to TSM

  • Connecting to a Backint for Oracle Interface

NetWorker (Legato)

NSR

You can connect NetWorker using the command line clients SAVE, RECOVER and MMINFO that are included in the Networker software, or using the Backint for Oracle interface.

The command line clients deliver better performance.

See Installation Manual, Connecting to NetWorker

NetBackup (Veritas)

BACK

-

Installation Manual, Connecting to VERITAS NetBackup

All backup tools that support Backint for SAP MaxDB

BACK

Backint for SAP MaxDB is an interface that is supported by various third-party vendors.

Installation Manual, Connecting to a Backint for SAP MaxDB Interface

For more information about the requirements for the Backint for SAP MaxDB interface, see http://maxdb.sap.com/archive/

All backup tools that support Backint for Oracle

BACK

Backint for Oracle is an interface that is supported by various third-party vendors.

Installation Manual, Connecting to a Backint for Oracle Interface

Prerequisites

  • You have connected the backup tool to your system.

    More information:

    • Documentation for the third-party backup tool

    • Installation Manual, Connecting Third-Party Backup Tools

  • You have created a backup template with the following properties:

    • Device Type: Pipe

    • Backup Tool: Identification code of the backup tool

    • Device/File: Operating system path of the pipe

    More information: Backup Templates and Data Carriers

Procedure

Use the normal backup and restore functions.

More information:

  • Backing Up Databases

  • Restoring Databases

Result

When data is backed up using a backup tool that is supported directly by the database system, each backup or data stream is given an external backup ID (External Backup ID).

More Information

  • Database Studio, Defining Backup Templates

  • Loader, Exporting and Importing Using Third-Party Backup Tools

Certification of Third-Party Backup Tools

See [image] https://www.sdn.sap.com/irj/sdn/interface-certifications [image] BC-SDB


Special Operating System Users and Groups on Unix and Linux - SAP Documentation

Background documentation Special Operating System Users and Groups on Unix and Linux

On Unix and Linux, the database systems uses the following special operating system user and groups:

  • <sdb_user>

  • <sdba_group>

  • Support group

Special Operating System Users and Groups for SAP MaxDB (Unix and Linux)

Name

System Default Value

Type

Authorizations

<sdb_user>

sdb

User

Owner of all database resources

<sdba_group>

sdba

Group

  • Creating databases

  • Analysis and error handling

Support group

sdb<database_name>

Group

Optional; support tasks

root

root

User

  • Installing the database software

  • Granting access rights to operating system users (by their group affiliation)

A SetUID root program is only required for a user change to <sdb_user>.

<os_user>

-

User

  • Normal operating system user

  • Accessing the DBM server (requires a valid DBM operator name and a password to log on to the database)

  • Accessing other database tools (for example Loader, SQLCLI), interfaces (ODBC, JDBC, SQLDBC) and all database tools that use these interfaces (for example Database Analyzer); a database user name and password are required

  • Starting the global listener and X servers (SAP MaxDB communication server)

<sid>adm

-

User

  • SAP system administrator and database administrator in SAP systems

  • Group member of <sdba_group>

sqd<sid>

-

User

Obsolete

Not for SAP liveCache databases

Owner of all database resources

Which Operating System Users Are Allowed to Access Which Database Resources?
Database Resource | Unix and Linux | Microsoft Windows
Volumes | <sdb_user> (owners) Members of the <sdba_group> group, if there is no support group Members of the support group | Group member of Administrators, System, Creator/Owner or SDB Operators
Backups | <sdb_user> (Owners) Group member of <sdba_group> | Group member of Administrators, System, Creator/Owner or SDB Operators
Files and directories of the database software | <sdb_user> (Owners) Group member of <sdba_group> | All
Database processes | <sdb_user> (Owners) | Local System Account
X Server (SAP MaxDB communication server) | <sdb_user> (Owners) | Local System Account
Which Standard SAP Operating System Users Are Allowed to Access Which Database Resources?
Database Resource | Unix and Linux | Microsoft Windows
All | <sid>adm (SAP system administrator and database administrator in SAP systems) Group member of <sdba_group> | <SID>ADM Group member of Administrators, SDB Operators
All | <sqd>sid Obsolete, not for liveCache databases Owner | <SQD>SID
<sid> = System ID of the SAP system
Which SAP MaxDB Versions Support These Special Operating System User and Groups?

All SAP MaxDB versions 7.5 and higher support them.

For versions <7.5, you can manually restrict operating system level access to database resources. More information: SAP MaxDB Security Guide, Restricting Access to Database Resources (Unix and Linux up to Database Version 7.5)

How Are the Special Operating System User and Groups Created?

The database installation program creates the special operating system users and groups during the installation of the database software. For more information, see the Installation Manual, Installing and Updating the Software on Unix and the corresponding installation guides for SAP systems.

Recommendation Recommendation

Create the special operating system user and groups before installing the database software. During the installation process, they then receive the authorizations for accessing the database resources.

If you manage the operating system users and groups for your system centrally in the network, then you must create them there before starting the installation.

For information about how to create operating system users and groups, see your operating system documentation.

End of the recommendation.


Special Database Parameters - SAP Documentation

Background documentation Special Database Parameters

The following overview describes database parameters belonging to the EXTENDED group.

For information about other database parameters, see

  • General Database Parameters

  • Support Database Parameters

  • liveCache Database Parameters

To change the values of database parameters, use one of the following database tools: Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio, Changing Database Parameters

  • Database Administration in CCMS, Parameters

Most changes to database parameters take effect only after the database has been restarted.

However, you can change certain database parameters while the database is running, that is in the ONLINE or ADMIN operational state (see the description of individual database parameters for more information). For these changes you can define when they are to become effective:

  • Until the next restart

  • After the next restart

  • Immediately and permanently

Note Note

Starting with version 7.7.03 of the database software, the names of many database parameters have changed.

Some database parameters have also been designated obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

More information: Obsolete Database Parameters

End of the note.
Special Database Parameters (Extended)

Name

(from version 7.7.03)

Old Name

(up to and including version 7.7.02)

Description

Change Restrictions

More Information

AllowAuthentication

AUTHENTICATION_ALLOW

Specifies the authentication methods that are allowed for the database. Possible Values (comma-separated):

  • SCRAMMD5: Challenge/response method using a MD5 hash algorithm

  • BASIC: Passwords are sent using a reversible encryption algorithm

If you do not specify a value, then all authentication methods are allowed except those specified using the database parameter DenyAuthentication.

Can be changed in ONLINE or ADMIN operational state

CAT_CACHE_SUPPLY

CAT_CACHE_SUPPLY

Size of the task-specific catalog cache in the working memory that is allocated to user tasks (in pages)

For each user task the system reserves a minimum part of the catalog cache (see TaskSpecificCatalogCacheMinSize). Each task may extend its catalog cache, but all task-specific catalog caches together may not exceed the catalog cache size. Note that the catalog cache size influences performance: You achieve the best performance with a catalog cache hit rate of 100%. Use database monitoring to get information about the catalog cache hit rate.

Changes only apply after a restart of the database.

Concepts of the Database System, Working Memory Areas

ClusterWriteThreshold

CLUSTER_WRITE_THRESHOLD

Minimum amount of blocks that the database system still stores as clusters in the data area

Can be changed in ONLINE or ADMIN operational state

-

ClusterCompressionFillThreshold

-

Maximum number of occupied blocks in clusters eligible for compression

If more blocks are occupied in a cluster, the database system does not compress the cluster.

Can be changed in ONLINE or ADMIN operational state

-

ConverterStripes

CONVERTER_REGIONS

Number of critical sections into which the converter is divided

This division enables parallel writing to the converter.

The default value is calculated by the database system. You can change the value. Changes only apply after a restart of the database.

Glossary, Stripe

ConverterVolumeIdLayout

VOLUMENO_BIT_COUNT

Number of bits in the converter block address that are reserved for the logical volume number of a data volume

We recommend that you do not change the value that was defined when the database was created. If you change the database parameter in the ONLINE or ADMIN operational state, you must restore the database afterwards to update the numbering of the data volume.

Database Administration, Planning the Database

DataCacheStripes

_DATA_CACHE_RGNS

Number of critical sections into which the data cache is divided

This division enables parallel writing to the data cache.

The default value is calculated by the database system. You can change the value. Changes only apply after a restart of the database.

DateTimeFormat

DATE_TIME_FORMAT

System default for the date and time format

You can override this date and time format when using database tools (standard_date_mask in Loader) or when using SQL statements (datetimeformat).

Can be changed in ONLINE or ADMIN operational state

-

DeadlockDetectionLevel

DEADLOCK_DETECTION

Maximum search level for deadlock detection

Any deadlocks that the database system does not detect at this search level are only resolved by a timeout.

Can be changed in ONLINE or ADMIN operational state

Parameter RequestTimeout

DefaultCodePage

DEFAULT_CODE

System default for the code attribute, applies only to the column values of the data types CHAR[ACTER], VARCHAR and CLOB

Can be changed in ONLINE or ADMIN operational state

SQL Reference Manual, Code Attribute

DenyAuthentication

AUTHENTICATION_DENY

Specifies the authentication methods that are not allowed for this database. Possible Values (comma-separated):

  • SCRAMMD5: Challenge/response method using a MD5 hash algorithm

  • BASIC: Passwords are sent using a reversible encryption algorithm

Note that older clients can only connect to the database using the BASIC authentication method. Not allowing this method prevents these clients from being able to connect.

Can be changed in ONLINE or ADMIN operational state

n

DiagnoseHistoryCount

DIAG_HISTORY_NUM

Number of history versions in the directory in which the database system stores diagnosis files (backups of the most important log files and memory dumps) after a database error

Changes only apply after a restart of the database.

Database Administration, Log Files

DiagnoseHistoryPath

DIAG_HISTORY_PATH

Directory in which the database system stores diagnosis files (backups of the most important log files and memory dumps) after a database error

Changes only apply after a restart of the database.

See above

EnableIndexOnlyStrategy

OPTIM_INV_ONLY

Defines whether the SQL optimizer uses the Index Only strategy for joins

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, Search Strategies

EnableLogBackupToPipe

LOG_BACKUP_TO_PIPE

NO: After a log backup has been written to a pipe, the connection to the pipe is closed. The system does not receive any information on whether the log backup was successful. As a result, the log area is not released and cannot be overwritten. Therefore, it may become full. Consequently no changes to data can be made any more.

YES: The database system can overwrite the log entries in the log area that have already been written to the pipe. Note that the system does not check whether the log backup to the pipe was successful.

Changes only apply after a restart of the database.

Database Administration, Backing Up Log Entries

EnableQueryRewrite

OPTIMIZE_QUERYREWRITE

Prerequisite: Support database parameter QueryAnalysisMode is set to EXTENDED.

Specifies whether the system tries to transform SQL statements so that the resulting statement is semantically identical but faster to process. The transformations are purely rule-based and do not take into account any statistical information. The main purpose of transformations is to avoid intermediate result sets.

In some cases, it may not be possible to display the statement that results from the transformation as an SQL statement.

After an SQL statement has been transformed, the SQL optimizer determines the most cost-effective search strategy for accessing the data.

The system can transform the following types of SQL statements: SELECT, CREATE CURSOR FOR SELECT, EXPLAIN SELECT

After the system has transformed an SQL statement, the result of the EXPLAIN statement contains the text QUERY REWRITE DONE as well as a list indicating the rules executed and the number how often they were executed.

Can be changed in ONLINE or ADMIN operational state

-

ExclusiveLockRescheduleThreshold

MAXRGN_REQUEST

Maximum number of attempts a task should make to access a critical section

If this number is exceeded, the task releases its access to the CPU. The CPU can then be accessed by another task belonging to the same user kernel thread.

Can be changed in ONLINE or ADMIN operational state

Glossary, Critical Section

FileDirectorySpinlockPoolSize

FILEDIR_SPINLOCKPOOL_SIZE

Number of spinlocks available for reader-writer locks for the internal file directory

Changes only apply after a restart of the database.

Glossary, Reader-Writer Lock

FormatDataVolume

FORMAT_DATAVOLUME

Only for test purposes

Suppresses the formatting of data volumes when a new database is created

Changes only apply after a restart of the database.

Glossary, Volume

HashJoinSingleTableMemorySize

MAX_SINGLE_HASHTABLE_SIZE

Maximum size of the working memory that the database system can use to cache a single table when executing a join (in KB)

Can be changed in ONLINE or ADMIN operational state

See above

HashJoinTotalMemorySize

MAX_HASHTABLE_MEMORY

Maximum size of the working memory that the database system can use to cache all tables when executing joins (in KB)

Can be changed in ONLINE or ADMIN operational state

Glossary, Join

HighResolutionTimer

HIRES_TIMER_TYPE

Type of time measurement that is used by the kernel for internal operations

Use this parameter only for multiprocessor computers on which there could be synchronization problems between the CPUs.

Changes only apply after a restart of the database.

-

HotStandbyDelayTime?

HS_DELAY_TIME_<NNN>

Delay in seconds after which the standby database applies the data changes of the master database. The question mark (?) is used as placeholder for the three-digit identification of the standby database.

Changes only apply after a restart of the database.

Database Administration, Hot Standby

HotStandbyNodeName?

HS_NODE_<NNN>

Only for hot standby systems

Host name or IP address of the database The question mark (?) is used as a placeholder for the three-digit identification of the database. The default value for the master database is HotStandbyNodeName001.

Changes only apply after a restart of the database.

See above

HotStandbyStorageDLLPath

HS_STORAGE_DLL

Only for hot standby systems

Name of the library through which the system addresses the memory management system

The default value is libhsscopy.

Changes only apply after a restart of the database.

See above

HotStandbySyncInterval

HS_SYNC_INTERVAL

Only for hot standby systems

Minimum time span between two commands of the master database to synchronize the standby databases (in s)

Changes only apply after a restart of the database.

See above

IndexListsMergeThreshold

OPTIM_MAX_MERGE

Specifies whether the SQL optimizer uses an index-merge strategy

If the number of pages of an index that need to be merged exceeds the value specified in IndexListsMergeThreshold, the SQL optimizer does not use this index for an Index Merge strategy.

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, Search Strategies

JoinSearchLevel

JOIN_SEARCH_LEVEL

Algorithm used by the SQL optimizer for the join sequence search

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer,

Database Parameter JoinSearchLevel

JoinSearchTableThreshold4

JOIN_MAXTAB_LEVEL4

Parameter of the SQL optimizer

Can be changed in ONLINE or ADMIN operational state

JoinSearchLevel

JoinSearchTableThreshold9

JOIN_MAXTAB_LEVEL9

Parameter of the SQL optimizer

Can be changed in ONLINE or ADMIN operational state

JoinSearchLevel

JoinTableBufferSize

JOIN_TABLEBUFFER

Size of the buffer (in KB) per user task for table buffers used during join execution

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, Search Strategies for Joins

KernelMessageFileSize

KERNELDIAGSIZE

Size of the kernel log file (in KB)

Changes only apply after a restart of the database.

Database Administration, Log Files

KernelMessageHistoryCount

KNLMSG_HISTORY_NUM

Number of stored old kernel log files

At each database start, the system moves the old kernel log file to the log history directory.

Changes only apply after a restart of the database.

Database parameter DiagnoseHistoryPath

MaxKernelMessageArchiveSize

-

If this parameter is set to a value other than 0, it defines the maximum size of the KnlMsgArchive file (containing archived messages of the database kernel).

If the specified size is reached, the system renames the KnlMsgArchive file to KnlMsgArchive_<timestamp> and creates a KnlMsgArchive file.

Can be changed in ONLINE or ADMIN operational state

LoadBalancingCheckInterval

LoadBalancingCheckLevel

LOAD_BALANCING_CHK

Time interval in which the database system checks whether it should use load balancing (in s)

Can be changed in ONLINE or ADMIN operational state

Concepts of the Database System, Load Balancing between User Kernel Threads

LocalRedoLogBufferSize

LOCAL_REDO_LOG_BUFFER_SIZE

If you enter a value > 0, then the system allocates a local buffer of this size (in bytes) to each transaction for saving redo log entries.

Changes only apply after a restart of the database.

-

LogQueues

LOG_QUEUE_COUNT

Number of log queues

If this number is 0, the system calculates the number from the parameter MaxLogQueues

Changes only apply after a restart of the database.

Glossary, Log Queue

LogQueueSize

LOG_IO_QUEUE

Size of the individual log queues (in pages)

Changes only apply after a restart of the database.

See above

MaxEvents

_MAXEVENTS

Maximum number of events in the working memory that can be processed by the system

Changes only apply after a restart of the database.

Glossary, Event

MaxExclusiveLockCollisionLoops

MP_RGN_LOOP

Maximum number of times a task attempts to access a critical section that has been locked by another task

If this number is exceeded, the accessing task changes its state to Waiting.

Can be changed in ONLINE or ADMIN operational state

Glossary, Critical Section

MaxLogWriterTasks

MAX_BACKUP_TASKS

Maximum number of log writer tasks (determines the maximum number of log partitions)

Changes only apply after a restart of the database.

Concepts of the Database System, Log Area and Tasks

MaxMemoryAllocationSize

MEMORY_ALLOCATION_LIMIT

Maximum amount of working memory to be used by the database (in KB)

Can be changed in ONLINE or ADMIN operational state

-

MaxParallelLiveCacheTraceFiles

_MAX_MESSAGE_FILES

Maximum number of trace files that the system can open simultaneously

Changes only apply after a restart of the database.

-

MaxRetentionTime

MinRetentionTime

MAX_RETENTION_TIME

MIN_RETENTION_TIME

For SAP liveCache databases

Specifies the time (in min) after which the garbage collectors start deleting the history data (undo log entries and links to them)

The garbage collectors start deleting the history data in the following cases:

  • When the data area is more than 90% full, the garbage collectors delete all history data that is older than MinRetentionTime.

  • When the data area is less than 90% full, the garbage collectors delete all history data that is older than MaxRetentionTime.

Can be changed in ONLINE or ADMIN operational state

Concepts of the Database System, How Databases Log Data Changes

MaxServerTasks

MAXSERVERTASKS

Maximum number of server tasks

Changes only apply after a restart of the database.

Concepts of the Database System, Tasks

OfficialNodeName

OFFICIAL_NODE

Only for hot standby systems

Virtual Server Name by which the cluster is addressed from the outside

The system administrator initially assigns the Virtual Server Name to the computer on which the master database of the hot standby system is located.

If the master database fails, then the name transfers to the standby database that takes on the master role.

Changes only apply after a restart of the database.

Glossary, Hot Standby

OmsHeapThreshold

OMS_HEAP_THRESHOLD

For SAP liveCache databases

Specifies how much working memory usage the OMS heap may use (in %)

Changes only apply after a restart of the database

-

OmsSubHeaps

OMS_HEAP_COUNT

For SAP liveCache databases

Specifies whether the OMS heap is divided into segments

If the OMS heap is not divided into segments, the internal heap memory management locks the entire OMS heap whenever a database procedure requests or releases memory.

Changes only apply after a restart of the database

Concepts of the Database System, Working Memory Areas

OmsVersionThreshold

OMS_VERS_THRESHOLD

For SAP liveCache databases

Specifies how much working memory the OMS versions may use (in KB)

Changes only apply after a restart of the database

-

RequestTimeout

REQUEST_TIMEOUT

Maximum time that a database session waits for a locked database object to be released (in s)

If this time is exceed, the system sends a message to the waiting database session. The system then rolls back any changes that were previously executed within the respective transaction.

Changes only apply after a restart of the database.

Concepts of the Database System, Locks

RequestUpdateStatisticsThreshold

-

If the system detects that the size of a table has changed by more than the value specified in this parameter (in percent) since the last statistics update, it marks the table as needing a statistics update.

Can be changed in ONLINE or ADMIN operational state

RowLockManagementStripes

_ROW_RGNS

Number of critical sections into which the row lock list is divided

This division enables a parallel access to the lock list.

Changes only apply after a restart of the database.

Glossary, Critical Section

RowLocksPerTransactionThreshold

-

Maximum percentage of all available locks that a transaction can hold before the system attempts a lock escalation.

Can be changed in ONLINE or ADMIN operational state

Glossary, Lock

SequenceCacheSize

SEQUENCE_CACHE

Size of the sequence cache (in pages)

Changes only apply after a restart of the database.

Glossary, Sequence Cache

SessionTimeout

SESSION_TIMEOUT

Timeout value for database sessions (in s)

Can be changed in ONLINE or ADMIN operational state

Glossary, Database Session

SharedSQLCleanupThreshold

SHAREDSQL_EXPECTEDSTATEMENTCOUNT

Expected number of SQL statements to be stored in the shared SQL cache

Can be changed in ONLINE or ADMIN operational state

-

SharedSQLCommandCacheSize

SHAREDSQL_COMMANDCACHESIZE

Maximum size of the Shared SQL cache (in KB)

Can be changed in ONLINE or ADMIN operational state

-

TableLockManagementStripes

_TAB_RGNS

Number of critical sections into which the table lock list is divided

This division enables a parallel access to the lock list.

Changes only apply after a restart of the database.

Glossary, Critical Section

TraceBufferSize<task_type>Task

TRACE_PAGES_<task_type>

Each user kernel thread has its own trace area in the working memory.

This parameter specifies the maximum number of pages that are available to the specified task type per user kernel thread.

<task_type>:BUP (Backup Task, not yet implemented)|FS (Floating Service Task: either an event task or a Database Analyzer task)|GC (Garbage Collector)|LW (Log Writer)|PG (Pager)|SV (Server Task)|TI (Timer Task)|US (User Task)|UT (Utility Task)

Changes only apply after a restart of the database.

Concepts of the Database System, Tasks

TransactionHistorySize

TRANS_HISTORY_SIZE

Specifies for how many long-running transactions the system stores information

Changes only apply after a restart of the database.

-

TransactionHistoryThreshold

TRANS_THRESHOLD_VALUE

Time (in s) after which a transaction is considered long-running by the system

Can be changed in ONLINE or ADMIN operational state

-

TransactionLockManagementStripes

_TRANS_RGNS

Number of critical sections into which the transaction lock list is divided

This division enables a parallel access to the lock list.

Changes only apply after a restart of the database.

Glossary, Critical Section

UpdateStatSampleAlgorithm

UPDATESTAT_SAMPLE_ALGO

Determines the algorithm that the database system uses to update the SQL optimizer statistics

In SAP systems we recommend the value 1 for this parameter.

Can be changed in ONLINE or ADMIN operational state

SQL Optimizer, SQL Optimizer Statistics

UseableCPUs

-

Restricts the number of available CPUs in a running system.

The following constraint applies:1 ≤ UseableCPUs ≤ MaxCPUs

To permanently configure the number of available CPUs, use the general database parameter MaxCPUs.

Can be changed in ONLINE or ADMIN operational state

UseBackupSecurityDescriptor

USE_BACKUP_SECURITY_DESCRIPTOR

Only on Microsoft Windows

Specifies whether the system uses the Microsoft Windows Security Descriptor for backups to data carriers of the file type

Caution Caution

If you want to carry out backups to a Samba share, set this parameter to NO.

End of the caution.

Changes only apply after a restart of the database.

-

UseDataCacheScanOptimization

LRU_FOR_SCAN

Specifies whether the whole data cache is used for scans

Can be changed in ONLINE or ADMIN operational state

-

UseHashedResultset

HASHED_RESULTSET

Specifies whether the SQL optimizer uses temporary hash tables for creating aggregations.

Can be changed in ONLINE or ADMIN operational state

UseLobClustering

CLUSTERED_LOBS

Specifies whether the database system stores LOB values as clusters in the data area

Can be changed in ONLINE or ADMIN operational state

-

UseSharedSQL

SHAREDSQL

Activates the Shared SQL function

Parameter can be activated in ONLINE or ADMIN operational state but not deactivated

Glossary, Shared SQL

UseUnicodeColumnCompression

-

Specifies whether the system stores application data in columns of the type (VAR)CHAR UNICODE in newly created tables as UTF8

Can be changed in ONLINE or ADMIN operational state

Glossary, Data Type

VolumeFormattingMode

FORMATTING_MODE

The database system formats the volumes when the database is created. With this parameter, you specify the formatting type. Only use parallel formatting for data volumes of the FILE type that are located on different hard disks.

Changes only apply after a restart of the database.

Glossary, Volume

More Information

Glossary


Support Group (Special Operating System Group) - SAP Documentation

Background documentation Support Group (Special Operating System Group)

On Unix and Linux, the database system uses special operating system groups, the support groups, to protect operating system resources from unauthorized access. Defining support groups is optional. We recommend that you define a separate support group for each database.

The system default for the name of the support group for a database is <sdb<database_name>>, for example sdbdemodb for database DEMODB . If you define a support group, you must include the special operating system user <sdb_user> in this group.

Operating system users who belong to the support group can execute support tasks without having to be a member of the <sdba_group> operating system group.

If there is a support group for a database, then the volumes receive the operating system group ID (GID) of the support group. Operating system users who belong to the support group can access the volumes directly, for diagnosis purposes, for example.

If you have defined a support group, but have not yet assigned any operating system users to it (empty support group), then operating system users cannot access the volumes directly.

If there is a support group for a database, then the user profile container also gets the GID of the support group. The user profile container is the file in which the DBM server manages its authorizations. For more information, see Database Administration, Configuration Files.


Locks - SAP Documentation

Background documentation Locks

Multiple transactions can access the same database object, such as a table, at the same time. To isolate the transactions from one another, the database system sets locks for database objects.

You can use the isolation level to configure the locking behavior of the database system. More information: Isolation Level

Locks: Types
Lock Types
Name | System Name | Description | Objects that Can Be Locked
Shared lock | SHARE LOCK | Other transactions retain read access to the database object and can continue to set shared locks for this database object. | Tables, rows, database catalog
Exclusive lock | EXCLUSIVE LOCK | Other transactions have neither read nor write access to the database object. All SQL statements that change data, such as INSERT, UPDATE and DELETE statements, always request an exclusive lock. | Tables, rows, database catalog
Optimistic lock | - | Keeps track of changes to a database object Other transactions can continue to set shared, exclusive or optimistic locks for the database object. | Rows
Shared Lock (SHARE LOCK)

When a transaction sets a shared lock on a database object, then other transactions can continue to gain read access to the database object, and other shared locks can be set for this database object. However, you cannot set an exclusive lock, or change the database object.

Shared locks can be set for the database catalog, for a table, or for a table row.

At the end of a transaction, the database system implicitely releases shared locks. You can also explicitely release shared locks using the UNLOCK statement.

Exclusive Lock (EXCLUSIVE LOCK)

When a transaction sets an exclusive lock on a database object, then the database object in question is available only to this transaction, and can only be changed by this transaction. Other transactions that check for exclusive locks or that want to set exclusive or shared locks conflict with the existing exclusive lock for this transaction (lock collision). They are permitted neither shared nor exclusive access to the locked object.

Exclusive locks can be set for the database catalog, for tables, or for table rows.

An exclusive lock is released by the database system at the end of the transaction in question. It can also be released with the UNLOCK statement by the respective user. However, this is only possible when the database object has not been changed. If the database object has been changed with an SQL statement (for example, using the INSERT, UPDATE, or DELETE statement), the exclusive lock remains in place until the end of the transaction.

Optimistic Lock

A transaction can set an optimistic lock for a table row (data record). The database system informs the transaction of the current version number of the table row.

Each time a table row is changed, the database system increases the version number. By comparing the original and current version numbers, database applications can determine whether the data read while setting the lock is still current or must be read again.

You have to explicitely request optimistic locks using the LOCK statement. If an exclusive lock already exists for a database object, you cannot set an optimistic lock (lock collision). If an optimistic lock exists for a database object, other users can continue to set exclusive, shared, or additional optimistic locks.

Before a transaction can change a table row for which it has set an optimistic lock, the database system checks whether the table row has been changed by another user since the optimistic lock was set.

  • If the table row has not been changed, the database system first converts the optimistic lock into an exclusive lock, and makes the changes.

  • If another transaction has changed the table row in the meantime, the database system rejects the change and releases the optimistic lock.

An optimistic lock is only useful if one of the isolation levels 0, 1, 10, or 15 has been configured.

Setting Locks

Locks for rows or tables can be requested/released implicitly by the database system, or explicitly requested/released by a user.

Locks in the database catalog are always requested and released implicitly by the database system.

To explicitly request a lock for a transaction, you can use the LOCK statement.

To lock individual rows of a table, you can use the LOCK option within an SQL statement. This is possible at every isolation level. You can use the LOCK option to temporarily override the isolation level for individual SQL statements.

More information: SQL Reference Manual, LOCK Statement and LOCK Option (lock_option)

Releasing Locks
When Are Locks Released?

Type of Lock

Release

The lock was explicitly set by the user using a LOCK statement

The database system releases the lock after the end of the transaction.

Exceptions: If a COMMIT statement or a ROLLBACK statement contains a LOCK statement, the database system does not release the locks at the end of the transaction.

Implicitly set shared lock

Depends on the isolation level

  • Implicitly set exclusive lock

  • Exclusive lock for changed rows

  • Exclusive locks that were requested by a changing SQL statement

  • Table lock

The database system only releases the lock after the end of the entire transaction.

  • Exclusive lock for rows that have not yet been changed

  • Shared locks for rows

You can release these locks with an UNLOCK statement.

More information: SQL Reference Manual, UNLOCK Statement (unlock_statement)

More Information

Transactions

Database Administration, Analyzing Database Performance

Database Studio, Configuring Locks

Database Administration in CCMS, SQL Locks

SAP Note 1243937 (FAQ: MaxDB SQL Locks)


Support Database Parameters - SAP Documentation

Background documentation Support Database Parameters

The following overview describes database parameters belonging to the SUPPORT group. Most support database parameters are for troubleshooting. In normal operation, it is not necessary to change the support database parameters. Changing support database parameters requires detailed knowledge of the database system.

For information about other database parameters, see

  • General Database Parameters

  • Special Database Parameters

  • liveCache Database Parameters

To change the values of database parameters, use one of the following database tools: Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio, Changing Database Parameters

  • Database Administration in CCMS, Parameters

Most changes to database parameters take effect only after the database has been restarted.

However, you can change certain database parameters while the database is running, that is in the ONLINE or ADMIN operational state (see the description of individual database parameters for more information). For these changes you can define when they are to become effective:

  • Until the next restart

  • After the next restart

  • Immediately and permanently

Note Note

Starting with version 7.7.03 of the database software, the names of many database parameters have changed.

Some database parameters have also been designated obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

More information: Obsolete Database Parameters

End of the note.
Support Database Parameters

Name

(from version 7.7.03)

Old Name

(up to and including version 7.7.02)

Description

Change Restrictions

More Information

CommandBufferSize

_PACKET_SIZE

Size of the packages (shared memory segments) in which SQL statements and data are transferred

A package consists of a request part and a reply part.

The minimum package size is 48 KB.

Changes only apply after a restart of the database.

-

DataIOClusterSize

DATA_IO_BLOCK_COUNT

Block size that the database system uses when writing data pages from the data cache to the data area.

The optimum block size depends on your hardware and software.

Changes only apply after a restart of the database.

-

DeadlockDumpFileName

DEADLOCK_DUMP_FILENAME

Determines whether the system writes a dump file when it encounters an SQL deadlock situation

If you do not specify a file name, the system does not write a dump file.

If you specify a file name, the system writes a dump file with that name in the database run directory.

Note that the dump file can only be analyzed by development support.

Can be changed in ONLINE or ADMIN operational state

EnableMultipleServerTaskUKT

ALLOW_MULTIPLE_SERVERTASK_UKTS

Specifies whether the database system distributes the server tasks to the available user kernel threads. Otherwise they all run in the same user kernel thread.

Changes only apply after a restart of the database.

-

EnableRemoveUndoOnTransactionEnd

-

YES: All undo files that are not needed for the history or for the garbage collectors are removed by the transactions themselves. This means that nearly all OLTP undo files will be removed at the end of a transaction.

NO: The undo files are removed by the garbage collectors.

Can be changed in ONLINE and ADMIN operational state

Concepts of the Database System, Working Memory Areas

EnableSymbolDemangling

SYMBOL_DEMANGLING

Specifies whether the database system carries out C/C++ demangling

Can be changed in ONLINE and ADMIN operational state

-

EnableVariableInput

EnableVariableOutput

USEVARIABLEINPUT

These parameters determine how the system transfers the content of variables between client and kernel.

The system either transfers the actual length of the content or the maximum possible length of the content. In the latter case, the system fills up the content up to the maximum length (depending on the data type).

Changes only apply after a restart of the database

-

EventFileName

_EVENTFILE

Name of the file in which the database system logs events

Changes only apply after a restart of the database.

Log Files

EventFileSize

_EVENTSIZE

Size of the file in which the database system logs events (in KB)

Changes only apply after a restart of the database.

-

FloatingServiceTasks

-

Maximal number of tasks in the floating service task pool

The floating service task pool contains tasks that the system can use for events and for Database Analyzer

You must configure at least 2 event tasks and 1 Database Analyzer task.

See also PreservedEventTasks and PreservedDBAnalyzerTasks

Changes only apply after a restart of the database.

Concepts of the Database Systems, Tasks

InitialAllocatorSize

INIT_ALLOCATORSIZE

Initial size of the working memory that is reserved at the start of a database session

Changes only apply after a restart of the database.

-

KernelDumpFileName

_KERNELDUMPFILE

Name and location of the dump file that is written by the kernel when the database crashes

The system writes the contents of the data cache and the converter to this file. Caution: This file may become very large. You can estimate the size of this file in the following way: CacheMemorySize + 10%.

Changes only apply after a restart of the database.

Parameter DIAG_HIST_NUM

KernelTraceFile

_KERNELTRACEFILE

Name and location of th file to which the kernel writes the database trace messages

The kernel only writes database trace messages if you previously activated the database trace.

Changes only apply after a restart of the database.

Concepts of the Database System, Load Balancing Between User Kernel Threads

LoadBalancingWorkloadDeviation

LOAD_BALANCING_EQ

For internal load balancing

Specifies which time delays the system should regard as equal when comparing waiting tasks (as a percentage)

Can be changed in ONLINE and ADMIN operational state

-

LoadBalancingWorkloadThreshold

LOAD_BALANCING_DIF

For internal load balancing

If the system considers moving a task from one user kernel thread to another, this parameter specifies the amount of time this task has to have waited longer than the longest waiting task in the target user kernel thread (as a percentage).

Can be changed in ONLINE and ADMIN operational state

-

LogIOClusterSize

LOG_IO_BLOCK_COUNT

Block size that the database system uses when writing log pages from the log queues to the log area

The optimum block size depends on your hardware and software.

Changes only apply after a restart of the database.

-

MaxPagerTasks

MAXPAGER

Maximum number of pagers

The system calculates this parameter from the MAXDATAVOLUMES parameter and other parameters.

Not changeable

You can override this parameter using the XP_MAXPAGER parameter.

-

MaxSavepointTimeInterval

_RESTART_TIME

Minimum time between two savepoints (in s)

This corresponds to the time that is required for a restart after a system crash.

Note that the database system always writes a savepoint in the following cases:

  • After you have created a new index

  • When the number of pages released by a savepoint is larger than the number of free blocks in the data volumes

Changes only apply after a restart of the database.

-

MaxServerTaskStackSize

MAX_SERVERTASK_STACK

Maximum size of the stack that is used by the server tasks

Changes only apply after a restart of the database.

Server Task

MaxSpecialTaskStackSize

MAX_SPECIALTASK_STACK

Maximum size of the stack that is used by the special tasks (all tasks except user tasks and server tasks)

Changes only apply after a restart of the database.

-

MaxTaskStackSize

_MAXTASK_STACK

Size of the stack that is used by the user tasks

Changes only apply after a restart of the database.

User Task

MaxTempFilesPerIndexCreation

_IDXFILE_LIST_SIZE

Number of temporary result files when the system is creating an index using multiple server tasks (parallel indexing)

The database system indexes large tables using multiple server tasks. These server tasks write their results to temporary files. When the number of these files reaches the value of this parameter, the database system has to merge the files before it can generate the actual index. This results in a decline in performance.

Can be changed in ONLINE and ADMIN operational state

-

OMSStreamTimeout

OMS_STREAM_TIMEOUT

Maximum wait time for all database sessions that may elapse until the reply to an OMS stream request from a client (in s)

Can be changed in ONLINE and ADMIN operational state

-

PreservedDBAnalyzerTasks

-

Minimum number of Database Analyzer tasks in the floating service task pool

See also FloatingServiceTasks

Changes only apply after a restart of the database.

Database Analyzer documentation

PreservedEventTasks

_MAXEVENTTASKS

Minimum number of event tasks in the floating service task pool

See also FloatingServiceTasks

The database system uses event tasks both for Event Dispatcher commands and for the DBM commands event_wait,event_receive, event_available, auto_extend and auto_update_statistics.

Changes only apply after a restart of the database.

Glossary, Event

QueryAnalysisMode

-

Specifies which internal mechanism is used for semantic analysis of queries.

To enable extended semantic analysis and as a prerequisite for the QueryRewrite function, choose EXTENDED.

Can be changed in ONLINE and ADMIN operational state

Special database parameter EnableQueryRewrite

ReadAheadLobThreshold

_READAHEAD_BLOBS

If a LOB value is too large to be transferred to the client in a single request package, the database system splits it into several request packages.

To increase performance, server tasks can import further parts of the LOB value while the first request package is being sent. This parameter specifies the minimum number of pages for a LOB value to be imported in advance by additional server tasks.

Can be changed in ONLINE and ADMIN operational state

-

RTEDumpFileName

_RTEDUMPFILE

Name of the file to which the kernel writes information about the runtime environment if the system crashes

Changes only apply after a restart of the database.

-

ShowMaxStackUsage

SHOW_MAX_STACK_USE

Specifies whether the system logs the maximum stack usage of each task in the kernel log

Only set this parameter to YES for diagnosis purposes as it compromises performance.

Changes only apply after a restart of the database.

-

TaskCluster01 to TaskCluster03

_TASKCLUSTER_01 to _03

These parameters determine how the database system distributes user tasks to the threads. Only change these parameters after consulting support.

Changes only apply after a restart of the database.

-

TaskSpecificCatalogCacheMinSize

CAT_CACHE_MINSIZE

Minimum size of the task-specific catalog cache (in bytes)

Changes only apply after a restart of the database.

Concepts of the Database System, Working Memory Areas

UpdateStatParallelServerTask

UPDATESTAT_PARALLEL_SERVERS

Specifies how many parallel server tasks the database system uses for updating the SQL optimizer statistics

Can be changed in ONLINE and ADMIN operational state

-

UseAsynchronousIO

_USE_ASYNC_IO

Specifies whether operating system functions or special I/O threads are used for asynchronous I/O operations

Changes only apply after a restart of the database.

-

UseColumnCompression

COLUMNCOMPRESSION

Only for columns that are not primary key columns

Specifies whether the system can store the column values in variable length or not

Default value: YES (columns have variable length, so the values can be compressed if necessary)

Can be changed in ONLINE and ADMIN operational state

-

UseExtendedOracleSQLMode

_SERVERDB_FOR_SAP

Specifies whether the database is being used in an SAP system

Can be changed in ONLINE and ADMIN operational state

-

UseFilesystemCacheForBackup

-

Specifies whether the database system uses the operating system's file system cache for I/O operations (O_DIRECT flag) when opening volumes or data carriers for backup or restore

YES: The database system does not use the O_DIRECT flag

NO: The database system uses the O_DIRECT flag (if this flag is supported by the file system; note that this flag is ignored for Linux kernels < 2.4.18).

Changes only apply after a restart of the database.

-

UseFilesystemCacheForVolume

(USE_OPEN_DIRECT)

Caution Caution

This parameter replaces the USE_OPEN_DIRECT parameter, but with a different logic. For backward compatibility, DeprecatedParameter29 has been introduced as a direct replacement for USE_OPEN_DIRECT, see Obsolete Database Parameters.

After migrating from an earlier database version and if USE_OPEN_DIRECT was set explicitly for example using a script, the system changes UseFilesystemCacheForVolume to the opposite value. Note though that after you have changed UseFilesystemCacheForVolume for the first time, it does not depend on USE_OPEN_DIRECT any longer.

End of the caution.

Specifies whether the database system uses the operating system's file system cache for I/O operations O_DIRECT flag) when it is opening volumes for normal database operation

YES: The database system does not use the O_DIRECT flag

NO: The database system uses the O_DIRECT flag (if this flag is supported by the file system; note that this flag is ignored for Linux kernels < 2.4.18).

Changes only apply after a restart of the database.

-

UseStrategyCache

OPTIM_CACHE

Specifies whether the database system determines the search strategy only once or every time it executes a parsed SQL statement

For prepared statements with parameters, it may be sufficient to determine the search strategy only once.

Can be changed in ONLINE and ADMIN operational state

-

UseSystemPageCache

USE_SYSTEM_PAGE_CACHE

Specifies whether the database uses the system page cache for buffering memory pages that are no longer required

Changes only apply after a restart of the database.

-

UseSystemTrigger

ENABLE_SYSTEM_TRIGGERS

Specifies whether system triggers are called when the database is restarted

Changes only apply after a restart of the database.

-

UseVolumeLock

SET_VOLUME_LOCK

Specifies whether the database system sets a lock when a volume is added, which prevents the same volume from being added again later

In the following cases, it may make sense to set this parameter to NO:

  • For NFS-mounted volumes

  • In hot standby systems

Changes only apply after a restart of the database.

-

More Information

Glossary


Interfaces - SAP Documentation

Background documentation Interfaces

You can use interfaces to access functions of the database system using different programming languages and applications. Using interfaces you can, for example, program additional functions or connect applications to an SAP MaxDB database.

SAP MaxDB Interfaces

Name

Driver or Module

Features

Prerequisites

ADO.NET

SDB.Data.dll

Executing SQL statements

Microsoft .NET Framework 2.0

Backint for SAP MaxDB

-

Interface for developing third-party backup tools

-

Java

  • com.sap.dbtech.jdbc.DriverSapDB

  • com.sap.dbtech.powertoys.DBM

  • com.sap.dbtech.powertoys.Loader

(all contained in sapdbc.jar)

Executing SQL statements (JDBC driver)

Executing DBM commands

Executing Loader commands

JDBC 2.0: JRE 1.2 or JDK 1.2 (for application development)

JDBC 3.0: JRE 1.4, 1.5 or JDK 1.4, 1.5 (for application development)

ODBC

  • sdbodbc[w].dll (Microsoft Windows)

  • libsdbodbc[w].so|a (Unix and Linux)

Executing SQL statements

Microsoft Windows: ODBC Driver Manager 3.52 or higher and MDAC 2.7 or higher

Unix and Linux: Link directly to the application or use a driver manager (unixODBC 2.0.9 or iODBC 3.0.5)

Perl

  • DBD::MaxDB

Executing SQL statements

SAP MaxDB SQLDBC SDK

Perl 4 (5.6.1)

Perl DBI (1.2.1)

PHP

php_maxdb.[dll|so]

Executing SQL statements

PHP 5.2.5 or higher

Python

  • sdb.sql

Executing SQL statements

Python 1.5 - 2.3

SQLDBC

libSQLDBC.[dll|so]

Executing SQL statements

Developing applications and interfaces

-

WebDAV

webdavServletMaxDB-<version>.war

Accessing a document store in an SAP MaxDB database using the WebDAV protocol

Servlet container

More Information

Architecture of the Interfaces

Database Administration, Developing Database Applications


Planning Databases - SAP Documentation

Procedure documentation Planning Databases

Plan the most important database properties before you create a database. The following questions are particularly significant:

  • How much application data are you expecting (database size)?

  • How much database activity are you expecting (working memory size)?

  • What are your security requirements (hardware selection, system landscape)?

Procedure

Estimating the Database Size

When creating a database, you create data volumes for storing the application data and log volumes for storing the transaction log entries. The database size mainly depends on the size of the data area (set of all data volumes).

More information: Concepts of the Database Systems, How Databases Store Data and Log Entries

Note Note

You can add or delete volumes later.

End of the note.

The maximum number of data volumes is determined by the MaxDataVolumes general database parameter. More information: General Database Parameters

The larger you choose the value for the ConverterVolumeIdLayout special database parameter, the more data volumes you can use. Note that the maximum permitted size of the individual data volumes is reduced accordingly. More information: Special Database Parameters

Restrictions for Volumes
Description | Calculation Formula | Minimum Value | Maximum Value
Number of data volumes | 2^(ConverterVolumeIdLayout)-1 | 1 | 4095 Note Note The default value of ConverterVolumeIdLayout is 8. With this default value, the maximum number of data volumes is 255. End of the note.
Size of a data volume | <page_size>x(2^(32-ConverterVolumeIdLayout)-1) Page size = 8 KB | 1000 pages or 8000 KB | 512 GB Note Note The default value of ConverterVolumeIdLayout is 8. With this default value, the maximum size of a data volume is 128 GB. End of the note.
Size of the data area (sum of all data volumes) | - | 1000 pages or 8000 KB | 32 TB
Number of log volumes | - | 1 | 10,000
Size of a log volume | - | - | 32 TB
Size of the log area (sum of all log volumes) | - | - | 32 TB

Recommendation Recommendation

If you create data volumes of the FILE type in SAP systems, use the following formula: Calculate the square root of the total amount of space in GB that is available for the data volumes and round up to the nearest integer.

Example: Up to 50 GB of space is available for the data volumes. Square root (50) = 7.07, which means that 8 data volumes are recommended.

End of the recommendation.
Choosing and Configuring Disks for the Volumes

The speed with which the database system can read data from the volumes and write data to the volumes has a significant influence on the performance of the database.

Since the database system logs all data changes in the log volumes, the log volumes are the areas of the database with the highest write activity.

Recommendations:

  • Use different hard disks for the data volumes and the log volumes.

    More information: SAP Note 869267 (FAQ: MaxDB LOG area)

  • For the log volumes, do not use disks that already contain swap or paging areas.

  • If you are using several disks for the volumes, use disks with standardized performance specifications, in particular standardized access speeds. This is the only way to ensure that the disks are filled evenly.

  • Unix and Linux only: Do not use hard disks with journal file systems for the volumes. Journal file systems carry out their own logging of data changes, which is unnecessary for the database system and leads to performance reduction.

  • If your operating system supports the switching off of the operating system buffer cache, configure the support database parameters UseFilesystemCachingForVolume and UseFilesystemCachingForBackup accordingly.

    More information: Support Database Parameters

Choosing and Configuring RAID Systems

RAID systems have several advantages, among others better performance than storage on normal disks and a potentially very large storage capacity.

Recommendations:

  • Mirror the log area using hardware-based means, for example by using RAID-1, RAID-10, RAID-0+1 or RAID-DP systems. For security and performance reasons, do not use RAID-5 systems.

    If hardware-based mirroring of the log area is not possible, then configure the database log mode so that the database system mirrors the log area.

  • Even if you are using RAID systems for your data area, create several data volumes for the database.

    Since some of the database system’s parallelization techniques depend on the number of data volumes, you can improve performance if you use several data volumes instead of one data volume.

  • If you are using fault-tolerant hardware, then extend it only with the same type of hardware.

    For example, extend RAID-5 systems with RAID-5 systems only.

  • When you select your RAID system, make sure that the RAID controller has a good write performance and that caches can still be backed up to disk even when there is a power outage.

Configuring Raw Devices

On Unix, you can use raw devices for data and log volumes. In general, the database can access raw devices quicker than files. The operating system can also start raw devices more quickly because it does not need to check the consistency of the file system.

Recommendations:

  • If you create data volumes on a raw device, do not configure them larger than the actual size of the raw device.

  • Make sure that every raw device is only accessed by one database.

More information: SAP Note 912905 (FAQ: Storage systems used with MaxDB)

Choosing a Processor Architecture

The SAP MaxDB architecture benefits greatly from the advantages of 64 bit platforms (for example, better memory management).

We recommend that you run SAP MaxDB on a 64–bit platform.

More information: SAP Note 1013441 (Upgrade required: Advantages for MaxDB on 64-bit platforms)

Choosing an Adequate Working Memory Size

The size of the working memory that the database system uses for I/O operations (I/O buffer cache) has a big impact on the performance of your database. The larger the I/O buffer cache, the fewer time-consuming accesses to the hard discs are needed. The optimal size of the I/O buffer cache heavily depends on your application and the activity on your database.

You configure the size of the I/O buffer cache with the database parameter CacheMemorySize.

More Information

  • SAP Note 1173395 (FAQ MaxDB Configuration)

  • SAP Note 820824 (FAQ: MaxDB/SAP liveCache Technology)

  • SQL Reference Manual, Restrictions for SQL Statements


Exporting and Importing - SAP Documentation

Procedure documentation Exporting and Importing

Procedure

The primary tools for exporting and importing are Database Studio and Loader.

Which Database Tools Are Suitable for Export and Import?

Task

Source

Target

Database Tools

Exporting application data:

Including LOB columns

In different formats

Converting date and time values

Converting NULL values

Mapping character records

Database

  • Database

  • File

  • Pipe

  • External data carrier, such as a tape

Database Studio, Exporting Data and/or Information from the Database Catalog

Loader, Exporting: Loader Commands

Exporting LOB Values

Importing application data:

Including LOB columns

In different formats

Converting date and time formats

Converting NULL values

Mapping character records

  • Database

  • File

  • Pipe

  • External data carrier, such as a tape

Database

Database Studio, Importing Data and/or Information from the Database Catalog

Loader, Importing: Loader Commands

Importing LOB-Values

Exporting database catalog

Database

  • Database

  • File

  • Pipe

  • External data carrier, such as a tape

Database Studio

Loader

Importing the database catalog

  • Database

  • File

  • Pipe

  • External data carrier, such as a tape

Database

Database Studio

Loader

Exporting SQL statements

Exporting definitions of database objects

Database

File

Database Studio, Saving SQL Statements or Definitions of Database Objects in a Repository

Importing SQL statements

Importing definitions of database objects

File

Database

Database Studio, Editing Objects in a Repository

Copying the whole database

Database

Database

Database Studio

Database Manager

More information:

Database Copy

More Information

Replication and High Availability


Developing Database Applications - SAP Documentation

Procedure documentation Developing Database Applications

Most applications use a database to store and manage data. To develop an application running on the SAP MaxDB database, you can choose between several programming interfaces.

You can also use an SAP MaxDB database as the database for your SAP system, for example SAP Business All-in-One. Using SAP MaxDB databases in SAP systems is standardized and is not described in this section.

Prerequisites

You have created a database.

More information: Creating Databases

Procedure

  1. Develop the SQL statements that your application uses to access the database.

    More information:

    • SQL Tutorial

    • SQL Reference Manual

    Recommendation Recommendation

    • Acquaint yourself with the general recommendations for developing database applications.

    • Formulate your search conditions to be as selective as possible.

      More information: Analyzing Database Performance, SAP Note 819641

    • Use prepared statements. Prepared statements have the following advantages:

      • They achieve better performance when the same prepared statement is executed again.

      • No SQL Injection is possible.

      More information:

      • Database Studio, Testing Prepared Statements

      • SAP MaxDB Security Guide, Checking User Inputs in SQL Statements.

    End of the recommendation.

  2. Connect the application to the database via an interface.

    SAP MaxDB Interfaces

    Name

    Driver or Module

    Features

    Prerequisites

    ADO.NET

    SDB.Data.dll

    Executing SQL statements

    Microsoft .NET Framework 2.0

    Backint for SAP MaxDB

    -

    Interface for developing third-party backup tools

    -

    Java

    • com.sap.dbtech.jdbc.DriverSapDB

    • com.sap.dbtech.powertoys.DBM

    • com.sap.dbtech.powertoys.Loader

    (all contained in sapdbc.jar)

    Executing SQL statements (JDBC driver)

    Executing DBM commands

    Executing Loader commands

    JDBC 2.0: JRE 1.2 or JDK 1.2 (for application development)

    JDBC 3.0: JRE 1.4, 1.5 or JDK 1.4, 1.5 (for application development)

    ODBC

    • sdbodbc[w].dll (Microsoft Windows)

    • libsdbodbc[w].so|a (Unix and Linux)

    Executing SQL statements

    Microsoft Windows: ODBC Driver Manager 3.52 or higher and MDAC 2.7 or higher

    Unix and Linux: Link directly to the application or use a driver manager (unixODBC 2.0.9 or iODBC 3.0.5)

    Perl

    • DBD::MaxDB

    Executing SQL statements

    SAP MaxDB SQLDBC SDK

    Perl 4 (5.6.1)

    Perl DBI (1.2.1)

    PHP

    php_maxdb.[dll|so]

    Executing SQL statements

    PHP 5.2.5 or higher

    Python

    • sdb.sql

    Executing SQL statements

    Python 1.5 - 2.3

    SQLDBC

    libSQLDBC.[dll|so]

    Executing SQL statements

    Developing applications and interfaces

    -

    WebDAV

    webdavServletMaxDB-<version>.war

    Accessing a document store in an SAP MaxDB database using the WebDAV protocol

    Servlet container

    Recommendation Recommendation

    For Java applications:

    • Use the JDBC connection management provided by the container.

    • During deployment, install the SAP MaxDB JDBC driver in the container rather than in the database application.

    End of the recommendation.

  3. Test your application.

    The Messages documentation explains database error and information messages and recommends how you can react to them. The messages are sorted by error number.

    More information: Messages documentation

More Information

Concepts of the Database System,

  • Technical System Landscape

  • Database Tools


Fixing Errors in the Database Structure - SAP Documentation

Procedure documentation Fixing Errors in the Database Structure

Prerequisites

You have carried out a database structure check.

More information: Checking Database Structures

Procedure

  1. Display the Database Messages kernel log file.

    More information: Log Files

  2. Search for the keyword CHECK. The results of the database structure check and any errors are displayed after this keyword.

    Example Example

    Typical error message:

    2005-04-08 09:40:30 0x37C ERR 53019 CHECK Base error: bad_datapage

    2005-04-08 09:40:30 0x37C ERR 53019 CHECK Root pageNo: 104236

    End of the example.

  3. For each error, identify the number of the root page (ROOT) of the respective B* tree; or for SAP liveCache data, the root page of the respective page chain.

  4. Use the ROOTS system table, or for SAP liveCache data the CLASSCONTAINER_ROOTS system table, to deduct the affected base table or the affected index from the number of the root page.

    More information: System Tables

  5. If the error has affected an index, recreate the damaged index.

    More information:

    • Database Studio, Recreating Damaged Indexes

    • Database Manager CLI, sql_recreateindex

    • Database Administration in CCMS, Index Analysis

  6. If the error affects a base table, you have the following options:

    • Deleting the base table; afterwards you can try to reconstruct the base table from other tables.

    • Restoring the complete database. To do this, you use the backup that was created before the last successful database structure check.

      If you have not yet made a database structure check for the database, then perform another database structure check for the table that was damaged after you import the backup. If the database system finds errors again, then import an older backup.

      More information:

      • Database Studio, Restoring Databases

Example

A base table contains a damaged data page on the leaf level of the B* tree of the base table: Leaf number 44690 with block address 1/564.

During a database structure check, the database system notices that the checksum for the data page is incorrect. The database system writes the following information to the kernel log file:

  • Error in the checksum

  • Page number with data volume and block address information

  • Leaf number in the B* tree

  • Type of the database object represented by the B* tree

  • Root page of the B* tree

  • Error message

Then the database system internally marks the database object as BAD.

Excerpt from the Kernel Log File

2005-04-08 09:40:28 0xCEC ERR 4 Data Data_BasePage.cpp:124

2005-04-08 09:40:28 0xCEC ERR 4 Data 2005-04-08 09:40:28 Data Error 4

2005-04-08 09:40:28 0xCEC ERR 4 Data Checksum mismatch; calculated: 5468846 found: 22246062

2005-04-08 09:40:28 0xCEC ERR 25 IOMan IOMan_Volume.cpp:500

2005-04-08 09:40:28 0xCEC ERR 25 IOMan 2005-04-08 09:40:28 IOMan Error 25

2005-04-08 09:40:28 0xCEC ERR 25 IOMan Bad page on Data volume 1 blockno 564

2005-04-08 09:40:30 0xCEC ERR 36 IOMan IOMan_Manager.cpp:1007

2005-04-08 09:40:30 0xCEC ERR 36 IOMan 2005-04-08 09:40:30 IOMan Error 36

2005-04-08 09:40:30 0xCEC ERR 36 IOMan Bad data page 44690

2005-04-08 09:40:30 0xCEC ERR 18 Data vbd13.cpp:2426

2005-04-08 09:40:30 0xCEC ERR 18 Data 2005-04-08 09:40:30 Data Error 18

2005-04-08 09:40:30 0xCEC ERR 18 Data Bad data page 44690 of filetype 'Table' identified by root 104236

2005-04-08 09:40:30 0xCEC ERR 53021 B*TREE Bad File: 104236 (Root)

2005-04-08 09:40:30 0xCEC ERR 53000 B*TREE 0D000000000000000388000000000000

2005-04-08 09:40:30 0xCEC ERR 53000 B*TREE Table Root 104236

2005-04-08 09:40:30 0x37C ERR 53019 CHECK Base error: bad_datapage

2005-04-08 09:40:30 0x37C ERR 53019 CHECK Root pageNo: 104236


Hot Standby - SAP Documentation

Procedure documentation Hot Standby

A hot standby system consists of a master database and one or more standby databases that are updated at regular intervals. Master and standby databases together form a cluster that, outwardly, behaves like a single database. More information: Architecture of a Hot Standby System

The standby databases are in the STANDBY operational state, which corresponds to a state between ADMIN and ONLINE. In this state, they are not full-fledged databases (they do not, for example, write log entries).

If the master database fails, one of the standby databases automatically becomes the new master database. More information: What Happens When the Master Database of a Hot Standby System Fails?

The main advantage of a hot standby system is the short downtime when errors occur (much shorter than the time it would take to restart the master database, for example).

Note that a hot standby system does not protect you against database errors and inconsistencies caused by users or applications. To prevent these types of errors, you have to perform regular data and log backups. More information: Backing Up Databases

Prerequisites

System Requirements for a Hot Standby System

Hardware

  • The computers on which the master and standby databases are located use hardware with the same amount of memory and the same type and number of processors.

  • Every computer has a unique name.

  • All computers are switched on.

Operating System

  • You have administrator rights on all computers.

Database Software

  • The same database software version is installed on all computers.

  • All paths and file names are the same for master and standby databases (run directory, volumes, trace files, and so on).

  • The respective SAP MaxDB X servers are running on all computers.

Cluster Software

The computers on which the master and standby databases of the hot standby system are located are part of a cluster. For information on setting up a cluster, see the manufacturer’s documentation.

Cluster software requirements:

  • Fail-over mechanism that allows the master and standby databases to switch roles in case of errors

  • IP switching

    Master and standby databases each have their own IP address

Setting up of a hot standby system for SAP MaxDB was tested for the following cluster software: IBM High Availability Cluster Multiprocessing for AIX clustering.

Storage System

The data and log areas of the master and standby databases are located in a storage system. For information about setting up the storage system, see the manufacturer’s documentation.

Memory management system requirements:

  • All databases can access the log area simultaneously.

    Ideally, the storage system should offer two different authorizations for access to the log area: read-only and read and write.

  • Every data volume of each database involved has its own physical memory area in the storage system. To avoid collisions of I/O accesses, we recommend separate hard disks in the storage system.

    The data volumes of each database have the same access path on their respective computers; alternatively, a corresponding symbolic link can be set up.

    Consistent copies of the data volumes (split) can be created that can be read and written-to independently of one another after the split. While a copy is being created, the master database can continue to write to its data volume so that downtimes remain minimal. After the split, the data volumes of the master and standby databases are completely independent of each other.

  • Fast copying of data within the storage system

    When standby databases are initialized or if an error occurs, large amounts of data may have to be copied.

  • Fast transmission of data between the storage system and the computers on which the databases are located

The following storage systems fulfill these requirements and support the setting up of a hot standby system for SAP MaxDB: EMC Symmetrix, IBM TotalStorage Enterprise Storage Server (ESS), IBM TotalStorage SAN Volume Controller (SVC).

Procedure

  1. Set up the cluster consisting of the computers on which the master and standby databases are to be located.

    For information on configuring the cluster, see the documentation for your cluster software.

  2. Using the cluster software, define a Virtual Server Name with which the system is to be addressed externally.

    The Virtual Server Name must not be the same as the name of a computer in the cluster.

  3. Set up your storage system.

    For information on configuring the storage system, see the manufacturer’s documentation.

  4. Create a database on the computer that you have defined as the Virtual Server.

    The volumes of the database must be located in the storage system.

  5. For the following steps, use Database Manager CLI.

    Configure the database as the master database of the hot standby system and add one or more standby databases.

    When you add a new standby database, the storage system copies the complete content of the master database in a consistent state, for example, the state at the last savepoint, to the data area of the standby database.

    Note that master and standby databases use the same values for their database parameters. When you change a database parameter in the master database, the system automatically transfers the changes to the standby databases.

Result

At regular intervals, the master database informs the standby databases of the position in the log area up to which it has written new redo log entries to the shared log area. To configure this delay, use the HotStandbySyncInterval special database parameter.

The system regularly updates the standby databases by importing the redo log entries of the master database up to a certain point in time from the shared log area and repeating the corresponding data changes. Thus the data area of the standby database, with some delay, always corresponds to the data area of the master database. To configure this delay, use the HotStandbyDelayTime? special database parameter.

More information: Special Database Parameters


Troubleshooting - SAP Documentation

Procedure documentation Troubleshooting

Procedure

  1. Check if one of the typical error situations (listed below) applies.

    Typical Error Situations

    Error Situation

    Typical Symptoms

    Solutions

    More Information

    Error during installation or upgrade of the database software

    The installation or upgrade of the database software fails.

    Check the installation log file.

    • Log Files

    • In your installation documentation (See: Glossary, Installation)

    The database is not in the ONLINE operational state.

    Users cannot log on to the database.

    Start the database.

    • Database Studio, Starting or Stopping Databases

    • Database Administration in CCMS: SAP liveCache Technology, Starting liveCache

    Error during data or log backup

    A data carrier is not available.

    Make the data carrier available.

    -

    Error during restore of a database

    A data or log backup is damaged.

    Check the backup.

    • Database Studio, Checking Backups

    • Database Manager CLI, recover_check

    • Database Administration in CCMS, DBA History

    The data area is full.

    All tasks are suspended, the system comes to a stand-still.

    Add a new data volume.

    • Database Studio, Adding Data Volumes

    • Database Administration in CCMS, Monitoring the Data Area

    The log area is full.

    All tasks are suspended, the system comes to a stand-still.

    No upgrade is possible (the system tables cannot be loaded).

    Back up the redo log entries.

    Then, if necessary, add a new log volume.

    Caution Caution

    Adding a new log volume will not immediately reduce the filling level of the log area. The system will only use the new log volume after you have carried out a log backup.

    End of the caution.

    Database Studio,

    • Backing Up Log Entries

    • Adding Log Volumes

    Database Manager CLI,

    • backup_start

    • db_addvolume

    Database Administration in CCMS, Monitoring the Log Area

    Maximum number of database sessions reached

    No further users can log on to the database.

    Raise the value of the general database parameterMaxUserTasks.

    General Database Parameters

    The database kernel has crashed.

    The database is in the OFFLINE operational state.

    Check the kernel log file.

    • Log Files

    • Database Administration in CCMS, Kernel Messages

    A firewall prevents the connection to the relevant SAP MaxDB X server (database communication server) on a remote computer.

    You cannot connect to a database on a remote computer.

    Ensure that the port of the relevant SAP MaxDB X server on the remote computer is not locked by a firewall.

    Global Listener and X Servers

    The relevant SAP MaxDB X server on a remote computer is not running.

    You cannot log on to a database on a remote computer.

    Start the relevant SAP MaxDB X server.

    Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers

    Inconsistent database structure

    -9053: Data page corrupted

    -9023: Illegal entrypos

    -9003: Illegal entrylength

    -9006: Illegal keylength

    -9041: Index not accessible

    Check the database structures and correct the error(s).

    • Checking Database Structures

    • Fixing Errors in the Database Structure

    Database error in an SAP system

    A database problem occurs in an SAP system that uses the SAP MaxDB database or SAP liveCache technology.

    Analyze the problem.

    Database Administration in CCMS, Performance

      The database is slow.

      Carry out a performance analysis

      Analyzing Database Performance

      Error message

      The system displays an error message.

      The Messages documentation explains (error and information) messages from the database system and recommends how you can react to them. The messages are sorted by error number.

      Messages documentation

      Miscellaneous errors

      Your system is not behaving as expected.

      Check whether your database configuration still complies with the current recommendations for your system.

      Checking the Database Configuration

    • Open the Database Errors log file and check whether there are any error messages for your database.

      More information:

      • Database Studio, Displaying Configuration and Log Files

      • Database Administration in CCMS: SAP MaxDB, Messages

    • If you cannot find a solution to your problem, save the Database Messages log file of your database to a local text file.

      The Database Messages file is the main database log file, which contains all database kernel messages (error messages, warnings, and information). The beginning of the file contains information about the software version, important paths and the current values of the database parameters. The end of the file contains the latest database actions.

    • Proceed as follows.

      • If you are an SAP Customer

        If you are an SAP customer, perform a SAP notes search on the SAP service marketplace at https://service.sap.com/notes (login required). The component for SAP MaxDB is BC-DB-SDB*.

        If you cannot find any SAP note describing your problem, open a support message with a detailed problem description and attach the Database Messages file. More information: Getting Support

      • If you are not an SAP Customer

        Search the SAP MaxDB wiki at https://www.sdn.sap.com/irj/scn/wiki?path=/display/MaxDB/Main.

        Search the SAP MaxDB forum in the SAP Community Network (SCN) athttps://www.sdn.sap.com/irj/sdn/forum?forumID=90.

        If you cannot find an answer to your problem, post a new question to the forum with a detailed problem description and information about your system setup (for example from the Database Messages file).

    More Information

    • Traces

    • Miscellaneous Database Files

    • Monitoring Databases

    You can follow the status of general software problems submitted to SAP using the PTS system. More information: Tracking Problem Messages in PTS


Conventions for User Names and Passwords - SAP Documentation

Background documentation Conventions for User Names and Passwords

The following general restrictions apply to user names and passwords:

  • User names must not have more than 18 characters.

  • Passwords must not have more than 256 characters.

    Note Note

    The maximum password length has been increased starting with SAP MaxDB software version 7.8.

    SAP MaxDB clients with software version < 7.8 can only handle users with a maximum password length of 9 characters.

    End of the note.

In addition, the specific restrictions apply to the different user types.

Database System Administrator

The rules for name and password of the database system administrator are the same as for DBM operators (see below).

As user name, you must not choose SYSDBA. SYSDBA is a reserved SQL keyword.

More information: Database System Administrator

DBM Operators

User name and password are automatically converted into upper-case letters by the database system.

The following characters are permitted:

  • First character:

    A...Z, a...z, $, #, @

  • Other characters:

    A...Z, a...z, $, #, @, 0...9, _

Language-specific characters, such as the German ä umlaut, are not allowed.

When entering user names and passwords on the command line, you may have to mask special characters with an escape character. For more information, see the documentation for your shell.

Example Example

In a Linux bash shell, user OLEG with password M$NDAY logs on to the DEMODB database using Database Manager CLI:

dbmcli -d DEMODB –u OLEG,M\$NDAY

End of the example.

In session mode in Database Manager CLI, you do not have to mask special characters.

More information: DBM Operators

Database Users

User names and passwords can have any character that is described in the following sections of the SQL Reference Manual: User Name (user_name), Password (password).

User name and password are automatically converted into upper-case letters by the database system. If the user name or the password contains lower-case letters and you do not want the database system to convert them into upper-case letters, put the whole user name or the whole password in quotation marks.

Example Example

To log on to a database as user MONA with password Red using Database Studio, enter the following information in the logon dialog box in Database Studio:

MONA

"Red"

End of the example.

When entering user names and passwords on the command line, you may have to mask special characters, such as $ or the quotation mark, with an escape character. For more information, see the documentation for your shell.

Example Example

In a Linux bash shell, user MONA with password R$D logs on to the DEMODB database using SQLCLI:

sqlcli -d DEMODB -u MONA,R\$D

End of the example.

More information: Database Users


Making the Standby Database the Active Database - SAP Documentation

Procedure documentation Making the Standby Database the Active Database

Prerequisites

  • You have set up a standby database.

    More information: Standby Database

  • The standby database has not been in the ONLINE operational state since it was last initialized.

Procedure

  1. In the original database, perform a log backup (if still possible).

    More information:

    • Database Studio, Backing up Log Entries

    • Database Administration in CCMS, Scheduling Log Backups

  2. In the standby database, import all the log backups from the original database that have not been imported yet.

    More information:

    • Database Studio, Restoring Databases

  3. Start the standby database.

    More information:

    • Database Studio, Starting or Stopping Databases

  4. Update the system tables.

    More information:

    • Database Studio, Updating System Tables

  5. If necessary, recreate any damaged indexes.

    More information:

    • Database Studio, Recreating Damaged Indexes

    • Database Manager CLI, sql_recreateindex

  6. Make a complete data backup of the standby database.

    More information:

    Database Studio, Backing Up Data

Result

You can now use the former standby database as your active database.

To turn the old original database into a new standby database, initialize the old original database and then proceed as described in Standby Database.


Concepts of the Database System - SAP Documentation

Component documentation Concepts of the Database System

This section describes the basic concepts of the SAP MaxDB database system and SAP liveCache technology.

  • SAP MaxDB is a relational database system with which you can create, use, and manage SAP MaxDB databases.

  • SAP liveCache technology is an object-based enhancement of the SAP MaxDB database system. You can use SAP liveCache technology either as a normal relational database system, or as a main memory-based special database system.

    More information: SAP liveCache Technology

Contents:

  • What is an SAP MaxDB Database?

  • Database Tools

  • Interfaces

  • Technical System Landscape

  • Data Definition, Query, and Manipulation

  • How Databases Log Data Changes

  • How Databases Store Data and Log Entries

  • Operating System Functions and Resources Used by Databases

More Information

Database Administration

SAP MaxDB Security Guide

Glossary


Isolation Level - SAP Documentation

Background documentation Isolation Level

The isolation level determines when the database system sets which locks.

Isolation Levels

Number

Name

Description

0

Uncommitted Read

The database system reads rows without requesting shared locks.

When a row is read again within a transaction, it is not guaranteed that it will have the same state as for the first read, since it may have been changed in the meantime by a different transaction.

It is also not certain that the database system will have saved the state of a read row by means of a COMMIT statement. In some cases, the read value is not saved by the database system. Instead, it is reset to a previous value by means of a ROLLBACK.

When rows are inserted, updated or deleted, the database system implicitly sets exclusive locks on the affected rows for the duration of the transaction. The database system only releases these locks when the transaction is ended.

1 or 10

1 and 10 are merely different ways of writing the same isolation level. They have the exact same meaning. The same applies to 2 and 20 as well as 3 and 30.

Committed Read

For each row that it reads, the database system ensures that at the time of its reading, no other transaction is holding an exclusive lock for that row.

When inserting, changing or deleting rows, the database implicitly sets exclusive locks for the corresponding transaction for the rows concerned, which it does not release again until the end of the transaction.

15

-

In addition to the behavior described for isolation level 1, the database system requests shared locks for all tables that are addressed by an SQL statement before the start of processing.

If an SQL statement generates a result table which is not permanently saved, then the database system only releases these locks at the end of the transaction or when the result table is closed. Otherwise, it releases the locks immediately after the SQL statement is processed.

2 or 20

Repeatable Read

In addition to the behavior described for isolation level 1, shared locks are implicitly requested for all tables that are addressed by an SQL statement for querying data before the start of processing.

If an SQL statement generates a result table that is not permanently saved, then the database system only releases these locks at the end of the transaction or when the result table is closed. Otherwise, it releases the locks immediately after the SQL statement is processed.

For the following SQL statements, the database system does not assign the table shared lock to the transaction: SQL statements with which exactly one row is processed in a table that is determined by key specifications or using CURRENT OF <result_table_name>.

Furthermore, the database system implicitly assigns a shared lock for the transaction for each row that is read during the processing of an SQL statement. These locks can only be released using an UNLOCK statement or by ending the transaction.

When inserting, changing or deleting rows, the database system implicitly assigns exclusive locks to the transaction for the affected rows that are not released until the end of the transaction. It does not assign locks for the whole table, however.

3 or 30

Serializable

In addition to the behavior described for isolation level 2, a transaction is assigned implicitly to a table shared lock for each table that is addressed by an SQL statement.

These shared locks can only be released by ending the transaction. This table shared lock is not assigned to the transaction with SQL statements, where exactly one row in a table is processed that is determined by key specifications or using CURRENT OF <result_table_name>.

When inserting, changing or deleting rows, the database system implicitly assigns exclusive locks to the transaction for the affected rows that are not released until the end of the transaction.

The degree of parallelism that is possible in the database decreases with the number of locks that are set and the length of time that they are held.

Which Locks Can Exist in Parallel?
- | A transaction has...
- | In a table |  | In a row |  | In a database catalog
Another transaction can... | Exclusive Locks | Shared Locks | Exclusive Locks | Shared Locks | Exclusive Locks | Shared Locks
Request an exclusive lock for the table | No | No | No | No | No | Yes
Request a shared lock for the table | No | Yes | No | Yes | No | Yes
Request an exclusive lock for any row in the table | No | No | - | - | No | Yes
Request an exclusive lock for the locked row | - | - | No | No | - | -
Request an exclusive lock for a different row | - | - | Yes | Yes | - | -
Request a shared lock for any row in the table | No | Yes | - | - | No | Yes
Request a shared lock for the locked row | - | - | No | Yes | - | -
Request a shared lock for a different row | - | - | Yes | Yes | - | -
Change the definition of the table in the database catalog | No | No | No | No | No | No
Read the definition of the table in the database catalog | Yes | Yes | Yes | Yes | No | Yes

The fewer locks that are set, the more phenomena occur and the lower the degree of consistency that can be guaranteed.

If multiple transactions access the same database object, such as a table, at the same time, this can result in inconsistencies in the results.

The following phenomena can occur:

  • Dirty Read

    Transaction T1 changes a row. Transaction T2 reads this row before T1 ends the transaction with COMMIT. T1 then performs a ROLLBACK. In this case, T2 read a row that never actually existed.

  • Non Repeatable Read

    Transaction T1 reads a row. Transaction T2 then changes or deletes this row and closes the transaction with COMMIT. If T1 then reads the row again, it either receives the modified row or a message indicating that the row no longer exists.

  • Phantom

    Transaction T1 performs an SQL statement S with a search condition that returns a result set M of rows. Transaction T2 then creates at least one additional row that meets this search condition, for example, by adding or changing data. If T1 subsequently executes S again, then the new result set is different to M.

You can use the isolation level to configure which phenomena are possible.

Relationship Between the Isolation Level and Phenomena
Phenomenon | Isolation Level
- | 0 | 1 or 10 | 2 or 20 | 3 or 30
Dirty Read | Yes | No | No | No
Non Repeatable Read | Yes | Yes | No | No
Phantom | Yes | Yes | Yes | No

More Information

Locks


Configuration Files - SAP Documentation

Background documentation Configuration Files

There are several configuration files for the database and the database software. You can open most of these configuration files directly using a text editor. To display configuration files that have a file ID, use Database Studio or Database Manager CLI.

More information:

  • Database Studio, Displaying Configuration and Log Files

  • Database Manager CLI, file_getfirst

Configuration Files for Installations
File Name | File ID | Directory | Description
Installations.ini | - | <global_data>\config | On Unix and Linux only Information about the installations and X servers on the computer Contains the XserverAutostart flag with which you can configure the startup behavior of the installation-specific X servers.
Configuration Files of the Database <database_name>
File Name | File ID | Directory | Description
BackupTemplates.xml | DBMMDF | Run directory of the database (see Run Directory). | Definitions of backup templates for the database
cserv.pcf | - | <installation_path>\env You can display the installation path using the dbm_getpath DBM command: dbmcli dbm_getpath InstallationPath For more information, see Database Manager CLI, dbm_getpath. | Default parameter file for the installation Contains the default values, value ranges, calculation formulas, and properties of the database parameters. More information: Properties of Database Parameters
<database_name> | PARAM | <data_path>\config You can display the data path using the dbm_getpath DBM command: dbmcli dbm_getpath DataPath | Binary parameter file of the database, containing the current values of the database parameters Caution Caution Do not change database parameter values directly in this file, but as described in the Database Parameters section. End of the caution. More information on the history of the values of database parameters: Log Files
<database_name>.upc | - | <data_path>\config | User profile container of the database Contains encrypted information about the database system administrator and the DBM operators. For information about the users that are stored in the user profile container, use the DBM commands user_getall and user_get. More information: Database Manager CLI, user_getall, user_get
dbm.cfg | DBMCFG | Run directory of the database | Database Manager configuration file for the database
dbm.upc | - | Run directory of the database | Copy of the <database_name>.upc file
Other Configuration Files
File Name | Directory | Description
.XUSER.62 | <os_user_home> (home directory of the operating system user who executed the XUSER command) | On Unix and Linux only File where the XUSER entries are stored. More information: XUSER
dbanalyzer<version>.cfg | <installation_path>\env You can display the installation path using the dbm_getpath DBM command: dbmcli dbm_getpath InstallationPath | Database Analyzer Configuration File
loader.cfg | <loader_application_data>\config | Loader configuration file More information: Loader, Transport Mode
sdb | /etc/opt | On Unix and Linux only Configuration file of the database software The installation program generates this file during the installation of the database software. Caution Caution Do not change this file. End of the caution.

More Information

Glossary, Directory, Documentation Variable


Conventions for Database Names - SAP Documentation

Background documentation Conventions for Database Names

You define the database name when you create the database. The database system automatically converts all lower-case letters you enter into upper-case letters.

Note that you cannot change the database name later.

General Restrictions

  • The database name can have a maximum of eight characters.

  • It may only contain characters from the 7-bit ASCII character set.

  • It must not begin with an underscore or a period.

Additional Restrictions on Microsoft Windows

  • The database name must not contain any of the following characters:

    \ / : * ? " < > |

  • The following database names are not allowed:

    CON, PRN, AUX, NUL

    COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9

    LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9

  • The database name must not end with a period.

When you are planning a database port from Unix or Linux to Microsoft Windows, observe the restrictions listed above.

More Information

Creating Databases


Example: SELECT Statement - SAP Documentation

Background documentation Example: SELECT Statement

In the ADDRESS table, the CITY column is defined as the primary key. A user has entered the following SELECT statement:

SELECT * FROM address WHERE city = 'Athens'

The database system searches the ADDRESS table for the data record that has the value Athens in the CITY column.

  1. The database system begins the search at the root level of the B* tree. It compares the value Athens with the value of the first separator on the root page, Baf.

    Because the value Athens is less than Baf, the database system continues the search on the first index page of the B* tree index level.

  2. The first separator An on the first index page of the B* tree index level is less than the value Athens. So the database system evaluates the next separator Au on the index page.

    Because the value Au is greater than the value Athens, the database system evaluates the address information following the separator An to get to the correct leaf page on the leaf level.

  3. To find the address information in the data record with the key value Athens, the database system uses a binary search algorithm.

    The database system searches the data records on the leaf page until it finds the data record it is searching for. This completes the search.

More Information

Logical Access Structures


Example: UPDATE Statement - SAP Documentation

Background documentation Example: UPDATE Statement

In the ADDRESS table, the CITY column is defined as the primary key. A user has entered an UPDATE statement.

In an UPDATE statement, the database system searches for the data to be changed in the B* tree in the same way as for a SELECT statement.

  • If an UPDATE statement does not change the key value of the data record, the database system changes only the contents of the data record.

    If the length of the data record is changed in the process, the database system moves the subsequent data records on the leaf page accordingly and then updates the position list of the leaf page.

  • If the UPDATE statement does change the key field of the record, the database system executes the UPDATE as a DELETE with a subsequent INSERT.

More Information

Logical Access Structures


Converter - SAP Documentation

Background documentation Converter

The converter assigns logical data pages to physical storage locations (converter block address). The database system accesses data pages in the data volumes using their converter block address. The converter block address consists of the volume ID and the offset in the data volume.

Example Example

Converter entry

271397 P 1/0000271404

The logical page number 271397 is a permanent (P) data page. It is stored in the first data volume at position 271404.

End of the example.
Data Page Types
Type | Description
P | Permanent data page
S | Data page in an SAP liveCache database
T | Temporary data page

The database system imports the complete converter into the converter cache when the database starts.

If the database system fails to find a page number in the data cache, it searches for the page number in the converter cache and uses this to calculate the physical position of the data page in the data volumes.

At each savepoint, the database system writes the contents of the converter cache to the data area and gives the stored converter a version number. The converter saved at the next savepoint is then given the next highest version number. Each converter version corresponds to a consistent state of the database.

The converter uses the shadow storage concept. The database system stores the database state most recently written into the data area (most recent converter version) until the next savepoint. If the database user wants to change data pages, the database system first imports the data pages into the working memory and makes the changes there. The database system then writes the changed data pages to a new location in the data volumes at the next savepoint. Only at the end of the savepoint does the database system release the old data pages in the data volumes for overwriting.

The same logical page can be stored at different physical locations at different times.

Snapshot of the Data Area

To create and manage snapshots, the database system uses a shadow memory concept: a snapshot saves the current converter. When you create a snapshot, the database system saves a link to the current starting point in the converter in the restart information of the database and flags all the physical pages in the data area whose addresses are in the converter. The database system cannot overwrite these pages as long as the snapshot exists.

Data changes that you make after the snapshot are written by the database system to other physical pages in the data area. If you delete a table, the database system does not physically delete this table, but only flags it as deleted (you can no longer access this table with SQL statements). In this way, a new version of the converter is gradually created, which with time differs increasingly from the version of the converter that was saved in the snapshot.

If you reject all changes you have made since the snapshot, then the database system deletes the starting point in the new version of the converter and replaces it with the starting point that is saved in the snapshot. The database system releases all pages that were changed after the snapshot for overwriting again.

If you delete the snapshot, the database system releases the flagged pages in the data area for overwriting.

More Information

  • Working Memory Areas

  • Volumes (Permanent Storage)

  • Data Area

Database Administration, Snapshot of the Data Area


Checking Database Structures - SAP Documentation

Procedure documentation Checking Database Structures

During a database structure check, the database system checks whether the database structures (for example the B* trees) in the cache and data area are consistent. The data model semantics are not checked, which is why you cannot find logical errors with a database structure check.

Recommendation Recommendation

Check the database structures once a week.

If you receive one of the following error messages, perform an unscheduled database structure check:

-9053: Data page corrupted

-9023: Illegal entrypos

-9003: Illegal entrylength

-9006: Illegal keylength

-9041: Index not accessible

End of the recommendation.

Procedure

To avoid disrupting operation, you can perform the database structure check on a database copy.

Use one of the following database tools: Database Studio or CCMS (in SAP systems only).

More information:

  • Database Studio, Checking Database Structures

  • Database Administration in CCMS,

    • Scheduling a Database Structure Check

    • Tables/Views/Synonyms (checking a single table)

Result

The database system lists all the commands used in the database structure check in the log files DBM.UTL and DBM.PRT; errors and return codes are also logged there. CCMS user can check the scheduling and the results of the database structure check in the DBA Planning Calendar.

More information: Log Files, Database Administration in CCMS, Displaying Actions

Return code 0 means that the database system found no errors during the database structure check. If the database structure check returns any other return code, proceed as described in Fixing Errors in the Database Structure.

More Information

Concepts of the Database System, Logical Access Structures


Database Users - SAP Documentation

Background documentation Database Users

Database users can change data in the database using query tools, database applications, or SQL statements. They can create and change database objects such as tables, views, and indexes. There can be several database users per database.

Database users can log on to the following database tools and programming interfaces:

  • Database Studio

  • SQLCLI

  • Loader

  • ODBC, JDBC, SQLDBC interfaces

Note that database users cannot carry out administration tasks for which a DBM server logon is required.

Every database user belongs to a database user class. Database user classes have different authorization levels for the database.

The work processes of an SAP system always connect to the database as database users SAP<SAPSID>, SAP<SAPSID>DDB (Java EE systems) or SAPR3 (older systems), where <SAPSID> is the SAP system ID.

Properties
SQL Properties of Database Users
Property | Description
User Class | DBA | RESOURCE | STANDARD
Connection Mode | NOT EXCLUSIVE: Allows the database user to open several database sessions simultaneously. EXCLUSIVE: Each database user can open only one database session. Caution Caution This connection mode only exists still for historical reasons. Do not use it. Database users with this connection mode cannot work with Database Studio. End of the caution. DISABLED: The database user is locked and cannot open any database sessions.
Session Timeout | Time after which the database session is ended after user inactivity.
Cost Warning | Specifies the estimated SELECT cost value beyond which the user receives a warning. In this case, the user is asked whether he or she really wants to execute the SQL statement.
Cost Limit | Specifies the estimated SELECT cost value beyond which the SQL statement is not executed. This value must be greater than the Cost Warning value.
Default Code Attribute | Default code attribute for creating new columns DEFAULT: The default code attribute is defined by the DefaultCodePage database parameter. ASCII UNICODE
Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables
Managing Database Users

The database system administrator can create database users of any database user class. Database users of the DBA user class can create, change, and delete database users of the RESOURCE and STANDARD classes.

More information:

  • Database Studio, Creating Database Users, Changing the Properties of Database Users, Deleting Database Users

  • SQL Reference Manual, CREATE USER Statement, ALTER USER Statement, ALTER PASSWORD Statement, DROP USER Statement

  • Database Administration in CCMS, User Data

You can assign special roles to database users in the SAP system. More information:

  • Database Administration in CCMS, Prerequisites

Privileges for Database Objects

Database users can be owners of database objects, such as tables or schemas. As owner of a database object, a database user can assign privileges for the object to other database users.

Privilege | Object | Privilege Allows Database Users to
ALTER | Table | Use the ALTER TABLE statement More information: Privilege Specification (priv_spec)
CREATEIN | Schema | Create database objects in the specified schema More information: Privilege Specification for a Schema (schema_priv_spec)
DELETE | Table | Delete rows in the specified tables More information: Privilege Specification (priv_spec)
DROPIN | Schema | Delete database objects in the specified schema More information: Privilege Specification for a Schema (schema_priv_spec)
EXECUTE | Database procedure Database function | Execute the database procedure or the database function More information: GRANT Statement (grant_statement)
INDEX | Table | Use the CREATE INDEX, ALTER INDEX and DROP INDEX statements More information: Privilege Specification (priv_spec)
INSERT | Table | Insert rows in the specified tables More information: Privilege Specification (priv_spec)
REFERENCES | Table | Specify the specified table as a referenced table in a column definition or referential CONSTRAINT definition More information: Privilege Specification (priv_spec)
SELECT | Sequence | Use the specified sequences More information: GRANT Statement (grant_statement)
SELECT | Table or parts of a table | Select entire rows or parts of rows in the specified tables More information: Privilege Specification (priv_spec)
SELUPD | Table or parts of a table | The SELECT and UPDATE privileges are granted. More information: Privilege Specification (priv_spec)
UPDATE | Table or parts of a table | Change entire rows or parts of rows in the specified tables More information: Privilege Specification (priv_spec)

More information: SQL Reference Manual, GRANT Statement (grant_statement)

More Information

Conventions for User Names and Passwords


Snapshot of the Data Area - SAP Documentation

Procedure documentation Snapshot of the Data Area

A snapshot stores the state of the data area at the time of the snapshot.

Caution Caution

A snapshot is not a data backup. To restore your data after damages to the data area, you need backups. Regularly back up your database.

Note that snapshots are not part of data backups. If you have to recover your database using data backups, you lose all snapshots in the process.

More information: Backing Up Databases

End of the caution.

To create and manage snapshots, the database system uses a shadow memory concept: a snapshot saves the current converter. Data changes that you make after the snapshot are written by the database system to other physical pages in the data area. For example, if you delete a table, the database system does not physically delete this table, but only flags it as deleted (and you can no longer access this table with SQL statements).

Procedure

  1. Create the snapshot.

    More information: Database Studio, Making Snapshots of the Data Area

  2. After you have created the snapshot, you can continue to work normally and change data in the database without influencing the snapshot.

  3. At a later time, you can do the following:

    • You return to the state of the data area at the time of the snapshot, thus rejecting all changes made since the snapshot. The snapshot contains all necessary information; you do not need a data backup for this.

      More information: Database Studio, Undoing Changes Since a Snapshot

    • You delete the snapshot, thus permanently transferring all changes that were made after the snapshot to the data area.

      More information: Database Studio, Deleting Snapshots

Example

You set up a computer for training purposes.

  1. Import a complete data backup from the original database onto the training computer.

  2. Create a snapshot.

  3. The database is now available for training purposes. The participants in the training course can now change data and start and stop the database.

  4. After the end of the training course and before the start of the next training course, discard all changes since the snapshot.

More Information

Concepts of the Database System, Converter


Database Tools - SAP Documentation

Background documentation Database Tools

SAP MaxDB Database Tools

Name

User Interface

Tasks

Typical Users

Downward Compatibility

Database Analyzer

Command line

Analysis of the performance of databases

Support employees

Database administrators

Yes

Database Manager CLI

Command line

Creating and managing databases, DBM operators and database users

Database administrators

Yes, ≥ 7.2

Database Studio

GUI

Note that starting with database version 7.7, Database Studio replaces Database Manager GUI and SQL Studio, and provides a GUI for the Loader.

  • Creating and managing databases, DBM operators and database users

  • Exporting and importing data, tables, schemas, users, and databases

  • Accessing data and the database catalog, SQL statements, creating, and managing database objects and database users

  • Synchronizing table contents of two or more databases.

Database administrators

Yes, ≥ 7.5

Loader

Command line

Exporting and importing data, tables, schemas, users, and databases

Database administrators

Application developers

Yes, ≥ 7.3

SQLCLI

Command line

Accessing data and the database catalog, SQL statements, creating, and managing database objects and database users

Database users

Application developers

Yes, ≥ 7.2

XCONS

Command line

Database console. Displaying detailed information about the operating system resources occupied by the database system

Support employees

Database administrators

Yes

XUSER

Command line

Creating and managing XUSER entries for simplified logon to database tools and interfaces with user keys

Support employees

Database administrators

Application developers

Yes
Other SAP Database Tools

Database Tool

User Interface

Tasks

Typical Users

Downward Compatibility

  • DBA Cockpit

  • Further CCMS Tools: Database Administration in CCMS

GUI

Managing SAP MaxDB and SAP liveCache databases in SAP systems

Note that CCMS is only available in SAP systems.

SAP administrator

Yes

Obsolete SAP MaxDB Database Tools
Name | Status | User Interface | Tasks | Typical Users | Downward Compatibility
Database Manager GUI | Since version 7.6, no more new functions have been developed. Use Database Studio instead. | GUI | Creating and managing databases, DBM operators and database users | Database administrators | Yes, ≥ 7.2
SQL Studio | Since version 7.6, no more new functions have been developed. Use Database Studio instead. | GUI | Accessing data and the database catalog, SQL statements, creating, and managing database objects and database users | Database users Application developers | Yes, ≥ 7.4.00
Web DBM | This software is no longer delivered (last delivery with version 7.5). SAP customers can find more information in SAP Note 856940 (Ordering Web Tools). Use Database Studio instead. | Web browser |  |  |
Web Server and Web Server Manager | This software is no longer delivered (last delivery with version 7.5). SAP customers can find more information in SAP Note 856940 (Ordering Web Tools). | Command line Web browser |  |  |
Web SQL | This software is no longer delivered (last delivery with version 7.6). Use Database Studio instead. | Web browser | Accessing data and the database catalog, SQL statements, creating, and managing database objects and database users | Database users Application developers | Yes

More Information

  • Technical System Landscape

  • Architecture of the Database Tools

  • Global Listener and X Servers


Load Balancing Between User Kernel Threads - SAP Documentation

Background documentation Load Balancing Between User Kernel Threads

The operating system has no influence on the way the database system distributes its tasks to the available user kernel threads. Therefore, it cannot intervene, for example, if a user kernel thread uses one processor at 100% capacity while the computer’s other three processors are not being used at all.

Within a user kernel thread, tasks behave cooperatively, that is, they decide when to suspend themselves and let the next waiting task take over (for more information, see Task Switching). This behavior can lead to a single task blocking all other tasks in the same user kernel thread.

To distribute tasks optimally to the user kernel threads, the database system performs internal load balancing. In doing so, the database system ensures better distribution of resources, in particular on computers with multiple processors, and shorter response times for individual users.

During load balancing, the Timer (special thread) distributes the tasks to the individual user kernel threads. At regular intervals, the Timer analyzes how long the individual tasks have been waiting in the user kernel threads and adds up these wait times for each user kernel thread.

If the total of the wait times in one user kernel thread is much greater than in another, then the Timer has the task that has been waiting the longest in the first user kernel thread moved to the second user kernel thread.

Procedure

To activate internal load balancing, set the LoadBalancingCheckInterval special database parameter to a value greater than null. More information: Database Administration, Special Database Parameters

To configure the maximum number of processors that are used in parallel, use the MaxCPUs general database parameter. More information: Database Administration, General Database Parameters

Example

User kernel thread UKT1 contains tasks T1, T2, T3, UKT2 contains task T4. T1 is in a long loop, whereas T2 and T3 are waiting.

The total of the wait times in UKT1 is 210 ms, in UKT2 it is only 10 ms. This is why T2, which has been waiting the longest in UKT1, is moved to UKT2.

This graphic is explained in the accompanying text.

Example: The system moves the task to another user kernel thread.

More Information

Threads

Tasks


Backing Up Log Entries - SAP Documentation

Procedure documentation Backing Up Log Entries

The database system stores information about data changes in redo log entries in the log area (set of all log volumes). After a system failure, for example due to a hard disk error, you may need redo log entries from log backups to restore the database to the desired state. Therefore, regularly back up your redo log entries from the log area to data carriers.

Note that in the following case, you do not need backed-up redo log entries to restore the database after a system failure: If the database system could not write the latest data changes to the data area, but the log area was not damaged, you can restart your database, and the database system uses redo log entries from the log area to repeat the necessary data changes. More information: Example: Restart

Caution Caution

If the log area is full, the database system cannot write any further redo log entries to the log area and stops all running transactions. This means that the database is unavailable for users. You can only continue working after you have backed up redo log entries from the log area to data carriers.

Exception: You have switched on the overwrite mode for the log area. This is not recommended in production systems though. More information: Glossary, Overwrite Mode for the Log Area

End of the caution.

Note that you cannot start any other backup while a log backup is running. Exception: While the automatic log backup is active, you can carry out data backups.

Prerequisites

  • You can only back up redo log entries after you have created at least one complete data backup of the database.

    More information: Backing Up Data

  • You have defined a backup template.

    More information: Backup Templates and Data Carriers

  • If you plan to back up to a data carrier on a remote computer (not the database computer), then additional preparations may be necessary.

    More information: Backing Up and Restoring Data with Remote Computers

  • The database is in the ONLINE or ADMIN operational state.

Procedure

For log backups, use Database Studio, Database Manager CLI, or CCMS (in SAP systems only).

Manual Log Backup

During a manual log backup, you back up all redo log entries that the system has written since the last log backup.

You can back up log entries to files or to pipes. When backing up to files, the system creates the necessary files one after the other. Each file has the size of a log segment. Note that restrictions apply for backing up to pipes, see Backup Templates and Data Carriers.

More information:

  • Database Studio, Backing up Log Entries

  • Database Administration in CCMS, Scheduling Interactive Log Backups

Activating or Deactivating Automatic Log Backup

If automatic log backup is on, the database system automatically backs up redo log entries to backup files.

The system starts a log backup at the following times:

  • When a log segment is full

    You configure the size of the log segments with the general database parameter AutoLogBackupSize.

    More information: General Database Parameters

  • When the configured time interval has elapsed

    You can specify the time interval when switching automatic log backup on.

Recommendation Recommendation

We recommend automatic log backup in particular for databases in which large amounts of data are changed and therefore a great number of redo log entries are written.

End of the recommendation.

Caution Caution

For automatic log backup, you cannot use pipes.

More information: SAP Note 869267

End of the caution.

More information:

  • Database Studio, Activating or Deactivating Automatic Log Backup

  • Database Administration in CCMS, Activating Automatic Log Backup

Archiving Backup Files

When you back up your log entries to files, you have to archive these backup files regularly.

More information: Archiving Backup Files

More Information

Concepts of the Database System, How Databases Log Data Changes

Restoring Databases


Periodic Administration Tasks - SAP Documentation

Procedure documentation Periodic Administration Tasks

As a database administrator you must periodically carry out certain administration tasks. Many of these administration tasks can be automated.

Procedure

The following table is an example for scheduling periodic administration tasks. Depending on how large you configured your database and how much of its capacity is in use, you may have to carry out these administration tasks more or less frequently than in this example.

Periodic Administration Tasks (Example)

Task

Frequency

Comments and Recommendations

More information

Complete data backup

On each productive day or according to your backup schedule

The more recent the last data backup, the quicker you can restore the database after a system failure.

Every restore requires a complete data backup as a starting point.

Backing Up Data

Incremental data backup

Optional

Once to multiple times a day, according to your backup schedule

If you cannot afford a complete data backup every day, then you should carry out at least an incremental data backup on each productive day.

Incremental data backups are cumulative: if you recover your database, only the most recent incremental backup is used.

See above

Log backup

Once to multiple times a day, depending on how much data was changed in the database and according to your backup schedule

Only necessary if automatic log backup is switched off.

Backing Up Log Entries

Archiving backup files

Regularly

Depending on how much space is available for your log backups

Only necessary for log backups on data carriers of the FILE type

Archiving Backup Files

Checking database structures

Once a week

We recommend that you check the database structures at times when the database load is low, or using a system copy.

Checking Database Structures

Updating SQL optimizer statistics

Once a week

For SAP systems refer to SAP note 927882

Outside SAP systems, we recommend that you activate the automatic statistics update

SQL Optimizer Statistics

SAP Note 927882

More Information

Automating Administration Tasks

If you use the database in a production system, we recommend that you continuously monitor the database, see Monitoring Databases


Replication and High Availability - SAP Documentation

Background documentation Replication and High Availability

A database can fail due to hardware or logical errors. To restore the database, you have to import data and log backups. If you need to import a lot of data, restoring can take quite a long time. During this time, the database is not available for users.

To make the database available for users more quickly (high availability), you can choose between several replication methods.

Procedure

Replication Mechanisms

Name

Description

Required Database Tools and Additional Software

Database Copy

You copy the active database.

A database copy is not a replication mechanism, but is required for setting up other replication mechanisms, such as standby databases.

SAP MaxDB Database Studio

Standby Database

You update a duplicate of the active database asynchronously.

You copy the log backups of the original database to the standby database computer and import them into the standby database.

When the original database fails, you can quickly resume operations with the standby database after importing the most recent redo log entries.

SAP MaxDB Database Studio

Hot Standby

Multiple duplicates of the active database are automatically updated synchronously.

All databases access the same log area.

When the active database fails, a standby database is automatically activated.

  • SAP MaxDB Database Studio

  • Cluster software

  • Memory management system

More Information

  • SAP Note 952783

  • High Availability for the SAP MaxDB Database

  • Restoring Databases


CREATE/DROP SCHEMAMAP Statement - SAP Documentation

Background documentation CREATE/DROP SCHEMAMAP Statement

A schema map is a mapping of the data from one schema to another. You can create a schema map using the CREATE SCHEMAMAP statement and delete a schema map using the DROP SCHEMAMAP statement.

Structure

Syntax Syntax

  1. <create_schema_map_statement> ::=
  CREATE SCHEMAMAP <schema_map_name> MAP SCHEMAMAP <schema_map_name>

<drop_schema_map_statement> ::=
  DROP SCHEMAMAP <schema_map_name>

<schema_map_name> ::=
  <identifier>

<schema_to_schema> ::=
  <schema_name> TO <schema_name>
End of the code.

If you create a schema map with the CREATE SCHEMAMAP statement, the schema map name and the associated schema names are stored in system table MAPSCHEMANAMES. The associated schemas must already exist. If the name of the schema map or schema is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in double quotation marks. For each schema in a database, there is a DEFAULT schema map with the name ID that this schema maps onto itself.

The DROP SCHEMAMAP statement deletes the entries of the schema map specified in the statement from the MAPSCHEMANAMES table.

You can use any schema map with the USE SCHEMAMAP command or the IMPORT SCHEMA command.

Example

Example Example

CREATE SCHEMAMAP myschemamap MAP SCHEMA a1 TO b1, a2 TO b2

//

USE SCHEMAMAP myschemamap

//

IMPORT SCHEMA a1 ...

//

End of the example.

The data from schema a1 is mapped onto schema b1 and from schema a2 onto schema b2 (CREATE SCHEMAMAP). The schema map myschemamap (USE SCHEMAMAP) is valid for the entire Loader session, as long as you do not specify a new USE SCHEMAMAP command or specify another schema map in the IMPORT SCHEMA command. You enter the IMPORT SCHEMA command with the usual syntax; in other words, you specify the schema name of the exported data in the import command.

Example Example

IMPORT SCHEMA a1 ...

MAP SCHEMA a1 TO b1, a2 TO b2

CATALOG INSTREAM 'a1_csv.catalog'

End of the example.

The schema mapping a1 TO b1, a2 TO b2 is only valid for this IMPORT SCHEMA command. The schema map is created implicitly and then immediately deleted after the command is executed. A CREATE SCHEMAP statement is not necessary.

Example Example

IMPORT SCHEMA a1 ...

MAP SCHEMA myschemamap

CATALOG INSTREAM 'a1_csv.catalog'

End of the example.

The schema mapping is only valid for this IMPORT SCHEMA command. A schema map (myschemamap) predefined by CREATE SCHEMAMAP is used here.

More Information

MAPSCHEMANAMES

USE SCHEMAMAP Command

IMPORT SCHEMA Command

SQL Reference Manual, Schema name (schema_name)


Using Installation Manager - SAP Documentation

Procedure documentation Using Installation Manager

You can use Installation Manager to install, update, or uninstall the entire SAP MaxDB software package or individual software components, and also to create, upgrade and delete databases.

You can use Installation Manager to easily and quickly perform a preconfigured desktop installation. However, you can also choose the expert mode and adapt the default parameter values - such as database size, memory size, number of CPUs, log settings, and the automatic start of the database - according to your requirements.

Installation Manager also guides you through the updating of your existing SAP MaxDB software and databases (upgrade).

You can select options to create a demo database together with the software installation and, if desired, fill it with the example data used in the documentation. This enables you to reproduce step by step the examples shown in the SAP MaxDB documentation and to obtain similar results.

Prerequisites

  • System Requirements for Using Installation Manager

    Platform

    wxWidget Software

    Other Software

    MS Windows X86_32

    wxMSW

    -

    MS Windows X86_64

    wxMSW

    -

    MS Windows IA64

    wxMSW

    -

    Linux X86_32

    wxGTK2

    Gtk+ >= 2.0

    glibc >= 2.3.3 with TLS support (Thread Local Storage)

    If gcc 4.x is installed in your system, you may need additional libstdc compatibility libraries for gcc 3.2.x or gcc 3.3.x in certain circumstances.

    *Linux X86_64

    wxGTK2

    glibc >= 2.3.3

    Gtk+ >= 2.0

    *Linux IA64

    wxGTK2

    glibc >= 2.3.3

    Gtk+ >= 2.0

    *Linux PPC_64

    wxGTK2

    glibc >= 2.3.3

    Gtk+ >= 2.0

    SUN Solaris SPARC

    wxGTK2

    Gtk+ >= 2.0 (included from Solaris 9 onwards)

    SUN Solaris X86_64

    wxGTK2

    Gtk+ >= 2.0 (included from Solaris 9 onwards)

    IBM AIX PPC_64

    wxGTK (Gtk statically linked)

    X11 runtime

    HP-UX HPPA

    wxGTK (Gtk statically linked)

    X11 runtime

    HP-UX IPF

    wxGTK (Gtk statically linked)

    X11 runtime

  • With Linux, the root user must be authorized to open a display.

Procedure

On Unix/Linux:

  1. Go to the directory where you unpacked the software. Open a root shell and call the SDBSETUP program entering the following command:

    ./SDBSETUP

  2. Choose the action to be performed.

  3. Follow the instructions displayed by Installation Manager.

  4. Leave the root shell after installation has been completed.

  5. Update the PATH environment variable for the operating system user who will operate the SAP MaxDB database system.

    Example Example

    export PATH=/opt/sdb/programs/bin:$PATH

    If necessary, also add the login profile of the operating system user (for example, in the home directory of the user):

    .bash_profile

    End of the example.
On Microsoft Windows:

  1. Go to the directory where you downloaded the database software. Call the program SDBSETUP.exe.

  2. Choose the action to be performed.

  3. Follow the instructions displayed by Installation Manager.

More Information

Displaying Information About Installed Software

Glossary, Directory

Concepts of the Database System, Demo Database


Search Strategies for Key Column Search Conditions - SAP Documentation

Background documentation Search Strategies for Key Column Search Conditions

If an SQL statement contains a search condition for key columns, the SQL optimizer can use the following search strategies.

Search Strategies for Key Column Search Conditions

Search Condition

Search Strategy

Equality Condition for key columns

The database system accesses those rows for which keys are contained in the inversion list.

IN Condition for key columns

The database system accesses those rows for which keys are contained in the inversion lists.

Range Condition with only one condition (<, ≤, ≥, > ) for one of the two range limits (upper or lower limit)

The database system accesses those rows for which keys are contained in the inversion lists defined by the range.

Range condition for which both range limits are specified

For the selection of the search strategy, it is not important whether the condition was specified by a BETWEEN operator or by two conditions linked by an AND ( ≤ or ≥) for the same column.

The database system accesses those rows for which keys are contained in the inversion lists defined by the range.

Example

Note that depending on the amount of data, the system might use different strategies.

Equality Condition for a Key Column

EXPLAIN SELECT name

  FROM hotel.customer

    WHERE cno = 7020

  • Qualification: cno = 7020

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: None

  • Search strategy: EQUAL CONDITION FOR KEY

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER |  | EQUAL CONDITION FOR KEY | 40
 | CNO | (USED KEY COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 1

Because the primary key was fully qualified in the search condition, the database system accesses the data record directly.

Range Condition for a Key Column

EXPLAIN SELECT zip, name

  FROM hotel.city

    WHERE zip BETWEEN '10000' AND '20000'

  • Qualification: BETWEEN '10000' AND '20000'

  • Primary key of CUSTOMER table: zip

  • Indexes via qualified columns: None

  • Search strategy: RANGE CONDITION FOR KEY

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CITY |  | RANGE CONDITION FOR KEY | 11
 | ZIP | (USED KEY COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 1

More Information

Analyzing Search Strategies Using the EXPLAIN Statement

Search Strategies

You can find additional simple example SQL statements in the SQL Tutorial.


Search Strategies for Indexed Column Search Conditions - SAP Documentation

Background documentation Search Strategies for Indexed Column Search Conditions

If an SQL statement contains a search condition for indexed columns, the SQL optimizer can use the following search strategies.

Search Strategies for Indexed Column Search Conditions

Search Condition

Search Strategy

Equality Condition for indexed columns

The database system accesses those rows for which keys are contained in the inversion list.

IN Condition for indexed columns

The database system accesses those rows for which keys are contained in the inversion lists.

Range Condition with only one condition (<, ≤, ≥, > ) for one of the two range limits (upper or lower limit)

The database system accesses those rows for which keys are contained in the inversion lists defined by the range.

Range condition for which both range limits are specified

For the selection of the search strategy, it is not important whether the condition was specified by a BETWEEN operator or by two conditions linked by an AND ( ≤ or ≥) for the same column.

The database system accesses those rows for which keys are contained in the inversion lists defined by the range.

For some SQL statements that contain equality conditions, IN conditions or range conditions, the database system does not need to access table rows because all required values are already contained in the inversion list(s).

Example

Note that depending on the amount of data, the system might use different strategies.

Equality Condition for an Indexed Column

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name = 'Wagner'

  • Qualification: name = 'Wagner'

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name, firstname)

  • Search strategy: RANGE CONDITION FOR INDEX

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | RANGE CONDITION FOR INDEX | 34
 | NAME | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 2

Because the equality condition was specified for the first index column only, the database system has to use the RANGE CONDITION strategy for this SQL statement. Several entries with the value Wagner may exist in the index.

The database system sets the start key in the first data record that meets the equality condition in the first index column (Wagner), and the stop key in the first record that does not meet the condition (Walker) any more.

If you add a second equality condition, the system uses the EQUALITY CONDITION:

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name = 'Wagner' AND firstname = 'Walküre'

  • Qualification: name = 'Wagner', firstname = 'Walküre'

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name, firstname)

  • Search strategy: EQUALITY CONDITION

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | EQUAL CONDITION FOR INDEX | 34
 | NAME | (USED INDEX COLUMN) |
 | FIRSTNAME | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 2
IN Condition for an Indexed Column

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name IN ('Smith','Miller')

  • Qualification: name = IN ('Smith','Miller')

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name,firstname)

  • Search strategy: IN CONDITION FOR INDEX

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | IN CONDITION FOR INDEX | 34
 | NAME | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 21

For this SQL statement, the database system could also have used the corresponding RANGE condition. However, this would have been much more expensive for the specified values.

Range Condition for an Indexed Column

Create a one-column index EMPLOYEE_ENO using the ENO column, see SQL Reference Manual, CREATE INDEX Statement (create_index_statement).

EXPLAIN SELECT eno, hno

  FROM hotel.employee

    WHERE eno ≥ 8

  • Qualification: eno ≥ 8

  • Primary key of EMPLOYEE table: hno, eno

  • Indexes via qualified columns: EMPLOYEE_ENO (eno)

  • Search strategy: RANGE CONDITION FOR INDEX

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
EMPLOYEE | EMPLOYEE_ENO | RANGE CONDITION FOR INDEX | 45
 |  | ONLY INDEX ACCESSED |
 | ENO | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 45

The database system can execute this SQL statement with an INDEX ONLY strategy because only columns from the index and the primary key are contained in the SELECT list and qualification part, and the primary key columns are also stored in the index tree

To access the data records, the database system uses the EMPLOYEE_ENO index. It sets the start key in the first record that meets the ≥ condition (value 8), and the stop key in the last record of the index.

More Information

Analyzing Search Strategies Using the EXPLAIN Statement

Search Strategies

You will find additional simple example SQL statements in the SQL Tutorial.


How the SQL Optimizer Estimates the Costs of SQL Statements - SAP Documentation

Background documentation How the SQL Optimizer Estimates the Costs of SQL Statements

The SQL optimizer estimates the costs of all the search strategies that the database system can use for a given SQL statement. For this, the SQL optimizer estimates how many I/O operations the database system would need to execute each search strategy. The estimation is based on random samples and statistical information supplied by the database system.

The cost of a search strategy largely depends on the form of the search condition specified in the SQL statement.

Note Note

The SQL optimizer does not consider costs incurred by CPU time or memory usage.

End of the note.

You can use the EXPLAIN statement to display the search strategy and costs the SQL optimizer has selected for a given SQL statement.

Note that the SQL optimizer estimates costs using only the data sets that are currently available. For example, if you create an index for a table containing only a few data sets, the SQL optimizer might still decide to use the TABLE SCAN strategy, ignoring the index. For a similar table containing many data sets, the SQL optimizer might use another strategy instead, for example making use of the index.

More Information

  • SQL Optimizer Statistics

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • SAP MaxDB wiki: https://www.sdn.sap.com/irj/scn/wiki?path=/display/MaxDB/Main


Search Strategies for Search Conditions Linked with OR - SAP Documentation

Background documentation Search Strategies for Search Conditions Linked with OR

For SQL statements that contain search conditions linked with OR, the SQL optimizer proceeds as follows.

  1. It initially analyzes each search condition individually.

    Example Example

    b1 AND b2 AND (b3 OR (b4 AND b5))

    The SQL optimizer individually analyzes the expressions b1, b2 and (b3 OR (b4 AND b5)).

    End of the example.

  2. If the SQL optimizer finds an equality condition for key columns for b1 or b2, then it does not have to consider (b3 OR (b4 AND b5)) when selecting the search strategy, because the search range cannot be effectively restricted any further.

    If the SQL optimizer does not find any equality condition for key columns, it continues to analyze the search conditions linked with OR, which it has not considered until now. To do this, it proceeds as follows:

    1. It converts the search condition to the disjunctive normal form:

      b1 AND b2 AND (b3 OR (b4 AND b5))

      is transformed into the disjunctive normal form

      (b1 AND b2 AND b3) OR (b1 AND b2 AND b4 AND b5)

    2. It analyzes the new expression, analyzing the newly-formed parenthetical expressions separately.

    3. It determines the costs. For this, it sums up the costs of the various search strategies for the parenthesized expressions of the disjunctive normal form. If the sum is lower than the initial cost determined for the search strategy that was determined without considering the search conditions linked with OR, the database system uses this search strategy.

      If the total costs of (b1 AND b2 AND b3) and (b1 AND b2 AND b4 AND b5) are smaller than the costs for the search strategy for b1 and b2, the database system uses the strategies for (b1 AND b2 AND b3) and (b1 AND b2 AND b4 AND b5).

Example

The following example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name = 'Smith' AND firstname = 'Sally'

    OR name = 'Miller' AND firstname = 'Sally'

  • Qualification: name = 'Smith' AND firstname = 'Sally' OR name = 'Miller' AND firstname = 'Sally'

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name, firstname)

  • Search strategy for the first predicate: EQUAL CONDITION FOR INDEX

  • Search strategy for the second predicate: EQUAL CONDITION FOR INDEX

Result of the EXPLAIN statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER |  | DIFFERENT STRATEGIES FOR OR TERMS | 34
 | FULL_NAME_INDEX | EQUAL CONDITION FOR INDEX |
 |  | ADDNL. QUALIFICATION ON INDEX |
 | NAME | (USED INDEX COLUMN)) |
 | FIRSTNAME | (USED INDEX COLUMN)) |
 | FULL_NAME_INDEX | EQUAL CONDITION FOR INDEX |
 |  | ADDNL. QUALIFICATION ON INDEX |
 | NAME | (USED INDEX COLUMN)) |
 | FIRSTNAME | (USED INDEX COLUMN)) |
 |  | RESULT IS COPIED, COSTVALUE IS | 14

Multiple AND terms are linked to one OR condition. The AND condition has a higher priority than the OR condition.

The SQL Optimizer determines the best search strategy for each AND term. Both AND terms qualify the two index columns with an equality condition. This means that the database system can use the EQUAL CONDITION FOR INDEX strategy for each of these. ADDNL. QUALIFICATION ON INDEX is displayed because the columns linked with OR are also checked in the index.

More Information

Analyzing Search Strategies Using the EXPLAIN Statement

Search Strategies

You can find additional simple example SQL statements in the SQL Tutorial.


Equality Condition - SAP Documentation

Background documentation Equality Condition

An equality condition is a search condition with a comparison predicate.

Prerequisites

The SQL optimizer can only evaluate an equality condition if it meets the following conditions:

  • Only the relational operator (=) was used as operator.

  • It has one of the following forms:

    Syntax Syntax

    1. <column_spec> = <extended_value_spec>
<column_spec> = <subquery>
    End of the code.

    If an equality condition has a different form, the SQL optimizer attempts to transform it. The SQL optimizer transforms the following expressions into conditions without NOT with the negated operator =:

    Syntax Syntax

    1. ... NOT (<column_spec> <> <extended_value_spec>)
... NOT (<column_spec> <> <subquery>)
    End of the code.

    Note Note

    The SQL optimizer can only transform queries if the QueryRewrite function is enabled (special database parameter EnableQueryRewrite).

    More information: Database Administration, Special Database Parameters

    End of the note.

Example

The following example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

Equality Condition

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name = 'Smith'

  • Qualification: name = 'Smith'

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name,firstname)

  • Search strategy: RANGE CONDITION FOR INDEX

To find all data records with the name Smith, the database system can use the strategy FULL_NAME_INDEX (name,firstname).

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | RANGE CONDITION FOR INDEX | 34
 | NAME | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 6

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Conditions

  • SQL Reference Manual, Comparison Predicate (comparison_predicate)

You can find additional simple example SQL statements in the SQL Tutorial.


EXPLAIN Statement for SELECT Statements with Subqueries - SAP Documentation

Background documentation EXPLAIN Statement for SELECT Statements with Subqueries

To determine the cost of search strategies where the value of a column is compared with the hit rows of a subquery, the SQL optimizer must know the number of result rows. However, the number of result rows is not known until the subquery has been processed.

For a SELECT statement with subqueries, the EXPLAIN statement determines the possible search strategies, but does not execute these subqueries. Therefore, the search strategy NO STRATEGY NOW (ONLY AT EXECUTION TIME) is usually displayed for the outer SQL statement.

Example

The following examples use the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

SQL Statement With Subquery (I)

EXPLAIN SELECT name

  FROM hotel.city

    WHERE name IN (SELECT name FROM hotel.hotel)

  • Qualification: name IN (SELECT name FROM hotel.hotel)

  • Primary key of CITY table: zip

  • Primary key of table HOTEL: cno

  • Indexes via qualified columns: No search strategy used

  • Search strategy for outer SELECT statement: TABLE SCAN

  • Search strategy for subquery: TABLE SCAN

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
HOTEL |  | TABLE SCAN | 8
CITY |  | TABLE SCAN | 11
 |  | RESULT IS COPIED COSTVALUE IS | 101

This SQL statement selects those city names after which a hotel is named. Because a suitable index does neither exist for the CITY table nor for the HOTEL table, and the SELECT statements were not restricted to primary key columns, the database system uses the TABLE SCAN strategy for both SELECT statements.

SQL Statement With Subquery (II)

EXPLAIN SELECT cno, name

  FROM hotel.customer

    WHERE cno = ANY(SELECT cno FROM hotel.reservation WHERE arrival > '2005-01-01')

  • Qualification: cno = ANY(SELECT cno FROM hotel.reservation WHERE arrival > '2005-01-01')

  • Primary key of CUSTOMER table: cno

  • Primary key of RESERVATION tabel: rno

  • Indexes via qualified columns: No search strategy used

  • Search strategy for outer SELECT statement: NO STRATEGY NOW (ONLY AT EXECUTION TIME)

  • Search strategy for subquery: TABLE SCAN

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
RESERVATION |  | TABLE SCAN | 24
CUSTOMER |  | NO STRATEGY NOW (ONLY AT EXECUTION TIME) |
 |  | RESULT IS COPIED COSTVALUE IS |

The SQL statement selects those customers that have a reservation after a certain date. For the RESERVATION table, the database system selects the TABLE SCAN strategy. For the external SELECT statement, the NO STRATEGY NOW (ONLY AT EXECUTION TIME) strategy is selected.

More Information

SUBQ CONDITION FOR KEY

SUBQ CONDITION FOR INDEX

Analyzing Search Strategies Using the EXPLAIN Statement

List of All Search Strategies

SQL Reference Manual, Subquery (subquery)

You will find additional simple example SQL statements in the SQL Tutorial, Subquery: Inner Queries.


EXPLAIN Statement for Complicated SELECT Statements - SAP Documentation

Background documentation EXPLAIN Statement for Complicated SELECT Statements

The SQL optimizer breaks down complicated SELECT statements into multiple internal SELECT steps that create temporary results.

For SELECT statements of this type, the EXPLAIN statement provides multiple search strategies, and INTERNAL TEMPORARY RESULT is returned as the table name.

The database system can only search through intermediate results of this type sequentially.

More Information

Analyzing Search Strategies Using the EXPLAIN Statement

Search Strategies


STRATEGY Column - SAP Documentation

Background documentation STRATEGY Column

The result of the EXPLAIN statement is a table that consists of multiple columns. The STRATEGY column contains the following information:

  • Search strategy that is used by the SQL optimizer for the SQL statement.

    See List of All Search Strategies

  • Information on whether the database system creates a results table (RESULT IS COPIED) or not (RESULT IS NOT COPIED).

    See Postponement of the Search to the FETCH Time

  • Further information from the SQL optimizer:

    EXPLAIN Statement: Further Information from the SQL Optimizer

    Information from the SQL Optimizer

    Description

    ONLY INDEX ACCESSED

    The database system only uses the specified index for executing the SQL statement and does not access the data in the base table. This is possible only if, in the SQL statement, columns of this type have been specified in the index structure.

    DISTINCT OPTIMIZATION (A)

    The complete key is included in the SELECT list/output columns. This means that the result is automatically free from duplicates.

    DISTINCT OPTIMIZATION (C)

    Complete Secondary Key

    After the key word DISTINCT, all columns of an index (and only these) were specified in an arbitrary order in the SQL statement (DISTINCT specification):

    SELECT DISTINCT <all_index_colums> FROM ...

    The database system only accesses the values of the corresponding index columns once and does not create a results table.

    DISTINCT OPTIMIZATION (P)

    Partial Secondary Key

    After the key word DISTINCT, the first k (k < total number of columns of an index) columns of an index were specifed in an arbitrary order:

    SELECT DISTINCT <first_k_index_columns> FROM ...

    The database system only accesses the values of the corresponding index columns once and does not create a results table.

    DISTINCT OPTIMIZATION (K)

    Primary Key

    After the key word DISTINCT, all columns of an index and the first k (k <= total number of columns of key) columns of the key were specified in an arbitrary order:

    SELECT DISTINCT <all_index_columns_+_first_k_key_columns> FROM ...

    The database system only accesses the values of the corresponding index and key columns once and does not create a results table.

    TEMPORARY INDEX CREATED

    The database system creates an internal temporary index in which the keys of the hit rows determined by the corresponding index columns are stored in ascending order. The database system then accesses the base table via this temporary index.

    ADDNL. QUALIFICATION ON INDEX

    In the SQL statement, search conditions were specified for index columns or key columns that cannot use the database system for direct restriction of the range for index access. The database system uses the search conditions in the corresponding index strategy in order to limit access to the base table.

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Strategies

  • SQL Reference Manual, EXPLAIN statement (explain_statement), DISTINCT Specification (distinct_spec)


NO RESULT SET POSSIBLE - SAP Documentation

Background documentation NO RESULT SET POSSIBLE

The search condition cannot be met logically.

The database system does not carry out a search.

More Information

Search Conditions

List of All Search Strategies


EXPLAIN Statement for Joins - SAP Documentation

Background documentation EXPLAIN Statement for Joins

If you use the EXPLAIN statement for an SQL statement that contains joins, the following information will appear:

  • Order in which the database system processes the tables when executing the SELECT statement

  • Whether the database system can access the rows of a new table directly from the values in the join columns of the old temporary results table, or whether it can only access them via an inversion.

  • The search strategy the database system uses to search each new table if it cannot access the rows of this table directly or using an inversion.

Example

The following example uses the demo database DEMODB with the demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

EXPLAIN Statement

EXPLAIN SELECT customer.cno, customer.title, customer.name, customer.zip, city.name, city.state, customer.address

  FROM hotel.customer, hotel.city

    WHERE customer.zip = city.zip

  • Join tables: CUSTOMER and CITY

  • Qualification: customer.zip = city.zip

  • Search strategy for CITY: TABLE SCAN

  • Search strategy for CUSTOMER: JOIN VIA KEY RANGE

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CITY |  | TABLE SCAN | 1
CUSTOMER |  | JOIN VIA KEY RANGE | 1
 |  | TABLE TEMPORARY SORTED |
 | ZIP | (USED SORT COLUMN) |
 |  | RESULT IS COPIED COSTVALUE IS | 13

The database system accesses the table CITY and uses the search strategy TABLE SCAN. For the join with the table CUSTOMER it chooses the JOIN VIA KEY RANGE strategy using the ZIP column.

More Information

  • Search Strategies for Joins

  • List of All Search Strategies

  • SQL Reference Manual, JOIN Predicate (join_predicate)

You can find additional simple example SQL statements in the SQL Tutorial, Joins: Information From Several Tables.


JOIN VIA KEY COLUMN - SAP Documentation

Background documentation JOIN VIA KEY COLUMN

JOIN VIA KEY COLUMN is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy for joins where the join column is the only column of the primary key.

How Does the System Access the Data?

The database system accesses the second table in the join directly via the primary key.

More Information

Search Strategies for Joins

List of All Search Strategies


JOIN VIA KEY RANGE - SAP Documentation

Background documentation JOIN VIA KEY RANGE

JOIN VIA KEY RANGE is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can choose this search strategy if the joined columns are the first n columns of the key (n < number of key columns).

How Does the System Access the Data?

The database system reads the data in the second table sequentially within the primary key range.

More Information

Search Strategies for Joins

List of All Search Strategies


JOIN VIA INDEXED COLUMN - SAP Documentation

Background documentation JOIN VIA INDEXED COLUMN

JOIN VIA INDEXED COLUMN is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy if an index was created for the join column and this index only contains this one column.

How Does the System Access the Data?

The database system accesses the rows of the table that is to be linked via the index of the join column.

More Information

Search Strategies for Joins

List of All Search Strategies


JOIN VIA MULTIPLE KEY COLUMNS - SAP Documentation

Background documentation JOIN VIA MULTIPLE KEY COLUMNS

JOIN VIA MULTIPLE KEY COLUMNS is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy if the join columns can be combined into the key of the new table, which consists of multiple columns.

How Does the System Access the Data?

The database system accesses the table rows in the new table directly.

More Information

Searh Strategies for Joins

List of All Search Strategies


JOIN VIA RANGE OF MULTIPLE KEY COLUMNS - SAP Documentation

Background documentation JOIN VIA RANGE OF MULTIPLE KEY COLUMNS

JOIN VIA RANGE OF MULTIPLE KEY COLUMNS is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy if the join columns can be combined into the initial part of the key of the new table, which consists of multiple columns.

How Does the System Access the Data?

The database system accesses the table rows of the new table sequentially within the key range.

More Information

Search Strategies for Joins

List of All Search Strategies


JOIN VIA MULTIPLE INDEXED COLUMNS - SAP Documentation

Background documentation JOIN VIA MULTIPLE INDEXED COLUMNS

JOIN VIA MULTIPLE INDEXED COLUMNS is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy if the join columns may be combined into a complete index that includes multiple columns.

How Does the System Access the Data?

The database system accesses the rows of the table that is to be linked via this index.

More Information

Search Stragies for Joins

List of All Search Strategies


JOIN VIA RANGE OF MULTIPLE INDEXED COL. - SAP Documentation

Background documentation JOIN VIA RANGE OF MULTIPLE INDEXED COL.

JOIN VIA RANGE OF MULTIPLE INDEXED COL. is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy if the join columns can be combined into the initial part of an index that includes multiple columns.

How Does the System Access the Data?

The database system accesses the relevant table rows within the index range directly.

More Information

Search Strategies for Joins

List of All Search Strategies


Restrictions for UPDATE Statements - SAP Documentation

Background documentation Restrictions for UPDATE Statements

For UPDATE statements and SELECT statements that contain an UPDATE clause, the following restriction applies to the use of search conditions: If the new value of a column is calculated in an arithmetical expression, an inversion of this column (the corresponding index) cannot be evaluated by the SQL optimizer to determine the search strategy.

Example

UPDATE <table_name>

  SET columnx = columnx + 3

    WHERE columnx IN (100,103,106,109,112)

This SQL statement could lead to errors in the results if the database system were to process inversion lists step-by-step with the values 100, 103, 106, 109, and 112.

More Information

  • Search Conditions

  • Search Strategies

  • SQL Reference Manual, UPDATE Statement (update_statement), UPDATE Clause (update_clause)


Analyzing Search Strategies Using the EXPLAIN Statement - SAP Documentation

Background documentation Analyzing Search Strategies Using the EXPLAIN Statement

For an SQL statement with certain search conditions, you can use the EXPLAIN statement to find out which search strategy the SQL optimizer selects and what costs this search strategy incurs.

Syntax

EXPLAIN <query_statement>

Result
Structure of the EXPLAIN Result Table

Column

Description

Data Type

SCHEMANAME

Schema name/owner

CHAR(64)

TABLENAME

Table Name

CHAR(64)

COLUMN_OR_INDEX

Shows which key column, inverted column or index is used by the system for the strategy

CHAR(64)

STRATEGY

Shows which search strategy or strategies the system uses and whether the system generates a result table.

The system generates a result table when RESULT IS COPIED is contained in the last result line of the STRATEGY column.

More information: SQL Optimizer,

  • List of All Search Strategies

  • STRATEGY Column

CHAR(40)

PAGECOUNT

Cost determination result for the selected search strategy

This column shows which sizes are assumed for the tables or, in the case of certain strategies, for the indexes.

These sizes affect which search strategy is selected by the system.

To update the defined sizes, use the UPDATE STATISTICS statement or the relevant database tool function.

You can query the defined sizes by selecting the system table OPTIMIZERINFORMATION. You can query the current sizes of tables or indexes by selecting the TABLESTORAGEDETAILS and INDEXSTORAGEDETAILS system tables. When you discover substantial differences between the values in OPTIMIZERINFORMATION and TABLESTORAGEDETAILS, then execute the UPDATE STATISTICS statement for these tables.

If the system discovers during a search in a table that the values determined by the last UPDATE STATISTICS statement are extremely low, a row is entered in the SYSUPDSTATWANTED system table that contains the table name. In all other cases, rows are entered in this system table that describe columns in tables. The UPDATE STATISTICS statement should be executed for tables and table columns that are described in the SYSUPDSTATWANTED system table.

The last row contains the estimated SELECT cost value in the PAGECOUNT column. This estimated SELECT cost value forms the basis of the COSTLIMIT and COSTWARNING information in the SQL statements for creating and changing users (such as the CREATE USER and ALTER USER statements).

CHAR(10)

Example

This example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

EXPLAIN Statement

EXPLAIN SELECT *

  FROM hotel.city

    WHERE zip > '99000'

Result of the EXPLAIN Statement
OWNER | TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
HOTEL | CITY |  | RANGE CONDITION FOR KEY | 11
 |  | ZIP | (USED KEY COLUMN) |
 |  |  | RESULT IS NOT COPIED, COSTVALUE IS | 1

The CITY table consists of 11 pages, I/O costs for executing the SQL statement: 1 page.

More Information

You can find additional simple example SQL statements in the SQL Tutorial.

  • EXPLAIN Statement for Joins

    EXPLAIN Statement for Complex SELECT Statements

    EXPLAIN Statement for SELECT Statements with Subqueries

  • Database Studio, Analyzing SQL Statements (EXPLAIN)

  • SQL Reference Manual, EXPLAIN Statement (explain_statement)

  • Database Administration, Troubleshooting, Analyzing Database Performance

  • Database Administration in CCMS, Diagnosis


List of All Search Strategies - SAP Documentation

Background documentation List of All Search Strategies

The following is a list of all search strategies that are avaible to the SQL optimizer. The names match the return codes of the EXPLAIN statement. You can use the EXPLAIN statement to find out which search strategy the SQL optimizer uses for an SQL statement.

SQL Optimizer Search Strategies

CATALOG ACCESS USING USERS TABLE LIST

CATALOG KEY ACCESS

CATALOG SCAN

CATALOG SCAN USING USER EQUAL CONDITION

DIFFERENT STRATEGIES FOR OR-TERMS

EQUAL CONDITION FOR INDEX

EQUAL CONDITION FOR KEY

IN CONDITION FOR INDEX

IN CONDITION FOR KEY

INDEX SCAN

JOIN VIA INDEXED COLUMN

JOIN VIA KEY COLUMN

JOIN VIA KEY RANGE

JOIN VIA MULTIPLE INDEXED COLUMNS

JOIN VIA MULTIPLE KEY COLUMNS

JOIN VIA RANGE OF MULTIPLE INDEXED COLUMNS

JOIN VIA RANGE OF MULTIPLE KEY COLUMNS

NO RESULT SET POSSIBLE

NO STRATEGY NOW (ONLY AT EXECUTION TIME)

RANGE CONDITION FOR KEY

RANGE CONDITION FOR INDEX

SUBQ CONDITION FOR INDEX

SUBQ CONDITION FOR KEY

TABLE SCAN

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Strategies


TABLE SCAN - SAP Documentation

Background documentation TABLE SCAN

TABLE SCAN is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system uses the sequential search in the following cases:

  • No search conditions have been specified.

  • Neither the key columns nor the indexed columns are included in the search condition.

  • The available non-sequential search strategies would be more costly than the sequential search.

How Does the System Access the Data?

The database system sequentially searches through the entire table.

More Information

Sequential Search (Table Scan)

List of All Search Strategies


INDEX SCAN - SAP Documentation

Background documentation INDEX SCAN

INDEX SCAN is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The system can choose this strategy, for example, if it can use the index to sort the result as specified in the query (without incurring additional costs).

How Does the System Access the Data?

The database system sequentially searches through the entire specified index to access the data.

More Information

Sequential Search

List of All Search Strategies


RANGE CONDITION FOR KEY - SAP Documentation

Background documentation RANGE CONDITION FOR KEY

RANGE CONDITION FOR KEY is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system searches the specified range of the table sequentially. To restrict the range, the system sets a start and a stop key.

How Does the System Access the Data?

The database system uses this search strategy if one of the following conditions is met:

  • For the first k columns of the primary key, equality conditions were specified (1 ≤ k < n, n = number of key columns). All other key columns were either not specified at all or were specified with a range condition.

  • The first key column was specified with a range condition.

  • The values of an IN condition are very close together.

More Information

Search Strategies for Key Column Search Conditions

List of All Search Strategies


SUBQ CONDITION FOR KEY - SAP Documentation

Background documentation SUBQ CONDITION FOR KEY

SUBQ CONDITION FOR KEY is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system uses this search strategy if the following conditions are met:

  • The table has only one primary key column.

  • The values for the key column come from a subquery.

or

  • The table has a primary key in several columns.

  • Equality conditions have been defined for all primary key columns that are located before the column with the subquery in the primary key.

  • On one column of the primary key, an IN condition is defined in the form of a subquery.

How Does the System Access the Data?

The database system performs a sequential search on part of the primary key for each results row of the subquery.

More Information

Search Strategies for Key Column Search Conditions

List of All Search Strategies


EQUAL CONDITION FOR KEY - SAP Documentation

Background documentation EQUAL CONDITION FOR KEY

EQUAL CONDITION FOR KEY is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

This search strategy can be used if both of the following conditions are met:

  • The table has only one key column.

  • The search condition contains an equality condition for this key column.

How Does the System Access the Data?

The database system directly accesses the table rows.

More Information

  • Equality Condition

  • Search Strategies for Key Column Search Conditions

  • List of All Search Strategies


IN CONDITION FOR KEY - SAP Documentation

Background documentation IN CONDITION FOR KEY

IN CONDITION FOR KEY is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system chooses this search strategy in the following situation: The first k-1 columns of the primary key were specified with equality conditions and an IN condition was defined for the kth key column (1 ≤ k ≤ n, n = number of key columns).

If the values of the IN condition are close together, or if many values were specified, it may be more practical for the database system to use a range condition instead of an equality condition. In this case, the range condition is displayed in the execution plan.

How Does the System Access the Data?

The database system processes the individual values of the IN condition as an equality condition. It accesses the table rows directly. It creates an intermediate result set.

More Information

  • Equality Condition

  • IN Condition

  • Search Strategies for Key Column Search Conditions

  • List of All Search Strategies


EQUAL CONDITION FOR INDEX - SAP Documentation

Background documentation EQUAL CONDITION FOR INDEX

EQUAL CONDITION FOR INDEX is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this strategy for search conditions that contain an equality condition for all columns of an index.

How Does the System Access the Data?

The database system directly accesses the table rows using the inversion list.

More Information

  • Equality Condition

  • Search Strategies for Indexed Column Search Conditions

  • List of All Search Strategies

  • Glossary, Inversion list


RANGE CONDITION FOR INDEX - SAP Documentation

Background documentation RANGE CONDITION FOR INDEX

RANGE CONDITION FOR INDEX is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system accesses the table rows directly using the inventory lists that lie within the specified range. It therefore searches only part of the index and reads this part sequentially.

How Does the System Access the Data?

The database system can use this search strategy if one of the following conditions is met:

  • For the first k columns of an index, the search condition contains equality conditions (1 ≤ k < n, n = number of index columns).

  • The first index column was specified with a range condition.

  • The values of an IN condition are very close together.

More Information

Search Strategies for Indexed Column Search Conditions

List of All Search Strategies


SUBQ CONDITION FOR INDEX - SAP Documentation

Background documentation SUBQ CONDITION FOR INDEX

SUBQ CONDITION FOR INDEX is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this search strategy if one of the following conditions is met in a subquery:

  • For the first k columns of an index, the search condition contains equality or range conditions (1 ≤ k < n, n = number of indexed columns).

  • The search condition contains one equality condition for all columns of an index.

How Does the System Access the Data?

The database system performs a sequential search on part of the index for each results row of the subquery.

More Information

Search Strategies for Indexed Column Search Conditions

List of All Search Strategies


IN CONDITION FOR INDEX - SAP Documentation

Background documentation IN CONDITION FOR INDEX

IN CONDITION FOR INDEX is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The system can use this strategy if equality conditions were specified for the first k-1 columns of an index, and an IN condition was specified for the kth column of an index (1 ≤ k < n, n = number of index columns). Multiple IN conditions can be specified for one index; the system then processes the second IN condition with one range only.

If the values in the IN condition are close together, or if many values were specified, the database system might use a range condition instead of an equality condition.

How Does the System Access the Data?

The database system processes the individual values of the IN condition as an equality condition. Using the inversion lists, the database system accesses the table rows directly. The database system creates an intermediate result set.

More Information

  • Equality Condition

  • IN Condition

  • Range Condition

  • Search Strategies for Indexed Column Search Conditions

  • List of All Search Strategies

  • Glossary, Inversion list


DIFFERENT STRATEGIES FOR OR-TERMS - SAP Documentation

Background documentation DIFFERENT STRATEGIES FOR OR-TERMS

DIFFERENT STRATEGIES FOR OR-TERMS is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this strategy for search conditions which are linked with OR.

How Does the System Access the Data?

The database system transforms the search conditions which are linked with OR, analyzes them and then chooses search strategies for the individual subconditions that are linked with OR.

More Information

Search Strategies for Search Conditions Linked with OR

List of All Search Strategies


CATALOG SCAN - SAP Documentation

Background documentation CATALOG SCAN

CATALOG SCAN is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The system can use this strategy if no equality condition has been defined for any key of the database object.

How Does the System Access the Data?

The database system sequentially scans the database catalog to access the data.

More Information

Sequential Search

List of All Search Strategies


CATALOG SCAN USING USER EQUAL CONDITION - SAP Documentation

Background documentation CATALOG SCAN USING USER EQUAL CONDITION

CATALOG SCAN USING USER EQUAL CONDITION is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The system can choose this strategy when the schema name was specified exactly.

Example Example

EXPLAIN

SELECT * FROM TABLES

  WHERE schemaname = 'HOTEL'

End of the example.
How Does the System Access the Data?

The system identifies the relevant tables using a key range scan.

More Information

List of All Search Strategies

Sequential Search


SQL Optimizer Statistics - SAP Documentation

Background documentation SQL Optimizer Statistics

The database system automatically stores basic statistical information on the size of tables and indexes in the internal file directory. On request, it also collects a range of additional statistical information, which it stores in the database catalog (this operation is called updating the statistics).

The following types of statistics exist:

  • Table statistics: statistics about the total size of a table

  • Column statistics: statistics about the values in the individual table columns

The SQL optimizer requires the statistics to determine the optimum strategy for accessing the data in the database during complicated SQL statements, such as joins. If the statistics are not up-to-date, the SQL optimizer might use a strategy which is less than optimal. This can result in the system requiring longer than necessary to execute the SQL statement in question, or in unnecessarily large amounts of intermediate results being generated.

More information: How the SQL Optimizer Estimates the Costs of SQL Statements

How Is the Statistical Information Collected?

The system uses samples.

Sample Type and Size for Updating the SQL Optimizer Statistics
Number of Data Records (Sample Type Rows) | Proportion of Data Records as Percentage of all Data Records in the Table (Sample Size Percent) | Description
0 | 0 | The system does not update any statistics for the table.
0 < Number of data records < Number of data records in the table The default value for the sample size is 20,000 data records. | 0 < Percentage of data records < 100 % For large tables (> 1,000,000 data records) in SAP systems, we recommend a sample size of 5 %. | The system uses the sample size specified to estimate the statistics.
Number of all data records in the table | 100 % | The system calculates the statistics. This usually takes much longer than an estimation using a sample.

With the database parameter UpdateStatSampleAlgorithm you can configure which algorithm the system uses. More information: Database Administration, Special Database Parameters

Updating the Statistics

Recommendation Recommendation

Update the statistics once a week.

Also update the statistics in the following cases:

  • When the proportions or values in the database tables have changed significantly

  • After you have upgraded the database (for example, from version 7.6 to version 7.7)

End of the recommendation.

When updating the statistics for a table, the system temporarily sets a shared lock on the entry for this table in the database catalog. As long as this shared lock exists, you cannot change this entry in the database catalog and cannot perform any DDL operations on the table. It is also not possible to set an exclusive lock for a table while the statistics of this table are being updated. During updating, the read costs increase and so does the number of I/O operations.

Recommendation Recommendation

Update the statistics at a time of minimal work load.

End of the recommendation.

You can also switch on automatic update statistics.

Recommendation Recommendation

Do not switch on automatic update statistics in SAP systems. For more information about updating statistics, see SAP Note 927882.

End of the recommendation.

Use one of the following database tools:

Database Studio, Database Manager CLI, or CCMS (in SAP systems only)

More Information

  • Database Studio, Updating the SQL Optimizer Statistics

  • Database Manager CLI, sql_updatestat, auto_update_statistics

  • Database Administration in CCMS, Scheduling the Update of the SQL Optimizer Statistics


Postponement of the Search to the FETCH Time - SAP Documentation

Background documentation Postponement of the Search to the FETCH Time

The SQL optimizer always tries to create as few results tables as possible. If it does not need to create a results table for an SQL statement, it can postpone the search to the FETCH time. In this way, no memory is used for the results and the database system can access the first records in the result quickly.

The database system always needs to create a results table in the following cases:

  • SELECT for multiple tables (Join)

  • SELECT ... FOR REUSE

The database system usually needs to create a results table in the following cases:

  • SELECT DISTINCT ...

  • SELECT ... ORDER BY ...

If each of the following conditions is met, the database system does not need to create a results table:

  • Neither a DISTINCT (apart from a few exceptions) nor the syntax element FOR REUSE was specified.

  • The columns by which the result is to be sorted constitute an index in the specified order and specified sort order (ascending or descending).

The EXPLAIN statement allows you to find out whether the database system creates a results table (entry in the STRATEGY column):

  • RESULT IS COPIED (results table is created)

  • RESULT IS NOT COPIED (no results table is created)

Example

The following example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

SQL Statement for Which the System Creates a Result Table

EXPLAIN SELECT zip, name

  FROM hotel.city

    WHERE ROWNO < 5

    ORDER BY name, zip DESC

  • Qualification: ROWNO < 5 ORDER BY name, zip DESC

  • Primary key of CITY table: zip

  • Indexes via qualified columns: None

  • Search strategy: TABLE SCAN

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CITY |  | TABLE SCAN | 11
 |  | RESULT IS COPIED COSTVALUE IS | 3

The database system creates a results table (RESULT IS COPIED).

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Strategies for Joins

  • List of All Search Strategies

  • Search Strategies

  • SQL Reference Manual, FETCH Statement (fetch_statement), DISTINCT Specification (distinct_spec), SELECT Statement (select_statement)

You can find additional simple example SQL statements in the SQL Tutorial.


CATALOG KEY ACCESS - SAP Documentation

Background documentation CATALOG KEY ACCESS

CATALOG KEY ACCESS is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

The database system can use this strategy for search conditions which contain equality conditions on database object keys.

How Does the System Access the Data?

The database system uses the key columns in the database catalog to access the data.

More Information

Equality Condition

List of All Search Strategies


NO STRATEGY NOW (ONLY AT EXECUTION TIME) - SAP Documentation

Background documentation NO STRATEGY NOW (ONLY AT EXECUTION TIME)

NO STRATEGY NOW (ONLY AT EXECUTION TIME) is a search strategy of the SQL optimizer.

When Can the System Use This Strategy?

If the column values of a subquery are not known until the subquery is executed, then the SQL optimizer does not choose the most effective search strategy for accessing the table until these values are available.

How Does the System Access the Data?

The system chooses the actual strategy at runtime.

More Information

List of All Search Strategies

EXPLAIN Statement for SELECT Statements with Subqueries


Range Condition - SAP Documentation

Background documentation Range Condition

A range condition is a search condition with a comparison predicate or a BETWEEN predicate.

Prerequisites

The SQL optimizer can only evaluate range conditions that satisfy the following restrictions:

  • Only the comparison operators < | ≤ | ≥ | > or the BETWEEN operator are used.

  • The range condition has one of the following forms:

    Syntax Syntax

    1. <column_spec> <|≤|≥|> <extended_value_spec>
<column_spec> BETWEEN <extended_value_spec> AND <extended_value_spec>
    End of the code.

For the search strategy, it is not important whether the range is limited with a BETWEEN operator or with a combination of comparison operators ≤ | ≥.

The database system converts conditions of the following forms, if possible, into an expression without NOT with a correspondingly negated operator:

Syntax Syntax

  1. ... NOT (<column_spec> <|≤|≥|> <extended_value_spec>)
... NOT (<column_spec> NOT BETWEEN <extended_value_spec> AND <extended_value_spec>)
End of the code.

Note Note

The SQL optimizer can only transfor queries if the QueryRewrite function is enabled (special database parameter EnableQueryRewrite).

More information: Database Administration, Special Database Parameters

End of the note.

Example

Note that depending on the amount of data, the system might use different strategies.

Range Condition

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name BETWEEN 'B' AND 'P' AND firstname = 'Greg'

  • Qualification: name BETWEEN 'B' AND 'P' AND firstname = 'Greg'

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name,firstname)

  • Search strategy used: RANGE CONDITION FOR INDEX

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | RANGE CONDITION FOR INDEX | 40
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 40

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Conditions

  • Search Strategies

  • SQL Reference Manual, Comparison Predicate (comparison_predicate), BETWEEN Predicate (between_predicate)

You can find additional simple example SQL statements in the SQL Tutorial.


IN Condition - SAP Documentation

Background documentation IN Condition

An IN condition is a search condition with an IN predicate.

Prerequisites

The SQL optimizer can only evaluate an IN condition if it meets the following conditions:

  • Only the IN operator is used as operator.

  • It has one of the following forms:

    Syntax Syntax

    1. <column_spec> IN (<extended_value_spec>, ...)
<column_spec> IN <subquery>
    End of the code.

The database system converts conditions of the following form, if possible, into an expression without NOT with a correspondingly negated operator:

Syntax Syntax

  1. ... NOT (<column_spec> NOT IN (<extended_value_spec>, ...))
... NOT (<column_spec> NOT IN <subquery>)
End of the code.

Note Note

The SQL optimizer can only transfor queries if the QueryRewrite function is enabled (special database parameter EnableQueryRewrite).

More information: Database Administration, Special Database Parameters

End of the note.

Example

The following example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

IN Condition

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name IN ('Smith','Miller')

  • Qualification: name IN ('Smith', 'Miller')

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name,firstname)

  • Search strategy: RANGE CONDITION FOR INDEX

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | RANGE CONDITION FOR INDEX | 34
 | NAME | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 21

To find all data records with the name Smith and Miller, the SQL optimizer can use the strategy FULL_NAME_INDEX (name,firstname).

Note that depending on the data, the SQL optimizer might also choose the IN CONDITION FOR strategy.

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Conditions

  • Search Strategies

  • SQL Reference Manual, IN Predicate (in_predicate)

You can find additional simple example SQL statements in the SQL Tutorial.


LIKE Condition - SAP Documentation

Background documentation LIKE Condition

A LIKE condition is a search condition with a LIKE predicate.

Prerequisites

The SQL optimizer can only evaluate a LIKE condition if it meets the following conditions:

  • Only the LIKE operator was used as operator.

  • The LIKE condition has the following form:

    Syntax Syntax

    1. <column_spec> LIKE <extended_value_spec>
    End of the code.

    <extended_value_spec> must not start with the match_string or match_set SQL syntax elements of a LIKE predicate.

    If possible, the database system converts conditions of the form

    Syntax Syntax

    1. ... NOT (<column_spec> NOT LIKE <extended_value_spec>)
    End of the code.

    into an expression of the form

    Syntax Syntax

    1. ... (<column_spec> LIKE <extended_value_spec>
    End of the code.

    Note Note

    The SQL optimizer can only transfor queries if the QueryRewrite function is enabled (special database parameter EnableQueryRewrite).

    More information: Database Administration, Special Database Parameters

    End of the note.

Example

The following example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

LIKE Condition

EXPLAIN SELECT *

  FROM hotel.customer

    WHERE name LIKE 'Wa%'

  • Qualification: name LIKE 'Wa%'

  • Primary key of CUSTOMER table: cno

  • Indexes via qualified columns: FULL_NAME_INDEX (name,firstname)

  • Search strategy: RANGE CONDITION FOR INDEX

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CUSTOMER | FULL_NAME_INDEX | RANGE CONDITION FOR INDEX | 34
 | NAME | (USED INDEX COLUMN) |
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 4

The database system can use the index FULL_NAME_INDEX (name, firstname). It sets the start key in the first record that meets the LIKE condition with the first two character values (Wade, Francisco), and the stop key in the first record that does not meet the condition any more (Weaver, Alfredo).

More Information

  • Analyzing Search Strategies Using the EXPLAIN Statement

  • Search Conditions

  • Search Strategies

  • SQL Reference Manual, LIKE Predicate (like_predicate)

You can find additional simple example SQL statements in the SQL Tutorial.


Sequential Search (Table Scan) - SAP Documentation

Background documentation Sequential Search (Table Scan)

The simplest search strategy is the sequential search (table scan), in which the database system searches through the entire table, row-by-row. However, for large quantities of data, the sequential search is often the most complex and expensive search strategy.

The database system uses the sequential search in the following cases:

  • No search conditions have been specified.

  • Neither the key columns nor the indexed columns are included in the search condition.

  • The available non-sequential search strategies would be more costly than the sequential search.

Example

The following examples use the demo database DEMODB with the complete demo data in the schema HOTEL, (see Concepts of the Database System, Objects in the Schema HOTEL).

No Search Condition Specified

EXPLAIN SELECT *

  FROM hotel.city

  • Qualification: None

  • Primary key of CITY table: zip

  • Indexes via qualified columns: No search strategy used: TABLE SCAN

Result for the EXPLAIN statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CITY |  | TABLE SCAN | 11
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 11
Primary Key Column Not Contained in Search Condition

EXPLAIN SELECT *

  FROM hotel.city

    WHERE name = 'Oxford'

  • Qualification: WHERE name = 'Oxford'

  • Primary key of CITY table: zip

  • Indexes via qualified columns: None

  • Search strategy: TABLE SCAN

Result for the EXPLAIN statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CITY |  | TABLE SCAN | 11
 |  | RESULT IS NOT COPIED, COSTVALUE IS | 11

More Information

Analyzing Search Strategies Using the EXPLAIN Statement

Search Strategies

You can find additional simple example SQL statements in the SQL Tutorial.


JoinSearchLevel Database Parameter - SAP Documentation

Background documentation JoinSearchLevel Database Parameter

The special database parameter JoinSearchLevel is used by the SQL optimizer for processing joins.

This database parameter specifies the algorithm for the join search sequence, which itself determines how long the search takes and how many resources it uses. You can either specify which algorithm the database system should use, or have the system calculate the algorithm from the database parameters JoinSearchTableThreshold4, JoinSearchTableThreshold9 and the number of tables in the join.

Specification of the Algorithm Using JoinSearchLevel
Value | Algorithm Name | Description
9 | Permutated | The database system calculates all possible join sequences.
4 | Transformer | The database system calculates multiple join sequences depending on the query structure
1 | Greedy | The database system uses the simplest algorithm for the join sequence search
0 | - | The database system determines the algorithm for the join sequence search (see below).
How Does the Database System Determine the Algorithm for the Join Search Sequence (JoinSearchLevel = 0)?
Number of Tables in the Join | Chosen Algorithm
n ≤ JoinSearchTableTreshold9 | 9
JoinSearchTableTreshold9 <n ≤ JoinSearchTableTreshold4 | 4
JoinSearchTableTreshold4 < n | 1

Example

JoinSearchLevel = 0

JoinSearchTableThreshold4 = 16

JoinSearchTableThreshold9 = 4

5 tables are used in the join.

The database system uses the join sequence search level 4 (Transformer algorithm) becauseJoinSearchTableThreshold9 < 5 ≤ JoinSearchTableThreshold4.

More Information

Search Strategies for Joins

Database Administration, Special Database Parameters


SQL Optimizer - SAP Documentation

Component documentation SQL Optimizer

The SQL optimizer is an internal component of the MaxDB database. The system uses the SQL optimizer to determine the best search strategy for accessing data records in the database.

The SQL optimizer analyzes the SQL statements that are sent to the database by users or applications. If certain conditions have been specified in the SQL statement, the SQL optimizer can optimize access to the data records (cost-based optimization).

  • How SQL Statements Are Processed

  • How the SQL Analyzer Estimates the Costs of SQL Statements

  • SQL Optimizer Statistics

  • Search Conditions

  • Search Strategies

  • Analyzing Search Strategies Using the EXPLAIN Statement

Integration

In SAP systems, you can display information about the SQL optimizer using the DBA planning calendar and schedule actions for updating the SQL optimizer statistics. For more information, see Database Administration in CCMS, SQL Optimizer in CCMS.

More Information

  • SAP Note 819324 (FAQ: MaxDB SQL Optimization)

  • SAP Note 927882 (FAQ: MaxDB Update Statistics)

  • Database Administration, Analyzing the Database Performance


Search Conditions - SAP Documentation

Background documentation Search Conditions

The SQL optimizer can only optimize data access for SQL statements that contain a search condition. Search conditions can occur in the following situations:

  • in a WHERE clause

  • in a join which is defined using ANSI syntax

Example Example

  1. SELECT name
  FROM customer
    INNER JOIN ORDER ON customer.ID = order.ID and order.ID = 4711
  WHERE customer.name = 'CUSTOMER'
End of the code.

You can specify search conditions for the following types of SQL statements:

  • SELECT

  • UPDATE

    Note that restrictions apply, see Restrictions for UPDATE Statements.

  • DELETE

  • INSERT

The form of the search condition has a significant impact on the costs incurred by executing the SQL statement. The SQL optimizer only takes into account the following search conditions:

  • Equality Condition

  • Range Condition

  • IN Condition

  • LIKE Condition

If the SQL optimizer cannot transform the search conditions in an SQL statement into one of the forms listed above, it cannot determine a search strategy for them and uses the sequential search instead. If search conditions are linked using several identical boolean operators, the sequence of these conditions does not affect how the SQL optimizer determines the search strategy.

More Information

SQL Reference Manual, Table Expression (table_expression)


How SQL Statements Are Processed - SAP Documentation

Procedure documentation How SQL Statements Are Processed

SQL statements merely specify the results that are desired. They do not contain any information as to how the database system should search for the data. The database system can often choose from multiple options for finding the data specified in the SQL statement.

The SQL optimizer is responsible for determining the best search strategy for accessing the data.

Procedure

  1. A database user or a database application sends an SQL statement with a search condition to the database.

    Example Example

    SELECT * FROM hotel.customer

      WHERE name BETWEEN 'B' AND 'P' AND firstname = 'Greg'

    End of the example.

  2. The database system transforms the SQL statement to the most suitable form and starts the SQL optimizer.

  3. The SQL optimizer determines all the search strategies with which the database can access the data specified in the SQL statement.

  4. The SQL optimizer estimates the costs for each search strategy using statistical information on the database tables.

  5. The SQL optimizer chooses the search strategy that incurs the lowest costs when executing the SQL statement.

  6. The database system executes the SQL statement with this search strategy.

More Information

  • Search Conditions

  • Search Strategies

  • How the SQL Optimizer Estimates the Costs of SQL Statements

  • SQL Optimizer Statistics


Search Strategies - SAP Documentation

Background documentation Search Strategies

Usually, the database system can use several different search strategies to access data. Among other things, these search strategies differ in the costs that they incur when they are executed.

The simplest search strategy is the sequential search (table scan), in which the database system searches through the entire table, row-by-row. However, for large quantities of data, the sequential search is often the most complex and expensive search strategy. For this reason, the SQL optimizer evaluates other search strategies that scan smaller areas of the table.

The search strategies that are available depend on the search condition, the structure of the SQL statement and the design of the database (primary key etc.).

Search Strategies (Selection)

  • Sequential Search (Table Scan)

  • Search Strategies for Key Column Search Conditions

  • Search Strategies for Indexed Column Search Conditions

  • Search Strategies for Search Conditions Linked with OR

  • Search Strategies for Joins

  • Postponement of the Search to the FETCH Time

More Information

Analyzing Search Strategies Using the EXPLAIN Statement

List of All Search Strategies


Search Strategies for Joins - SAP Documentation

Background documentation Search Strategies for Joins

A join is an SQL statement that links several tables and returns a join table as its result.

To perform a join as quickly as possible, the SQL optimizer searches for the best sequence when linking the tables. The aim is to access the rows of the tables that are to be linked as directly as possible, and to keep the size of the intermediate result tables to a minimum. The database system therefore starts the join with the smallest tables for which the most restrictive search conditions have been specified. This initially keeps the temporary results tables small.

Note Note

The order in which the tables were specified in the FROM clause of the SELECT statement has no influence on the order of their processing.

End of the note.
Search Strategies for Joins

The database system can choose one of the following search strategies to access rows in the new table, starting from the join column values of the old temporary results table.

  • JOIN VIA INDEXED COLUMN

  • JOIN VIA KEY COLUMN

  • JOIN VIA KEY RANGE

  • JOIN VIA MULTIPLE INDEXED COLUMNS

  • JOIN VIA MULTIPLE KEY COLUMNS

  • JOIN VIA RANGE OF MULTIPLE INDEXED COLUMNS

  • JOIN VIA RANGE OF MULTIPLE KEY COLUMNS

Note that only if the two columns that you want to link in a join step have the same column length, the SQL optimizer can use all of the search strategies mentioned above. Define the same value range (domain) for all columns you want to join.

Example

The following example uses the demo database DEMODB with the complete demo data in the schema HOTEL, see Concepts of the Database System, Objects in the Schema HOTEL.

JOIN Statement

Variant 1

EXPLAIN SELECT customer.cno, customer.title, customer.name, customer.zip, city.name, city.state, customer.address

  FROM hotel.customer, hotel.city

    WHERE customer.zip = city.zip

Variant 2

EXPLAIN SELECT customer.cno, customer.title, customer.name, customer.zip, city.name, city.state, customer.address

  FROM hotel.customer

    INNER JOIN hotel.city ON customer.zip = city.zip

Description:

  • Join tables: CUSTOMER and CITY

  • Qualification: customer.zip = city.zip

  • Search strategy for CITY: TABLE SCAN

  • Search strategy for CUSTOMER: JOIN VIA KEY RANGE

Result of the EXPLAIN Statement
TABLENAME | COLUMN_OR_INDEX | STRATEGY | PAGECOUNT
CITY |  | TABLE SCAN | 1
CUSTOMER |  | JOIN VIA KEY RANGE | 1
 |  | TABLE TEMPORARY SORTED |
 | ZIP | (USED SORT COLUMN) |
 |  | RESULT IS COPIED COSTVALUE IS | 13

The database system first accesses the CITY table using a TABLE SCAN. For joining this table with the table CUSTOMER, the system chooses the JOIN VIA KEY RANGE strategy using the ZIP column. For the join, the database system always creates a result set (RESULT IS COPIED).

More Information

  • JoinSearchLevel Database Parameter

  • EXPLAIN Statement for Joins

  • Search Strategies

  • SQL Reference Manual, Domain Name (domain_name), JOIN Predicate (join_predicate)

You can find additional simple example SQL statements in the SQL Tutorial, Joins: Information From Several Tables.


alter_index_statement - SAP Documentation

Syntax documentation alter_index_statement

Syntax Syntax

  1. <alter_index_statement> ::=
  ALTER INDEX <index_name> [ON <table_name>] ENABLE
| ALTER INDEX <index_name> [ON <table_name>] DISABLE
| ALTER INDEX <index_name> [ON <table_name>] INIT USAGE
End of the code.


alter_password_statement - SAP Documentation

Syntax documentation alter_password_statement

Syntax Syntax

  1. <alter_password_statement> ::=
  ALTER PASSWORD <old_password> TO <new_password>
| ALTER PASSWORD <user_name> <new_password>
End of the code.


alter_usergroup_statement - SAP Documentation

Syntax documentation alter_usergroup_statement

Syntax Syntax

  1. <alter_usergroup_statement> ::=
  ALTER USERGROUP <usergroup_name> [<usergroup_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>]
   | DEFAULT ROLE NONE
   | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]
End of the code.


Glossary - SAP Documentation

Component documentation Glossary

This glossary explains the most important terms you need to know when working with the SAP MaxDB database system. It provides links to other, more detailed documentation.

Note Note

In general, the documentation for SAP MaxDB databases also applies to SAP liveCache databases. Differences are indicated in the documentation where necessary.

End of the note.


all_function - SAP Documentation

Syntax documentation all_function

Syntax Syntax

  1. <all_function> ::=
  <set_function_name>([ALL] <expression>)
End of the code.


alter_definition - SAP Documentation

Syntax documentation alter_definition

Syntax Syntax

  1. <alter_definition> ::=
  ALTER CONSTRAINT <constraint_name> CHECK <search_condition>
| ALTER <key_definition>
End of the code.


add_definition - SAP Documentation

Syntax documentation add_definition

Syntax Syntax

  1. <add_definition> ::=
  ADD <column_definition>,...
| ADD (<column_definition>,...)
| ADD <key_definition>
| ADD <constraint_definition>
| ADD <referential_constraint_definition>
End of the code.


CEIL(a) - SAP Documentation

Function documentation CEIL(a)

CEIL(a) is an arithmetic function that calculates the smallest integer value that is greater than or equal to the expression a (a number).

The result is a fixed point number with 0 decimal places.

If it is not possible to represent the result of CEIL(a) as a fixed point number, then an error message is generated.

CEIL(a)
a | Result of the CEIL(a) Function
a is a NULL value | NULL value
a is a special NULL value | Special NULL Value


ABS(a) - SAP Documentation

Function documentation ABS(a)

ABS(a) is an arithmetic function that determines the unsigned value (absolute amount) for the expression a (a number).

ABS(a)
a | Result of the ABS(a) Function
a is a NULL value | NULL value
a is a special NULL value | Special NULL Value


ALPHA(x,n) - SAP Documentation

Function documentation ALPHA(x,n)

ALPHA(x,n) is a string function that enables a character x (string specification) in ASCII to be converted to a different one or two-character representation defined in the DEFAULTMAP (mapchar_set_name). Only expressions that produce an alphanumeric value are permitted as string specifications x.

ALPHA(x,n) is used to define the sort sequence.

The function ALPHA(x,n) uses the MAPCHAR(x,n,i) function internally (where i is the DEFAULTMAP) and also performs a conversion to uppercase letters via UPPER(y) (where y is MAPCHAR(x,n,i)).

The code on which the character x is based and the code on which the implemented DEFAULTMAP (defined for the ASCII code) is based must match. In Unicode-based database systems string specifications are Unicode. So if necessary convert the string specification to an ASCII expression (using for example the function ASCII(x)).

ALPHA(x,n)
x, n | Result of the ALPHA(x,n) Function
x is a character n is an unsigned integer | UPPER(MAPCHAR(x,n,DEFAULTMAP))

Specifying n (an entire number without a sign) is optional. n specifies the maximum length of the result.

Example Example

The ALPHA function allows a useful sorting process, for example, when "ü" should be sorted as "UE". The mapchar set with the name DEFAULTMAP is used.

  1. SELECT ...,ALPHA(<column_name>) sort, ... FROM ... ORDER BY sort
End of the code.

More Information

String Specification

ASCII(x)


CHR(a,n) - SAP Documentation

Function documentation CHR(a,n)

CHR(a,n) is a conversion function which converts the expression a into a character string.

Value a: The expression a must be a numeric value, a character string or a Boolean value (BOOLEAN).

Value n: n is an unsigned integer.

CHR(a,n)
a, n | Result of the CHR(a,n) Function
a is a numeric value | Character string that corresponds to the CHAR representation of the numeric value a. The code attribute of the character string corresponds to the code type of the computer.
a is a character string | Unchanged character string
a is a Boolean value | T, if a=TRUE F, if a=FALSE
a is not a numeric value, a character string, or a Boolean value | Error message
CHR(a,n), n>=1 | Output with the length attribute n
CHR(a) | The length attribute n is calculated depending on the data type and the length of a
CHR(a) and a is of data type FLOAT(p) | If p=1, then n=6 If p>1, then n=p+6
CHR(a) and a is of data type FIXED(p,s) | If p=s, then n=p+s If s=0, then n=p+1
a is a NULL value | NULL value
a is a special NULL value | Error message

Example

SQL Tutorial, Converting Values


CHAR(a,t) - SAP Documentation

Function documentation CHAR(a,t)

The CHAR(a,t) function (conversion function) converts a date, time or time stamp value (expression a) in a character string (data type CHAR) using the format for date values, time values, or timestamp values specified in t.

CHAR(a,t)
a, t | Result of the CHAR(a,t) Function
a | The current date and time format is used for the value a.
a is a NULL value | NULL value
t is the format for date, time or time stamp values | This format is used for the value a.

More Information

Date and Time Format (datetimeformat)


ADDTIME/SUBTIME(t,a) - SAP Documentation

Function documentation ADDTIME/SUBTIME(t,a)

ADDTIME(t,a) and SUBTIME(t,a) are time functions that calculate a time/time stamp value in the past or future.

Value t: When used in a function, the expression t (time_or_timestamp_expression) must supply a time, a time stamp value, or an alphanumeric value that matches the current time or time stamp format.

Value a: When used in a function, the expression a (time_expression) must supply a time value or an alphanumeric value that matches the current time format.

ADDTIME(t,s)/SUBTIME(t,a)
t, a | Result of the ADDTIME(t,a)/SUBTIME(t,a) Function
Addition of a to t or subtraction of a from t | Time or time stamp value
SUBTIME(t,a) and t and a are time values | a must be less than t, otherwise an error is reported
t or a is a NULL value | NULL value

More Information

ADDDATE/SUBDATE(t,a)

ADDMONTHS(t,a)


DATE(a) - SAP Documentation

Function documentation DATE(a)

DATE(a) is a function (extraction) that calculates a date value for the expression a.

DATE(a)
a | Result of DATE(a) Function
a is a date value or an alphanumeric value that matches the current date format | This date value
a is an alphanumeric value that does not match the current date format | Error message
ais a timestamp value or an alphanumeric value that matches the current timestamp format | The date value that is part of the timestamp
a is a fixed point or floating point number | Date value that is equal to the xth day after 31.12.0000 (x=TRUNC(a))
a is a NULL value | NULL value
a is a special NULL value | Error message

Example

SQL Tutorial, Functions


ASCII(x) - SAP Documentation

Function documentation ASCII(x)

ASCII(x) is a string function that converts a character string x (string specification) with the code attribute ASCII, UNICODE (if these are ASCII data) or BYTE into ASCII data. Only expressions that produce an alphanumeric value are permitted as string specifications.

ASCII(x)
x | Result of the Function ASCII(x)
x is of data type CHAR or VARCHAR, the code attribute for x is ASCII, UNICODE or BYTE | ASCII(x) gives a character string in ASCII display
x is a NULL value | NULL value

It can be useful to use ASCII(x) functions if data is to be sorted or compared in ASCII code.

Example Example

Output of a sorted result table in ASCII order:

SELECT ASCII(name) FROM...WHERE...ORDER BY 1

End of the example.


ADDDATE/SUBDATE(t,a) - SAP Documentation

Function documentation ADDDATE/SUBDATE(t,a)

ADDDATE(t,a) and SUBDATE(t,a) are date functions that determine a date in the future or a date in the past.

Value t: When used in a function, the expression t (date_or_timestamp_expression) must supply a date, a time stamp, or an alphanumeric value that matches the current date or time stamp format.

Value a: The expression a (expression) supplies a numeric value that represents a number of days. Any decimal places in a are truncated if necessary.

ADDDATE(t,a)/SUBDATE(t,a)
t, a | Result of the ADDDATE(t,a)/SUBDATE(t,a) Function
Addition of a to t or subtraction of a from t | Date value or time stamp value
t or a is a NULL value | NULL value
a is a special NULL value | Error message

Example

SQL Tutorial, Date and Time Calculations

More Information

ADD_MONTHS(t,a)

ADDTIME/SUBTIME(t,a)


DATEDIFF(t,s) - SAP Documentation

Function documentation DATEDIFF(t,s)

DATEDIFF(t,s) is a date function that calculates the number of days between a start and end date.

t and s values: When used in a function, the expressions t and s (date_or_timestamp_expression) must supply a date, a time stamp, or an alphanumeric value that matches the current date or time stamp format.

DATEDIFF(t,s)
t, s | Result of DATEDIFF(t,s) Function
Positive difference between t and s | Numeric value (number of days)
t or s are time stamp values | Only the dates in the time stamp value are used to calculate DATEDIFF(t,s).
t or s is a NULL value | NULL value

Example Example

SELECT arrival, departure, DATEDIFF(departure,arrival) difference, rno

  FROM reservation

    WHERE rno = 130

ARRIVAL | DEPARTURE | DIFFERENCE | RNO
2005-02-01 | 2005-02-03 | 2 | 130
End of the example.


DBM Operators - SAP Documentation

Background documentation DBM Operators

DBM operators manage databases using the tools Database Studio or Database Manager CLI. When a database is created, an initial DBM operator (first DBM operator) is created who has the required DBM operator properties and all server authorizations. There can be several DBM operators per database.

The default value for the name of the first DBM operator is DBM, in SAP systems CONTROL.

The database system administrator also has all DBM operator authorizations.

Note that DBM operators are not database users. They can neither change data in the database nor log on to query tools or the Loader.

Properties
DBM Operator Properties
Property | Description
Disabled | Specifies whether the user account of the DBM operator is locked
Enable Second Password | You can also define a second password. This way you can temporarily allow other people to work with the DBM operator account (for example, for support purposes) without the DBM operator having to reveal or change the original password.
DBM Server Permissions
Permission | Required for Logon to a Database with Database Studio | Name in Database Manager CLI
Accessing an SQL session | Yes | AccessSQL
Access to Utility sessions | - | AccessUtility
Executing backups | - | Backup
Accessing database files (reading only) | Yes | DBFileRead
Displaying status information | Yes | DBInfoRead
Starting the database | - | DBStart
Stopping the database | - | DBStop
Managing the event dispatcher | Yes | EvtDispMgm
Using the Loader program | - | ExecLoad
Installation management | - | InstallMgm
Loading the system tables | - | LoadSysTab
Accessing database parameters (reading and writing; only those commands for changing parameters may be executed whose changes are checked against the default parameter file cserv.pcf) | - | ParamCheckWrite
Accessing database parameters (reading and writing; all commands can be executed, even those for directly changing the parameter file without the changes being checked by the system) | - | ParamFull
Accessing database parameters (reading only) | Yes | ParamRead
Restoring databases | - | Recovery
Managing the scheduler | - | SchedulerMgm
Scheduling DBM commands | - | Scheduling
Managing the shared memory | - | SharedMemoryAdmin
Executing operating system commands | - | SystemCmd
Managing DBM operators | - | UserMgm
Managing DBM Operators

If DBM operators have the required DBM server permissions, they can create other DBM operators, change DBM operator properties and DBM server permissions of other DBM operators, or delete other DBM operators.

If you change the name or properties of another DBM operator or delete it while this operator is logged on to Database Manager using a different DBM server process, the change or deletion does not become effective within this DBM server session. Only when this operator logs on again to Database Manager, the new name or property definition becomes effective. If the operator was deleted, it cannot log on to Database Manager any more.

You have the following options for displaying and managing DBM operators:

  • Database Studio, DBM Operators: Creating, Editing and Deleting

  • Database Administration in CCMS, User Data

More Information

Conventions for User Names and Passwords


Transactions - SAP Documentation

Background documentation Transactions

A database transaction is a sequence of SQL statements that the database system treats as a unit. A transaction brings the database from one consistent state to another. If a transaction is interrupted, then the database system returns the database to the state it was in before the transaction began (ROLLBACK).

Caution Caution

This section deals with database transactions. In SAP systems, the term transaction has another meaning.

End of the caution.

This graphic is explained in the accompanying text.

Transition of the Database from one Consistent State to Another Via Intermediate States

When you log on to a database, the database system opens the first transaction.

A transaction is always completed by a COMMIT or ROLLBACK:

  • When a transaction is successfully concluded with a COMMIT, all of the data changes are retained.

  • If a transaction is ended with a ROLLBACK or terminated in any other way, the database system reverses all the data changes made during the transaction.

Both COMMIT and ROLLBACK open a new transaction implicitly.

The transaction manager of the database system ensures, among other things, that parallel transactions from multiple database sessions are processed correctly, and deliver the same results as they would if processed sequentially. Since competing transactions can access the same database objects, the database system uses locks to isolate individual transactions. More information: Locks

You can explicitly open, cancel, and exit transactions.

More information:

  • SQL Reference Manual, Transactions

  • Database Administration in CCMS, Transactions

All transactions that change data are logged by the database system in log entries.

More information: How Databases Log Data Changes

Transactions for OMS Data (Only for SAP liveCache Technology)

When executing transactions for OMS data, the database system makes use of a consistent view. For each transaction, the database system copies the objects to the OMS heap when it reads them. When the transaction is closed with a COMMIT, the database system copies changes to the objects from the OMS heap to the data cache and then removes all objects of the transaction from the OMS heap.

More Information

SQL


Volumes (Permanent Storage) - SAP Documentation

Background documentation Volumes (Permanent Storage)

The database system permanently stores the data and log entries of a database in the volumes.

Volumes: Types
Type | Main Content
Data Volume | Data Database Catalog Undo Log Entries
Log Volume | Redo Log Entries

The data volumes of a database form the data area and the log volumes form the log area.

This graphic is explained in the accompanying text.

Volumes of a Database

When you create a new database, you need to configure at least one data volume and one log volume.

Example (Template Desktop PC / Laptop for an SAP MaxDB Database)
Volume | Number | Size | Path and File Name
Data Volume | 1 | 256 MB | C:\ProgramData\sdb\globaldata\DEMODB\volumes\data\DISKD0001
Log Volume | 1 | 50 MB | C:\ProgramData\sdb\globaldata\DEMODB\volumes\log\DISKL0001

You cannot change the size of an existing volume. If necessary, you can add more data and log volumes while the database is running. Data volumes can also be deleted.

More information:

  • Database Studio,

    • Adding Data Volumes

    • Deleting Data Volumes

    • Adding Log Volumes

  • Database Manager CLI,

    • db_addvolume

    • db_deletevolume

For recommendations on the configuration of the volumes, see Planning Databases.

Volumes: Properties

Property

Description

Size

Minimum size: 1000 pages or 8000 KB

Device/File

Device/path and file name

Type

Type of physical memory

  • FILE (F)

    A volume can be a part of a physical hard disk, a complete physical hard disk, or a storage system consisting of several storage units.

    Can be used on all operating systems

  • LINK (L)

    Can only be used on Unix and Linux

  • RAW (R)

    Raw device

    Can only be used on Unix and Linux

Data Volume: Example
Property | Sample Data
Name | DISKD0001
Size | 256 MB
Device/File | C:\ProgramData\sdb\globaldata\DEMODB\volumes\data\DISKD0001
Type | FILE
Log Volume: Example
Property | Sample Data
Name | DISKL0001
Size | 50 MB
Device/File | C:\ProgramData\sdb\globaldata\DEMODB\volumes\log\DISKL0001
Type | FILE

More Information

Database Administration

  • Creating Databases

  • Backing Up Databases


Example: Consistent View - SAP Documentation

Background documentation Example: Consistent View

SAP liveCache databases use undo log entries to enable consistent views of the data. The following example shows how two transactions simultaneously can have consistent views of the same data record.

Note Note

Consistent views are only available for SAP liveCache databases. In SAP MaxDB databases, you configure transaction consistency using the isolation level.

More information: Isolation Level

End of the note.

  1. Transaction T1 accesses data record 3600 for the first time in table CUSTOMER and reads the value Smiht as the name. Transaction T1 does not lock the data record, however.

  2. Transaction T2 corrects the name Smiht to Smith in data record 3600. Transaction T2 is completed with a COMMIT.

  3. Transaction T1 accesses data record 3600 again and first checks in the history file whether a different transaction has changed data record 3600 since it was first read.

    Because the data record was changed in the meantime by transaction T2, transaction T1 uses the undo log entries for transaction T2 to obtain the same result for the second read as for the first read. Without the undo-log entries, transaction T1 would receive a different result each time it read data record 3600.

  4. The garbage collectors do not delete the undo log entries from transaction T2 until transaction T1 is ended with a COMMIT.

This graphic is explained in the accompanying text.

Example: Consistent View

More Information

How Databases Log Data Changes


Example: Start Script for a Database (Linux) - SAP Documentation

Background documentation Example: Start Script for a Database (Linux)

By using the start script described below, the database and the X server (database communication server) are started automatically when the database computer is started and are stopped automatically when it is shut down.

Note that depending on your operating system, you may have to modify the start script.

Prerequisites

  • You have created the database DEMODB and the DBM operator OLEG with the password MONDAY.

  • You are in a root shell.

Procedure

  1. Save the maxdb start script in the /etc/init.d/ directory.

  2. Change to the /etc/rc3.d/directory.

  3. Create the following symbolic links:

    ln -s ../init.d/maxdb K05maxdb

    ln -s ../init.d/maxdb S18maxdb

maxdb Start Script

#! /bin/sh

# Copyright (c) 2001-2008 SAP AG, Germany.

#

# Author: <maxdb@sap.com>

#

### BEGIN INIT INFO

# Provides: MaxDB

# Required-Start: $remote_fs $syslog

# Required-Stop: $remote_fs $syslog

# Default-Start: 3 5

# Default-Stop: 0 1 2 6

# Description: Start MaxDB communication server.

### END INIT INFO

if [ -f /etc/rc.config ]; then

. /etc/rc.config

fi

# where to find x_server executable (global listener)

IND_PROG_DBROOT=""

if [ -f /etc/opt/sdb ]; then

IND_PROG_DBROOT=`grep '^IndepPrograms=' /etc/opt/sdb | sed 's:IndepPrograms=::g'`

else

exit 5

fi

X_SERVER=$IND_PROG_DBROOT/bin/sdbgloballistener

X_PATH=$IND_PROG_DBROOT/bin

MaxDB_BIN=$X_SERVER

test -x $MaxDB_BIN || exit 5

MaxDB_BIN=$X_PATH/dbmcli

test -x $MaxDB_BIN || exit 5

# find program fuser

FUSER=/bin/fuser

test -x $FUSER || FUSER=/sbin/fuser

test -x $FUSER || FUSER=/usr/sbin/fuser

# Shell functions sourced from /etc/rc.status:

# rc_check check and set local and overall rc status

# rc_status check and set local and overall rc status

# rc_status -v ditto but be verbose in local rc status

# rc_status -v -r ditto and clear the local rc status

# rc_failed set local and overall rc status to failed

# rc_reset clear local rc status (overall remains)

# rc_exit exit appropriate to overall rc status

#. /etc/rc.status

# First reset status of this service

#rc_reset

# Return values acc. to LSB for all commands but status:

# 0 - success

# 1 - misc error

# 2 - invalid or excess args

# 3 - unimplemented feature (e.g. reload)

# 4 - insufficient privilege

# 5 - program not installed

# 6 - program not configured

# 7 - program is not running

#

# Note that starting an already running service, stopping

# or restarting a not-running service as well as the restart

# with force-reload (in case signalling is not supported) are

# considered a success.

RETVAL=1

case "$1" in

start)

echo -n "Starting MaxDB services: "

if [ ! -z "$X_SERVER" ]; then

$X_SERVER start>/dev/null 2>&1

# to enable auto start/stop demodb remove following comments

DBMCLI=$X_PATH/dbmcli

if [ ! -x $DBMCLI ]; then

echo "dbmcli not found" >&2

exit 5

fi

$DBMCLI -d DEMODB << __EOD__ 2>&1 > /dev/null

user_logon OLEG,MONDAY

db_online

__EOD__

_test=`echo $_o | grep ERR`

if [ "$_test" = "" ]; then

echo -n " database DEMODB started"

else

echo "cannot start DEMODB: $_o" >&2

exit 7

fi

RETVAL=0

fi

touch /var/lock/subsys/maxdb

;;

stop)

echo -n "Shutting down MaxDB services: "

if [ ! -z "$X_SERVER" ]; then

# to enable auto start/stop demodb remove following comments

DBMCLI=$X_PATH/dbmcli

if [ ! -x $DBMCLI ]; then

echo "dbmcli not found" >&2

exit 5

fi

_o=`$DBMCLI -d DEMODB << __EOD__ 2>&1

user_logon OLEG,MONDAY

db_offline

__EOD__`

_test=`echo $_o | grep ERR`

if [ "$_test" = "" ]; then

echo -n "database DEMODB stopped"

else

echo "cannot stop DEMODB: $_o" >&2

exit 1

fi

$X_SERVER stop -all > /dev/null 2>&1

RETVAL=0

fi

rm -f /var/lock/subsys/maxdb

;;

status)

if [ ! -z "$X_PATH" ]; then

if [ -x $FUSER ]; then

_o=`$FUSER $IND_PROG_DBROOT/pgm/vserver`

if [ $? -eq 0 ]; then

echo "communication server is running"

# to enable auto start/stop demodb remove following comments

DBMCLI=$X_PATH/dbmcli

if [ ! -x $DBMCLI ]; then

echo "dbmcli not found" >&2

exit 5

fi

_o=`$DBMCLI -d DEMODB << __EOD__

user_logon OLEG,MONDAY

db_state

__EOD__`

_test=`echo $_o | grep ERR`

if [ "$_test" = "" ]; then

_state=`echo $_o | sed s/.*State\ *// | sed s/\ .*//`

echo "database DEMODB is $_state"

else

echo "cannot get state of DEMODB: $_o" >&2

fi

RETVAL=0

else

echo "communication server is not running"

RETVAL=0

fi

else

echo "status unkown - fuser not found" >&2

fi

else

echo "status unkown - x_server not found" >&2

fi

;;

restart)

$0 stop

$0 start

;;

reload)

$0 stop

$0 start

;;

*)

echo "Usage: maxdb {start|stop|status|reload|restart}"

exit 1

;;

esac

exit $RETVAL


SQL - SAP Documentation

Background documentation SQL

To define, query, insert, change, and delete data in an SAP MaxDB database, you use the Structured Query Language (SQL).

To program a database application, you can embed SQL statements in a programming language and send them to the database via one of the SAP MaxDB interfaces. Users of the database application then only implicitly enter SQL statements. More information: Database Administration, Developing Database Applications

For development and tests you can explicitly enter SQL statements using the following database tools:

  • Database Studio (GUI)

  • SQLCLI (command line)

SQL Syntax

The SQL statements are divided into the following groups: data definition, authorization, data manipulation, data query, transactions, and statistics.

More information:

  • Introduction to the SAP MaxDB SQL syntax: SQL Tutorial

  • Complete SQL syntax description: SQL Syntax

  • SQL Reference Manual, SQL Statements: Overview

  • SQL Reference Manual, Restrictions for SQL Statements

SQL Properties of SAP MaxDB (Selection)
Property | More information
Schema | SQL Tutorial, Schemas SQL Reference Manual, CREATE SCHEMA Statement (create_schema_statement)
Foreign Keys (referential integrity) | SQL Tutorial, Foreign Key Dependencies Between Tables SQL Reference Manual, Referential CONSTRAINT Definition (referential_constraint_definition)
Explicit and implicit locks on rows, tables and the database catalog | SQL Reference Manual, Transactions LOCK Statement (lock_statement) LOCK Option (lock_option)
Updatable view table | SQL Tutorial, View Tables SQL Reference Manual, CREATE VIEW Statement (create_view_statement)
Temporary table | SQL Reference Manual, CREATE TABLE Statement (create_table_statement)
Domain definition | SQL Tutorial, Domains SQL Reference Manual, CREATE DOMAIN Statement (create_domain_statement)
Join | SQL Tutorial, Joins: Information From Several Tables SQL Reference Manual, JOIN Predicate (join_predicate)
Subquery | SQL Tutorial, Subquery: Inner Queries SQL Reference Manual, Subquery (subquery)
Subtransaction | SQL Reference Manual, SUBTRANS Statement (subtrans_statement)
Number generator (auto-increment column) | SQL Tutorial, Number Generators for Tables SQL Reference Manual, CREATE SEQUENCE Statement (create_sequence_statement)
Database procedure (stored procedures) | SQL Tutorial, Database Procedures SQL Reference Manual, CREATE DBPROC[EDURE] Statement (create_dbproc_statement)
Database function (user-defined function) | SQL Tutorial, Database Functions SQL Reference Manual, CREATE FUNCTION Statement (create_function_statement)
Triggers | SQL Tutorial, Database Triggers SQL Reference Manual, CREATE TRIGGER Statement (create_trigger_statement) CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement)
Server-side cursor | SQL Reference Manual, DECLARE CURSOR Statement (declare_cursor_statement)
Shared SQL (re-use of execution plans) | Special Database Parameters UseSharedSQL
Optimization | SQL Optimizer
Data Types
SAP MaxDB Data Types
Data Type | Description in SQL Reference Manual
BOOLEAN | BOOLEAN
CHAR[ACTER] [ASCII | BYTE | UNICODE] | CHAR[ACTER]
DATE | DATE (date value)
FIXED | FIXED
FLOAT | FLOAT
INT[EGER] | INT[EGER]
CLOB [ASCII] CLOB UNICODE BLOB | LOB Column In earlier database versions, this data type was known as LONG.
SMALLINT | SMALLINT
TIME | TIME (time value)
TIMESTAMP | TIMESTAMP (time stamp value)
VARCHAR [ASCII | BYTE | UNICODE] | VARCHAR

More information: SQL Reference Manual, Data Type (data_type)

Compatibility

You can choose between two SQL modes: INTERNAL and ORACLE.

More information: SQL Mode ORACLE

More Information

Transactions

Locks


Backing Up and Restoring with Remote Computers - SAP Documentation

Procedure documentation Backing Up and Restoring with Remote Computers

You can back up data and redo log entries to data carriers on remote computers, check backups on remote computers, or use backups from a remote computer to restore a database.

To do this, you start the database service on the local database computer under the name of an operating system user that exists on both the local database computer and the remote computer and then log on to the remote computer using the same operating user name.

Note that backups to remote computers are prone to errors during transfer. They also take longer than backups to the local database computer.

This graphic is explained in the accompanying text.

Backing Up and Restoring Data with Remote Computers

Prerequisites

  • There is an operating system user that exists on both computers.

    Note Note

    In general, the service of the database runs under a special operating system user.

    More information: Special Operating System Users and Groups

    End of the note.

  • This operating system user has the necessary authorizations for the required directories on both computers, and is thus authorized to write and read the backups on the remote computer.

Procedure

Microsoft Windows

  1. On the database computer, open Services management in the Microsoft Management Console.

  2. Stop the service of the database you want to restore or back up.

  3. Open the properties of this service.

  4. On the Log On tab page, enter the operating system user that exists on both computers.

  5. Restart the service of the database.

Unix and Linux

No additional actions are necessary.


Standby Database - SAP Documentation

Procedure documentation Standby Database

A standby database is a copy of the active database. To update the standby database, you manually import the log backups of the original database. The standby database always is in ADMIN operational state.

If the original database breaks down, you can start the standby database immediately, thus continuing work without long downtimes. You can also revert the standby database to the state the original database was in at an earlier point in time.

Procedure

This graphic is explained in the accompanying text.

Original Database and Standby Database

To set up and manage standby databases, use Database Studio or Database Manager CLI.

  1. Create the standby database by creating a copy of your original database. Proceed as described in the Database Copy section, while observing the following:

    • Set up the original database and the standby database on different computers.

    • Use the same version of the database software for both the original and the standby database.

    • Configure separate working directories for the databases.

    • Use the same values for the database parameters for both databases.

    • Do not start the standby database; instead, leave it in the ADMIN operational state.

  2. In the standby database, define a backup template for log backups with the following property:

    Data Carrier (device/file) points to the log backup of the original database.

    More information:

    • Database Studio, Defining Backup Templates

    • Database Administration in CCMS, Backup Templates

  3. In your original database, regularly create log backups.

    More information:

    • Database Studio, Backing up Log Entries

    • Database Administration in CCMS, Scheduling Log Backups

  4. In the standby database, regularly import the log backups of the original database, thus updating the standby database.

    More information:

    • Database Studio, Restoring Databases

Result

The standby database now contains the same data as the original database at the time the log backup that was last imported was created in the original database.

You can activate the standby database at any time.

More information: Making the Standby Database the Active Database

More Information

You can find example scripts in the SAP MaxDB wiki on SCN, see https://www.sdn.sap.com/irj/scn/wiki?path=/display/MaxDB/Main.


Backing Up Databases - SAP Documentation

Procedure documentation Backing Up Databases

Regularly back up your data and redo log entries from the data and log areas of your database to data carriers. No downtime is required for backups: you can execute backups in the ONLINE operational state, meaning that the database is available to users during backups.

This graphic is explained in the accompanying text.

Backing Up: Schematic Overview

If there is a database failure due to a hardware defect or a logical error, you can restore the database to a consistent state by importing the data and log entries from the backups. You can use backups you created on a Microsoft Windows system on Unix and Linux systems, and the other way round.

Procedure

For backing up, use Database Studio, Database Manager CLI, or CCMS (in SAP systems only). Note that neither data exports created with the Loader database tool nor data area snapshots are data backups: they are not suitable for restoring a database.

Recommendation Recommendation

Test your backup and restore process on a test computer before starting up your production system.

End of the recommendation.

  1. Make a plan of when you want to carry out backups.

    More information: Periodic Administration Tasks

  2. Define backup templates.

    More information: Backup Templates and Data Carriers

  3. Regularly back up data and redo log entries during normal database operation.

    More information:

    • Backing Up Data

    • Backing Up Log Entries

    Options

    • To speed up the backup process, you can back up the data on several data carriers in parallel.

      More information: Backing Up to a Group of Parallel Data Carriers

    • You can also back up data to data carriers on remote computers.

      More information: Backing Up and Restoring Data with Remote Computers

    • You can use third-party backup tools.

      More information: Using Third-Party Backup Tools

  4. Check if the database system carried out the backup successfully.

    More information: Monitoring Databases

  5. If you use data carriers of the FILE type for log backups (backup files), then archive the backup files regularly.

    More information: Archiving Backup Files

More Information

Restoring Databases

Concepts of the Database Systems, How Databases Store Data and Log Entries


Logical Access Structures - SAP Documentation

Background documentation Logical Access Structures

The database system uses the following organizational structures to store data in the database:

  • Page chains

  • Pages in B* trees

Page Chains

The database system uses page chains to store undo log entries and SAP liveCache data (C++ objects) and later access them.

A page chain is a sequence of pages that logically belong together. Each page has exactly one page that follows it. The first page in a page chain is called the root page. The root page contains internal administration information, such as the ID of the last page in the chain.

This graphic is explained in the accompanying text.

Page Chain

B* Trees

The database system creates B* trees for the following database objects:

  • One B* tree for each table for the data records (application data)

  • One or more additional B* trees for the LOB values of a table

    More information: B* Trees for Tables with LOB Columns

  • An additional B* tree for each index of a table

    More information: B* Trees for Tables with Indexes

A B* tree consists of a root level, one or more B* tree index levels, and a leaf level. Each level consists of one or more pages. When the database system searches for a data record, it starts at the root page of the B* tree and narrows the search area step by step.

This graphic is explained in the accompanying text.

B* Tree with Three Levels

The pages of the root and B* tree index levels in a B* tree contain the separators.

A separator points to the logical addresses (page numbers) of pages on the next lower level. The separator contains the significant part of the primary key that is required to differentiate it from the next entry. In this way, the memory space that is required by these pages is minimized. The average length of the separators depends on the structure and selectivity of the key.

The first separator in the far left page for each level (including the root level) contains only the pointer to the far left page on the next level down.

This graphic is explained in the accompanying text.

Root Page of the B* Tree

The pages of the leaf level (leaf pages) contain the actual data records (table rows) and a position list. Each data record has an entry in the position list that points to the physical location of the data record in the page. The database system stores the data records on a single page randomly, but it always stores the position entries in the position list in ascending order.

The number of data records on a leaf page depends on the total length of the data records.

The database system automatically rebalances the B* trees, thus making it unnecessary to reorganize the data manually.

More information: Rebalancing

Example

  • Example: SELECT Statement

  • Example: INSERT Statement

  • Example: UPDATE Statement

  • Example: DELETE Statement


Network Communication - SAP Documentation

Background documentation Network Communication

To connect to a database on a remote computer, applications (via interfaces) and database tools use the SAP MaxDB X server (communication server) that is running on the remote database computer.

There is one X server acting as a global listener for each database computer, and one X server for each SAP MaxDB installation. This means that on each database computer, there are at least one global listener and one X server.

Note that for older clients, the global listener acts as X server.

To connect to a remote database, you have the following options:

  • You specify the database name, the port number for the database and the database computer.

    You are then directly connected to the X server of the installation to which the database belongs, and this X server connects you to the database.

  • You only specify the database name and the database computer. Internally, the system executes the following steps:

    1. The global listener receives the connection request and sends back the port number of the database.

    2. You are then directly connected to the X server of the installation to which the database belongs, and this X server connects you to the database.

Ports and Network Protocols for Connecting to Remote Databases

This graphic is explained in the accompanying text.

Ports and Network Protocols for Connecting to Remote Databases

Ports and Protocols of the SAP MaxDB X Servers
Scope | Default Port | Function of the X Server | Protocol | Protocol Identifier
All installations on the database computer | 7210 | Global listener | TCP/IP | remote://
 | 7269 | Global listener with SAP networtk protocol NI (for connections via SAPRouter, only available in SAP systems) | NI (based on TCP/IP) | sapni://
 | 7270 | Global listener with SAP networtk protocol NI and SAP encryption library (for connections via SAPRouter, only available in SAP systems) | SSL/TLS NISSL (based on TCP/IP) | remotes:// sapnis://
First installation <installation_1> on the database computer | 7200 | X server for <installation_1> | TCP/IP | remote://
Second installation <installation_2> on the database computer | 7203 | X server for <installation_2> | TCP/IP | remote://
Separate Database Studio installation | 7299 | X server for the separate Database Studio installation, only used by the system to access the local user management database .UMDB | TCP/IP | remote://

The ports are stored in the services file:

  • Microsoft Windows: C:\WINDOWS\system32\drivers\etc\services

  • Unix and Linux: /etc/services

Connecting via SAPRouter

Connections to the database via SAPRouter are always established via the global listener. These connections use the NI or the NISSL protocol with designated ports.

Connecting to Local Databases

Connections to databases on the local computer use shared memory and do not need an X server.

If you want to force the database system to establish the connection via an X server, specify localhost as the database computer when logging on to the database.

Note that the JDBC interface needs the X server even if it is installed on the same computer as the database. Because Database Studio uses the JDBC interface to connect to databases, Database Studio also needs an X server for local communication with databases.

Encryption

To encrypt the data transfer between the client and the global listener/X servers, SAP customers can use SSL/TLS.

For more information about encryption, see the Installation Guide for your SAP system on the SAP MaxDB database.

Example

The HOTELDB and SHOPDB databases are both located on the ROME computer. They both belong to the same installation, and therefore use the same installation-specific X server when clients connect to them from other computers.

  • A user uses Database Studio on the ROME computer to access the HOTELDB database on the same computer. Because Database Studio uses the JDBC interface, which needs the X server even for local communication, the connection is established via the X server of the Database Studio installation.

  • A second user, on the GENUA computer, uses Database Manager CLI to access the HOTELDB and the SHOPDB databases by means of the installation-specific X server on the ROME computer.

  • A third, local, user uses SQLCLI on the ROME computer to directly access the HOTELDB database without using an X server.

This graphic is explained in the accompanying text.

Communication Between Clients and Database in the Network (Example)

More Information

  • Technical System Landscape

  • Global Listener and X Servers

  • Database Administration, Encryption


Objects in the HOTEL Schema - SAP Documentation

Background documentation Objects in the HOTEL Schema

After you have loaded the demo data into your demo database, the tables CITY, CUSTOMER, HOTEL, ROOM, RESERVATION, EMPLOYEE, and other database objects are located in the HOTEL schema. The database administrator MONA is the owner of the HOTEL schema and its objects. The tables are filled with demo data.

CITY Table

Every table row contains the following information: zip code, city name, and abbreviation of the name of the state in which the city is located.

Syntax Syntax

  1. CREATE TABLE city
(zip   CHAR(5)  PRIMARY KEY CONSTRAINT zip_cons CHECK
                SUBSTR(zip,1,1) BETWEEN '0' AND '9' AND
                SUBSTR(zip,2,1) BETWEEN '0' AND '9' AND
                SUBSTR(zip,3,1) BETWEEN '0' AND '9' AND
                SUBSTR(zip,4,1) BETWEEN '0' AND '9' AND
                SUBSTR(zip,5,1) BETWEEN '0' AND '9',
 name  CHAR(30) NOT NULL,
 state CHAR(2)  NOT NULL)
End of the code.

The zip column is the primary key column. Specifying the zip_cons constraint ensures that only characters between 0 and 9 can be used as zip codes. The city name name and state abbreviation state must not contain any NULL values.

CUSTOMER Table

Every table row contains the following customer information: a number for uniquely identifying the customer, the title to be used in correspondence, the customer’s first and last names, and the customer address, consisting of the zip code, street, and house number.

Syntax Syntax

  1. CREATE TABLE customer
(cno       FIXED(4) PRIMARY KEY CONSTRAINT cno_cons CHECK cno > 0,
 title     CHAR(7)  CONSTRAINT title_cons CHECK title IN ('Mr','Mrs','Company'),
 firstname CHAR(20),
 name      CHAR(40) NOT NULL,
 zip       CHAR(5)  CONSTRAINT zip_cons CHECK
           SUBSTR(zip,1,1) BETWEEN '0' AND '9' AND
           SUBSTR(zip,2,1) BETWEEN '0' AND '9' AND
           SUBSTR(zip,3,1) BETWEEN '0' AND '9' AND
           SUBSTR(zip,4,1) BETWEEN '0' AND '9' AND
           SUBSTR(zip,5,1) BETWEEN '0' AND '9',
 address   CHAR(40) NOT NULL,
FOREIGN KEY customer_zip_in_city (zip) REFERENCES city ON DELETE RESTRICT)
End of the code.

The cno column is the primary key column. Specifying the cno_cons constraint ensures that the customer number is greater than zero. The title_cons constraint ensures that Mr or Mrs or Company is selected as title. NULL values cannot be entered in the name and address columns. Specifying the zip_cons constraint ensures that only characters between 0 and 9 can be used as zip codes. The zip column is the foreign key column. The keywords ON DELETE RESTRICT have the effect that the system warns you when you delete rows from the CITY table if a row exists in the CUSTOMER table that matches the zip code in the row that you want to delete.

HOTEL Table

Every table row contains the following information: a number that uniquely identifies the hotel, the hotel name and address (zip code, street, and house number), and information about the hotel.

Syntax Syntax

  1. CREATE TABLE hotel
(hno     FIXED(4) PRIMARY KEY CONSTRAINT hno_cons CHECK hno > 0,
 name    CHAR(50) NOT NULL,
 zip     CHAR(5) CONSTRAINT zip_cons CHECK
         SUBSTR(zip,1,1) BETWEEN '0' AND '9' AND
         SUBSTR(zip,2,1) BETWEEN '0' AND '9' AND
         SUBSTR(zip,3,1) BETWEEN '0' AND '9' AND
         SUBSTR(zip,4,1) BETWEEN '0' AND '9' AND
         SUBSTR(zip,5,1) BETWEEN '0' AND '9',
 address CHAR(40) NOT NULL,
 info    CLOB,
FOREIGN KEY hotel_zip_in_city (zip) REFERENCES city ON DELETE RESTRICT)
End of the code.

The hno column is the primary key column. Specifying the hno_cons constraint ensures that the hotel number is greater than zero. NULL values cannot be entered in the name and address columns. Specifying the zip_cons constraint ensures that only characters between 0 and 9 can be used as zip codes. The zip column is the foreign key column. The keywords ON DELETE RESTRICT have the effect that the system warns you when you delete rows from the CITY table if a row exists in the HOTEL table that matches the zip code in the row that you want to delete. In this case, the row is not deleted.

ROOM Table

Every table row contains the following information: a number for uniquely identifying the hotel in which the room is located, information about the room type (single room, double room, or suite), the number of rooms free and the price per room.

Syntax Syntax

  1. CREATE TABLE room
(hno   FIXED(4)   CONSTRAINT hno_cons CHECK hno > 0,
 type  CHAR(6)    CONSTRAINT type_cons CHECK type IN ('single','double','suite'), PRIMARY KEY (hno,type),
 free  FIXED(3,0) CONSTRAINT free_cons CHECK free >= 0,
 price FIXED(6,2) CONSTRAINT price_cons CHECK price BETWEEN 0.00 AND 5000.00,
FOREIGN KEY room_hno_in_hotel (hno) REFERENCES hotel ON DELETE CASCADE)
End of the code.

The columns hno and type form the primary key. Specifying the hno_cons constraint ensures that the hotel number is greater than zero. The type_cons constraint ensures that single, double or suite is selected as room type. Specifying the free_cons constraint ensures that the number of free rooms is greater than zero. Specifying the price_cons constraint ensures that the room price lies between 0 and 5000 is. The hno column is the foreign key column. The keywords ON DELETE CASCADE have the effect that when you delete rows from the HOTEL table, the system deletes the rows from the ROOM table that contain a hotel number identical to that in the row that you want to delete.

RESERVATION Table

Every table row contains the following information: a number for uniquely identifying the reservation, a number for uniquely identifying the customer, a number for uniquely identifying the hotel, information about the room type (single room, double room, suite), and date of arrival and departure.

Syntax Syntax

  1. CREATE TABLE reservation
(rno       FIXED(4) PRIMARY KEY CONSTRAINT rno_cons CHECK rno > 0,
 cno       FIXED(4) CONSTRAINT cno_cons CHECK cno > 0,
 hno       FIXED(4) CONSTRAINT hno_cons CHECK hno > 0,
 type      CHAR(6)  CONSTRAINT type_cons CHECK type IN ('single','double','suite'),
 arrival   DATE     NOT NULL,
 departure DATE     NOT NULL, CONSTRAINT staying CHECK departure > arrival,
FOREIGN KEY reservation_cno_in_customer (cno) REFERENCES customer ON DELETE CASCADE
FOREIGN KEY reservation_info_in_room (hno,type) REFERENCES room ON DELETE CASCADE)
End of the code.

The rno column is the primary key column. Specifying the rno_cons constraint ensures that the reservation number is greater than zero. Specifying the cno_cons constraint ensures that the customer number is greater than zero. Specifying the hno_cons constraint ensures that the hotel number is greater than zero. The type_cons constraint ensures that single, double or suite is selected as room type. NULL values cannot be entered in the arrival and departure columns. Specifying the staying constraint ensures that the departure date is after the arrival date. The cno column is the foreign key column. The keywords ON DELETE CASCADE have the effect that when you delete rows from the CUSTOMER table, the system deletes the rows from the RESERVATION table that contain a hotel number identical to that in the row that you want to delete. The columns hno and type form the primary key. The keywords ON DELETE CASCADE have the effect that when you delete rows from the ROOM table, the system deletes the rows from the RESERVATION table that contain a hotel number and room type identical to those in the row that you want to delete.

EMPLOYEE Table

Every table row contains the following information: a number that uniquely identifies the hotel, a number that uniquely identifies the employee, the title used in correspondence, the first and last name of the employee, and a number that assigns the employee to a superior.

Syntax Syntax

  1. CREATE TABLE employee
(hno         FIXED(4),
 eno         FIXED(4), PRIMARY KEY (hno,eno),
 title       CHAR(7)  CONSTRAINT title_cons CHECK title IN ('Mr','Mrs'),
 name        CHAR(20) NOT NULL,
 manager_eno FIXED(4),
FOREIGN KEY employee_hno_in_hotel (hno) REFERENCES hotel ON DELETE CASCADE)
End of the code.

The columns hno and eno form the primary key. The title_cons constraint ensures that Mr or Mrs or is selected as the title. NULL values cannot be entered in the name column. The hno column is the foreign key column. The keywords ON DELETE CASCADE have the effect that when you delete rows from the HOTEL table, the system deletes the rows from the EMPLOYEE table that contain a hotel number identical to that in the row that you want to delete.

CUSTOMER_ADDR View Table

Every row in the view table contains the following information: a number for uniquely identifying the customer, the title to be used in correspondence, the customer’s last name, and the customer address, consisting of the zip code, city, state abbreviation, street and house number.

Syntax Syntax

  1. CREATE VIEW customer_addr (cno, title, name, zip, city, state, address)
AS SELECT customer.cno, customer.title, customer.name, customer.zip,
          city.name, city.state, customer.address
          FROM customer, city
          WHERE customer.zip = city.zip WITH CHECK OPTION
End of the code.

The required information is taken from the customer and city tables. The keywords WITH CHECK OPTION have the effect that if an INSERT or UPDATE statement is issued for the view table, rows can only be created that can subsequently be selected via the view table. In other words, the search condition for the view table must be fulfilled for the resulting rows.

HOTEL_ADDR View Table

Every row in the view table contains the following information: a number for uniquely identifying the hotel, the name of the hotel and the address of the hotel, consisting of the zip code, city, state abbreviation, street and house number.

Syntax Syntax

  1. CREATE VIEW hotel_addr (hno, name, zip, city, state, address)
AS SELECT hotel.hno, hotel.name, hotel.zip,
          city.name, city.state, hotel.address
          FROM hotel, city
          WHERE hotel.zip = city.zip WITH CHECK OPTION
End of the code.

The required information is taken from the hotel and city tables. The keywords WITH CHECK OPTION have the effect that if an INSERT or UPDATE statement is issued for the view table, rows can only be created that can subsequently be selected via the view table. In other words, the search condition for the view table must be fulfilled for the resulting rows.

CUSTOM_HOTEL View Table (Hotel Reservations)

Every row in the view table contains the following information: customer surname, customer address, name, and city of the hotel.

Syntax Syntax

  1. CREATE VIEW custom_hotel (customname, customcity, hotelname, hotelsity)
AS SELECT customer_addr.name, customer_addr.city,
          hotel_addr.name, hotel_addr.city
          FROM customer_addr, hotel_addr, reservation
          WHERE customer_addr.cno = reservation.cno
          AND hotel_addr.hno = reservation.hno
End of the code.

The required information is taken from the customer_addr and hotel_addr view tables of the reservation table. The customers who have reservations in the hotels are displayed.

Single Column Index

Syntax Syntax

  1. CREATE INDEX city_state ON city (state)
End of the code.

The secondary index city_state is defined for the state column in the city table.

Multi Column Index

Syntax Syntax

  1. CREATE INDEX full_name_index ON customer (name, firstname)
End of the code.

The secondary index full_name_index is defined for the name and firstname columns in the customer table.

More Information

Demo Database


Analyzing Database Performance - SAP Documentation

Procedure documentation Analyzing Database Performance

The performance of a database depends on the configuration of the database, the database design, and the formulation of SQL statements. The following information is only a general overview; depending on your system environment, additional actions might be required.

Prerequisites

  • Before carrying out a performance analysis, the system this should have been running for some time: the read actions in the data cache should have reached at least 20,000,000.

    More information:

    • Database Studio, Displaying Information About Caches (Working Memory Areas)

    • Database Administration in CCMS, Caches

  • Regularly update the SQL optimizer statistics. Use performance analyses of individual SQL statements (particularly Join statements) only after the statistics have been updated.

    • Database Studio, Updating SQL Optimizer Statistics

    • Database Administration in CCMS, Update of the SQL Optimizer Statistics

  • Always have Database Analyzer running. When a SAP system or a SAP liveCache system starts up, Database Analyzer is automatically started for the system's basis database. If necessary, start Database Analyzer manually.

    More information:

    • Database Studio, Starting or Stopping Database Analyzer

    • Database Administration in CCMS, Database Analyzer

  • In SAP systems, database monitoring is automatically activated when the database is started. This means that the statistical data which the system collects for monitoring goes back to the last database start. Depending on the performance issue you want to analyze, it may be necessary to reset the collected monitoring data.

    More information: Database Administration in CCMS, Database Monitoring

Procedure

For a performance analysis you can check a wide range of settings, access times and hit rates of your database system. It may also be necessary to include the applications running on the database into your analyses. Because each performance analysis is highly specific to the system analyzed, the following steps are suggestions only.

To analyze performance issues, use Database Studio and CCMS (in SAP systems only). Experts can use further database tools, such as Database Analyzer and XCONS.

  1. Check your database parameter settings.

    For an explanation of database parameters, see Database Parameters and SAP Note 814704.

    If necessary, adjust the values of your database parameters. More information:

    • Database Studio, Changing Database Parameters

    • Database Administration in CCMS, Parameters

  2. Check disk access (read and write operations), especially for the data volumes. Long I/O times may be caused by a heavy system load. Check general database system activities such as running backups or disk read actions since the last database start.

    More information:

    • Database Studio, Displaying the Database Properties

    • Database Administration in CCMS, I/O Operations

  3. Check the hit rates in the data cache and the catalog cache. Database performance can suffer if too much data has to be read from disk.

    More information:

    • Database Studio, Displaying Caches (Working Memory Areas)

    • Database Administration in CCMS, Caches

  4. Check the logging activities. Specifically, there should be no log I/O queue overflows.

    More information:

    • Database Studio, Displaying the Database Properties

    • Database Administration in CCMS, Activities Overview

  5. To analyze performance bottlenecks in more detail, use Database Analyzer.

    More information:

    • Database Studio, Activating or Deactivating Database Analyzer

    • Database Administration in CCMS, Bottlenecks

    • Database Analyzer documentation

    Bottleneck analysis provides a variety of statistical data covering a longer period of time. To get current data on I/O activities and execution times, you can also temporarily activate database time measurement in the database task manager.

    More information:

    • Database Studio, Displaying Information About Tasks

    • Database Administration in CCMS, Task Manager

  6. If a performance problem has just been reported, you can specifically check the current user tasks. In the database task manager, activate automatic refresh and monitor the user tasks and their task states. Most user tasks should have the status Running. The status I/O Wait should be much rarer; statuses like Vwait, Vbegexlc and Vsuspend should not occur at all.

    More information:

    • Concepts of the Database System, Tasks

    • Database Studio, Displaying Information About Tasks

    • Database Administration in CCMS, Task Manager

  7. Display the open database transactions and examine these thoroughly.

    More information: Database Administration in CCMS, Transactions

  8. Check if exclusive wait situations have occurred. Exclusive write locks mean that other users cannot access the locked data. These locks can significantly reduce database performance.

    More information: Database Administration in CCMS, Wait Situations

  9. To perform runtime analyses of any long–running SQL statements, use the special SQL command monitors (resource monitor, command monitor).

    More information:

    • Database Studio,

      • Configuring and Starting SQL Performance Monitoring

      • Analyzing SQL Performance Bottlenecks

    • Database Administration in CCMS, Resource Monitor, Command Monitor

  10. Indexes are essential for fast and efficient access to the data. Regularly check if indexes are missing from the database system or are damaged. Always re-create missing indexes immediately.

    More information:

    • Database Studio, Displaying Indexes

    • Database Administration in CCMS, Index Analysis

  11. Check the SQL statements that cause the most disk accesses and optimize these statements, if necessary.

    More information: SQL Optimizer documentation

More Information

  • SAP Notes: 819641 (FAQ: MaxDB Performance), 819324 (FAQ: MaxDB SQL Optimization)

  • Database Administration in CCMS, Performance Analysis in CCMS

  • XCONS documentation

  • SAP MaxDB wiki on SDN: https://www.sdn.sap.com/irj/sdn/wiki?path=/display/MaxDB/Main


Log Files - SAP Documentation

Background documentation Log Files

The database system, database tools, and interfaces write information and error messages to log files.

Displaying Log Files

Most log files are text files that you can read using a text editor. Note that some files like the Database Messages file are written in a pseudo-XML format and thus are not easily readable in a text editor, and other files are in binary format. Use Database Studio, Database Manager CLI or CCMS to display these files.

More information:

  • Database Studio, Displaying Configuration and Log Files

  • Database Manager CLI, file_getfirst

  • Database Administration in CCMS, Logs, Messages

Overview of Important Database Log Files
Kernel Log Files

Name

File Name

Directory

File ID

Description

Database Messages

KnlMsg

Run directory of the database (see Run Directory).

KNLMSG

Current kernel log file of the database, containing all kernel messages (error messages, warnings, and information)

This file is written in a pseudo-XML format.

The first part of the file contains messages of the database start into the operational state ADMIN: information about the software version, important paths and the current values of the database parameters. These messages are not be overwritten until the next database start, when the old version of the kernel log file is copied to the Database Messages (Old) file.

The second part of the file contains the messages that the database writes during operation. These messages will be overwritten cyclically. If the database crashes, a stack back trace is written.

See also Special Database Parameters KernelMessageFileSize and KernelMessageHistoryCount

Database Errors

KnlMsgArchive

Run directory of the database

KNLMSGARC

Error messages and start messages of the kernel since installation

This file is written in a pseudo-XML format.

This file is not overwritten cyclically. If you are analyzing database problems and the Database Messages and Database Messages (Old) files do not contain the relevant information anymore, check the Database Errors file.

See also the special database parameter MaxKernelMessageArchiveSize

Database Messages (Old)

KnlMsg.Old

Run directory of the database

KNLMSGOLD

Last kernel log file (before the last restart)

This file is written in a pseudo-XML format.

Database Messages (Classic)

-

(generated from the KnlMsg file)

Run directory of the database

KNLDIAG

Classic form of the current database kernel log file

Database Dump

knldump

Run directory of the database

Depending on your system, this file may become very large. To change the location of the file, use the database parameter KernelDumpFileName, see Support Database Parameters.

KNLDUMP

In case of an emergency datatabase shutdown, the global memory of the database is dumped into this file (in binary format).

Note that on Unix, no dump file is written if the database crashes due to a Unix signal.

Runtime Environment Dump

rtedump

Run directory of the database

To change the location of the file, use the support database parameter RTEDumpFileName.

RTEDUMP

In case of an emergency database shutdown, this file contains the tasks that were active in the database at the time of the emergency shutdown.
General Log Files

Name

File Name

Directory

File ID

Content

Database Parameter History

<database_name>.pah

<data_path>\config

You can display the data path using the dbm_getpath DBM command:

dbmcli dbm_getpath DataPath

For more information, see Database Manager CLI, dbm_getpath.

DBMPAHI

History of the database parameter values

Database Trace (Raw/Binary)

knltrace

Run directory of the database (see Run Directory).

To change the name and location of this file, use the support database parameter KernelTraceFile, see Support Database Parameters.

KNLTRC

Messages of the database trace (binary format)

The system initializes this file every time the database is started.

Database Trace (Readable)

<database_name>.prt

Run directory of the database

KNLTRCPRT

Text version of the database trace (available after a database trace has been created)

Installation Log File

Depending on which program you have used to install, update or uninstall the software:

  • SDBSETUPMsg<timestamp>.log (installation using SDBSETUP)

  • SDBINSTMsg<timestamp>.log (installation using SDBINST)

  • SDBuninstMsg<timestamp>.log (deinstallation using sdbuninst)

  • SDBUPDMsg<timestamp>.log (update using SDBUPD)

<global_data>\wrk

You can display the global data path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalDataPath

If the system cannot find <global_data>, the following directories are used:

  • Microsoft Windows: %TMP%

  • Unix/Linux: $TMP

-

Messages during installation, update or deinstallation of the software

Event Dispatcher Configuration

klndiag.evt

You can also configure another name using the EventFileName support database parameter.

Run directory of the database

KNLEVT

If the the EventFileSize support database parameter is > 0, the system logs events in this file.

This file is overwritten cyclically.

Database Manager Log Files
Name | File Name | Directory | File ID | Content
Backup History | dbm.knl | Run directory of the database (see Run Directory). | BACKHIST | Backup history of the database: contains all backup and restore actions If no backups have yet been executed or the backup history was interrupted, HISTLOST is displayed. For information from third-party backup tools, see the respective documentation.
Backup Templates | BackupTemplates.xml | Run directory of the database | DBMMDF | Information and history of backup templates of the database
Database Manager Log File | dbm.prt | Run directory of the database | DBMPRT | Log file of the DBM server of the current installation, containing all administration commands sent to the DBM server Examples: information about adding data and log volumes or database parameter changes
Global Database Manager Log File | dbmsrv_<database_computer>.prt | <data_path>\wrk You can display the data path using the dbm_getpath DBM command: dbmcli dbm_getpath DataPath For more information, see Database Manager CLI, dbm_getpath. | DBMSRV | General log file for all DBM servers that are located on the database computer
Installation Log File | dbm.ins | Run directory of the database | INSTPRT | Information on loading the system tables for the database
- | dbahist.prt | <run_directory>\dbahist | DBAHIST | For SAP systems only Database administration activities
- | dbm.ebf | Run directory of the database | BACKEBF | Only for third-party backup tools Backup history of the database, includes backup IDs, external backup IDs, and error messages If a backup tool successfully executed a backup but could not determine the backup ID, it enters the backup as failed in the backup history.
- | dbm.ebp | Run directory of the database | BACKEBP | Only for third-party backup tools Information about backups of the database that are created using third-party backup tools. This file is overwritten when a new request is sent to a third-party backup tool.
SAP MaxDB X Server Log Files

Name

File Name

Directory

File ID

Content

X Server Messages

xserver_<computer_name>.prt

<data_path>\wrk

You can display the data path using the dbm_getpath DBM command:

dbmcli dbm_getpath DataPath

For more information, see Database Manager CLI, dbm_getpath.

XSRVPROT

Log file of the global listener or an installation-specific X server (depending on your configuration)

Containd error messages concerning the remote communication (for example in case of network problems)

The first part of the file contains information about the operating system settings and the user environment in which the global listener or X server was started.

For more information, see Global Listener and X Servers.

X Server Messages (Old)

xserver_<computer_name>.old

<data_path>\wrk

XSRVPROTOLD

Last log file of the SAP MaxDB X server

xserver_<computer_name>_<port_number>.prt

<data_path>\wrk

Log file of the (installation-specific) X server that is listening at the port <port_number>.

niserver_<computer_name>_<port_number>.trace

<data_path>\wrk

Log file of the NI server (which is used for connections via SAProuter)

Database Studio Log Files
File Name | Directory | Content
dbstudio.log | <user_home>\sdb\DatabaseStudio\.metadata\.plugins\com.sap.sdb.tools.core | Database Studio log file The system overwrites this log file each time Database Studio is started and saves the old log file as dbstudio.log.bak.
dbstudio.log.bak | <user_home>\sdb\DatabaseStudio\.metadata\.plugins\com.sap.sdb.tools.core | Previous Database Studio log file
Database Analyzer Log Files
File Name | Directory | Content
DBAN.prt | <run_directory>\analyzer\<date> For more information, see Run Directory. | Database Analyzer log files
DBAN.inf | <run_directory>\analyzer | Database Analyzer status
DBAN.err | <run_directory>\analyzer | Database Analyzer errors
Further Database Analyzer Log Files | - | -
Loader Log Files
File Name | Directory | File ID | Content
loader.log/loader_<timestamp>.log | <loader_user_data>\log | - | Loader log file
loader_<timestamp>.log | <loader_user_data>\packages | - | Log file of Loader in transport mode
transport.log | <loader_application_data>\log | - | Loader transformation history
SAP liveCache-Specific Log Files
File Name | File ID | Directory | Content
lcinit.his | LCINITHIS | Run directory of the database (see Run Directory). | History of all start, stop, and initialization actions of SAP liveCache. The system appends the information in the lcinit.log log file to this log file.
lcinit.log | LCINIT | Run directory of the database | Information on starting, stopping and initializing SAP liveCache with the CCMS function of the SAP system

More Information

Glossary, Directory, Documentation Variable


Database Parameters - SAP Documentation

Background documentation Database Parameters

Database parameters define fundamental properties of the database. They are divided into several groups. The following groups are relevant for users:

  • General Database Parameters

  • Special Database Parameters

  • Support Database Parameters

  • liveCache Database Parameters (for SAP liveCache databases only)

The database system stores the values of the database parameters in binary format in the PARAM database parameter file of the database.

Caution Caution

Do not change database parameter values directly in this file. Always use the procedures described below.

End of the caution.

The Database Messages log file also contains the current values of the database parameters (at the beginning of the log file). More information: Log Files

Changing Database Parameters

You can change the values of most database parameters.

Most changes to database parameters take effect only after the database has been restarted.

However, you can change certain database parameters while the database is running, that is in the ONLINE or ADMIN operational state (see the description of individual database parameters for more information). For these changes you can define when they are to become effective:

  • Until the next restart

  • After the next restart

  • Immediately and permanently

Use one of the following database tools:

Database Studio, Database Manager CLI, or CCMS (in SAP systems only)

More information:

  • Database Studio, Changing Database Parameters

  • Database Administration in CCMS, Parameters

You can also use these tools to display the history of the values of the database parameters.

Default Values, Value Ranges, and Calculation Formulas

The default parameter file cserv.pcf contains the default values, value ranges, calculation formulas, and properties of the database parameters.

More information:

  • Configuration Files

  • Properties of Database Parameters

When creating a new database, you have the following options:

  • Use the system default values for the database parameter

  • Use a copy of the database parameter file from another database

  • Import the database parameter file from a complete data backup.

If you change a database parameter whose value is normally calculated by the system, then the system takes this user-defined value for all subsequent recalculations of database parameter values. The system discards and recalculates this user-defined value only if it is not within the permitted value range (such a situation might occur, for example, after the database software has been updated).

Obsolete Database Parameters

Note Note

Starting with version 7.7.03 of the database software, the names of many database parameters have changed.

Some database parameters have also been designated obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

More information: Obsolete Database Parameters

End of the note.

More Information

SAP Note 1139904 (FAQ MaxDB/liveCache Kernel Parameter)

Checking the Database Configuration


Architecture of the Database Tools - SAP Documentation

Background documentation Architecture of the Database Tools

In general, the following applies to all database tools: If a database tool is located on another computer than the database, it connects to the database on the remote computer via an SAP MaxDB X server (communication server). For more information, see Global Listener and X Servers.

Database Studio

Database Studio uses the JDBC interface to communicate with databases. This means that it always needs an X server, even for local communication. The JDBC interface is always located on the same computer as Database Studio, and the X server on the database computer.

This graphic is explained in the accompanying text.

Database Studio Architecture

DBM Server

The DBM server is the server via which administration commands are executed. The database tools Database Studio, Database Manager, and Event Dispatcher use the DBM server. The DBM server always resides on the same computer as the database.

Database Manager

Database Manager consists of a client part and a server part (DBM Server).

The client part of Database Manager is available in the following variants:

  • Database Studio (see above)

  • Database Manager CLI (DBMCLI): Command line interface

  • Database Manager RFC (DBMRFC): Only in SAP systems, interface to the SAP system

If the client part of Database Manager is located on another computer than the database, it connects to the database on the remote computer via an X Server.

This graphic is explained in the accompanying text.

Architecture of the Database Manager

Query Tools

Query tools are database tools with which you can execute SQL statements.

They are avalailable in the following variants:

  • Database Studio (see above)

  • SQLCLI: Command line interface

SQLCLI communicates with the database kernel via the SQLDBC interface.

If the database tool is located on another computer than the database, it connects to the database on the remote computer via an X server.

This graphic is explained in the accompanying text.

Architecture of the Query Tools

Loader

Loader consists of a client and a server part:

  • Loader client

  • Loader server

The Loader client transmits the commands that are to be processed. The Loader server creates the connection between the Loader client and the database, and processes the commands. The Loader client and the Loader server are always installed on the same computer (LoaderCLI).

You can access Loader using the Java interface com.sap.dbtech.powertoys.Loader.

If you use files for exporting or importing data we recommend that you install the Loader server on the computer on which the data is located.

If Loader is located on another computer than the database, it connects to the database on the remote computer via an X server.

This graphic is explained in the accompanying text.

Architecture of Loader

XUSER

XUSER does not communicate directly with other database tools or the database kernel. It only writes XUSER information to the file system. Database tools that use XUSER directly access the XUSER information in the file system.

This graphic is explained in the accompanying text.

Architecture of XUSER

Other Database Tools

XCONS communicates directly with the database kernel. It must be installed on the same computer as the database.

Database Analyzer communicates with the database kernel using ODBC. If Database Analyzer is located on another computer than the database, it connects to the database on the remote computer via an X server.

This graphic is explained in the accompanying text.

Architecture of Other Database Tools

More Information

  • Database Tools

  • Interfaces

  • Technical System Landscape


Architecture of a Hot Standby System - SAP Documentation

Background documentation Architecture of a Hot Standby System

A hot standby system consists of a master and one or more standby databases, which can be located on different computers. The master and standby databases each have their own kernel, working memory areas, SAP MaxDB X Server, DBM Server, and so on.

The computers on which the databases are located constitute a cluster. Communication within the cluster is done by way of the internal IP addresses of the computers. Outwardly, the hot standby system behaves like a single database. To access the hot standby system externally, you need the following information:

  • Database name

  • Virtual Server Name (identifies the computer that currently has the role of master database)

    If the master database breaks down, the Virtual Server Name transfers to the computer with the standby database, which takes on the master role.

    More information: What Happens When the Master Database of a Hot Standby System Fails?

The data and log areas of all databases are located in a storage system. We recommend that you mirror the data and log areas in the storage system.

Master and standby databases use the same log area, although the standby databases only have read access to it.

Note Note

In contrast, standby databases have separate log areas for all databases.

More information: Standby Database

End of the note.

Master and standby databases each have separate data areas that are independent of each other.

Example

The following graphic shows a hot standby system consisting of a master database on the computer GENUA and a standby database on the computer PARMA. The computers GENUA and PARMA are part of a cluster. The name of the database is DEMODB, and the virtual server name is VIRTUAL_SERVER. The data and log areas of the databases are located in a storage system, while the cluster software is installed on a separate computer.

This graphic is explained in the accompanying text.

Structure of a Hot Standby System (Example)

This graphic is explained in the accompanying text.

Hot Standby System: External View (Example)


Rebalancing - SAP Documentation

Background documentation Rebalancing

In the following cases, the database system changes the structure of a B* tree:

  • If there is not enough space available on the leaf page when a data record is changed or inserted.

    The database system adds a new leaf page and redistributes the data records.

    This means that the size of a table is only limited by the total amount of available storage space in the data area.

  • A leaf page is no longer sufficiently full after the deletion of data records.

    The database system deletes the leaf page and moves the remaining data records to other leaf pages.

  • Due to the changing or insertion of a data record, the separators on the next higher level are no longer unique.

    The database system redistributes the separators.

Since the database system deletes and inserts leaf pages, this can cause some branches of the B* tree to have many more pages than other branches. Such an irregular distribution of the pages compromises the performance of the database system because more accesses are required to search for data in branches with many pages than in branches with only a few pages. The database system recognizes this irregular distribution and automatically balances the tree (no manual reorganization required).

Example

The following graphic shows how the database system changes the B* tree structure when an INSERT statement is executed.

This graphic is explained in the accompanying text.

B* Tree: Page Split After an INSERT Statement (Example)

In the ADDRESS table, the CITY column is defined as primary key.

A user uses an INSERT statement to insert a new data record with the value Albas for the CITY column. The data record is too large for the corresponding leaf page in the B* tree, however.

As a result, the database system performs the following actions:

  • The database system creates a new leaf page and inserts the new data record in the new leaf page. The entries on the new leaf page are sorted beginning with the new data record.

  • If necessary, it copies all data records that belong to the sort area of the new leaf page from the old leaf page to the new leaf page, and then deletes them from the old leaf page. This procedure is called page split.

    Then the database system updates the position lists and the respective pointers to the following pages within the leaf level.

  • The database system inserts the addresses and separator information for the new leaf page in the corresponding root or B* tree index page at the next higher level.

  • If the B* tree index page is too small, then the database system inserts a new B* tree index page at this index level.

  • If the root page at the top level is too small, then the database system creates a new B* tree index level.

More Information

Logical Access Structures

Example: INSERT Statement


-uUTL: Opening a Utility Session - SAP Documentation

Background documentation -uUTL: Opening a Utility Session

Several DBM commands require a utility session before they can be executed.

If you enter this DBM option additionally when logging on to Database Manager CLI, then a utility session is opened with the database specified.

If you additionally specify a database user's data, then the utility session is opened with this data. If you do not specify a user, the system uses the data of the first DBM operator (system default).

When you exit Database Manager CLI, the utility session is also ended.

Note the different meanings of the command with uppercase and lowercase spelling:

Use -uUTL to specify the user name and password of the database user.

Use -UUTL to specify the user key stored in the XUSER file of the database user.

When the utility session is opened, any database name stored under the specified XUSER key is ignored.

If you do not specify a user key with the -UUTL option, the Database Manager attempts to use the user data stored under the XUSER key c. It is therefore advisable to create an XUSER entry with the key name c and the data of the first DBM operator (see: Utilities, Creating of Changing XUSER Entires)

Prerequisites

  • The database user specified with the user name and password, or with a user key, has been created for the database specified under the DBM option -d.

  • If you want to execute administration commands, you need the AccessUtility server permission.

  • If you want to execute SQL statements, you need the AccessSQL server permission.

Structure

-uUTL [<database_user>,<database_user_password>] | -UUTL [<user_key>]

Options
Option | Description
<database_user> | Name of the database user
<database_user_password> | Password of the database user
<user_key> | User key

Example

Using -uUTL

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, open a utility session, and start the backup operation using the backup template DemoDataCompl.

Open the utility session with the data of the first DBM operator. Thus, enter the option for opening the utility session without parameters. Mark the DBM command for starting the backup operation with the option –c:

>dbmcli -u OLEG,MONDAY -d DEMODB -uUTL -c backup_start DemoDataCompl

OK

Returncode 0

Date 20060418

Time 00131245

Server GENUA

Database DEMODB

Kernel Version Kernel 7.6.00 Build 016-123-109-428

...

...

Using -UUTL

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, open a utility session, and execute a SELECT statement to display the contents of the users table.

Open the utility session with the data stored under the user key c. Thus, enter the option for opening the utility session without parameters. Mark the DBM command for starting the SELECT operation with the option -c:

>dbmcli -u OLEG,MONDAY -d DEMODB -UUTL -c db_execute SELECT * FROM users

OK

END

'DBM';'';'DBM';'ADMIN';'MULTIPLE';(null);(null);(null);'DEFAULT';'20060406';'00145004';'20060406';'00145004';'20060406';'00145004';'DEMODB';'GENUA';0;'NO';(null)

'DBADMIN';'';'DBADMIN';'SYSDBA';'MULTIPLE';(null);(null);(null);'DEFAULT';'20060406';'00145004';'20060406';'00145006';'20060406';'00145004';'DEMODB';'GENUA';10;'NO';(null)

'DBADMIN';'';'MONA';'DBA';'MULTIPLE';(null);(null);(null);'DEFAULT';'20060406';'00145012';'20060406';'00145012';'20060406';'00145012';'DEMODB';'GENUA';27;'NO';(null)

'DBADMIN';'';'DAVID';'RESOURCE';'MULTIPLE';(null);(null);(null);'DEFAULT';'20060413';'00133340';'20060413';'00133507';'20060413';'00133340';'DEMODB';'GENUA';29;'NO';(null)

More Information

Utilities, XUSER


Backing Up Data - SAP Documentation

Procedure documentation Backing Up Data

The application data of a database is stored in the data area (set of all data volumes). If the data area has been damaged, for example due to a hard disk error, you need data backups to restore the database. Therefore, regularly back up your data from the data area to data carriers. Note that in some cases you may need backed-up redo log entries in addition to the data backups to restore the database to the desired state.

Types of data backups:

  • Complete data backup: You back up the entire data area.

  • Incremental data backup: You back up all the data of the data area that has been changed since the last complete data backup (cumulative).

Note that you cannot start an incremental data backup during a complete data backup, and the other way round.

To speed up the backup process, you can back up data to several data carriers in parallel.

Prerequisites

  • You have defined a backup template.

    More information: Backup Templates and Data Carriers

  • If you plan to back up to several data carriers in parallel, first read Backing Up to a Group of Parallel Data Carriers.

  • If you plan to back up to a data carrier on a remote computer (not the database computer), additional preparations may be necessary. More information: Backing Up and Restoring Data with Remote Computers

Procedure

To back up data, use Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio, Backing up Data

  • Database Administration in CCMS, Scheduling a Data Backup

You can also use third-party backup tools. More information: Using Third-Party Backup Tools


Database Copy - SAP Documentation

Procedure documentation Database Copy

You can use database copies to test new applications, to check database structures without affecting operation or to set up standby databases. You also need a database copy to create a system copy of an SAP system.

Prerequisites

  • Source and target computers are compatible.

    The data carriers used for generating the database copy are compatible.

    In SAP liveCache systems, both the processor architectures and the operating systems of the source and target computer are identical, and the same database procedures are used on both computers.

    Compatible Processor Architectures for Database Copies

    IA32 32bit (all operating systems)

    IA64 64bit (all operating systems apart from HP-UX)

    x64 64bit (all operating systems)

    AIX 64bit

    Solaris on -SPARC 64bit

    Linux on Power 64bit

    HP-UX on IA64 64bit (HP_IPF)

    HP-UX on PA-RISC 64bit

    IA32 32bit (all operating systems)

    x

    x

    x

    IA64 64bit (all operating systems apart from HP-UX)

    x

    x

    x

    x64 64bit (all operating systems)

    x

    x

    x

    AIX 64bit

    x

    x

    x

    x

    x

    Solaris on SPARC 64bit

    x

    x

    x

    x

    x

    Linux on Power 64bit

    x

    x

    x

    x

    x

    HP-UX on IA64 64bit (HP_IPF)

    x

    x

    x

    x

    x

    HP-UX on PA-RISC 64bit

    x

    x

    x

    x

    x

    Note Note

    To execute a database copy on a non compatible processor architecture, use the Loader database tool.

    More information: Loader documentation

    End of the note.

  • The target database uses the same version of the database software as the source database.

    You can, however, use a copy of a source database of an older version as a target database of a more recent version, as long as the versions only differ by build number.

    Example Example

    Version of the source database: 7.6.00.09

    Version of the target database: 7.6.00.12

    End of the example.

  • The database parameters of the target database were defined with the same values as those of the source database, but each database has its own working directory.

Procedure

This graphic is explained in the accompanying text.

Database Copy

  1. Create a complete data backup of the source database.

    More information: Database Studio, Backing Up Data

  2. Either create a new database or initialize an existing database.

    Define the same values for the database parameters in the target database as in the source database (exception: run directory of the database).

    More information: Database Studio,

    • Defining Databases

    • Initializing Databases

  3. In the target database, create a backup template for a data backup that refers to the data carrier on which you backed up the source database.

    More information: Database Studio, Creating Backup Templates

  4. Import the complete data backup into the target database and transfer it to operating state ONLINE.

    Caution Caution

    Any existing database user data in the target database is overwritten with the database user data from the source database.

    End of the caution.

    More information: Database Studio, Restoring Databases

More Information

Glossary, System Copy

SAP Note 129352 (Homogeneous System Copy with MaxDB)

SAP Note 1014782 (FAQ: MaxDB System Copy)


Database System Administrator - SAP Documentation

Background documentation Database System Administrator

The database system administrator (also called SYSDBA) is the first user that you create when creating the database. There can only be one database system administrator per database.

The database system administrator is the user with the most authorizations in the database. The database system administrator has all the authorizations that a database user of the DBA database user class can have, plus the following properties:

  • The database system administrator is the owner of several system tables.

    When a database tool loads the system tables, it logs on to the database as database system administrator.

  • The database system administrator has owner rights over all database users. The database system administrator can create database users of any database user class and can also create DBM operators.

  • The database system administrator has all the server authorizations that a DBM operator can have. The database system administrator can manage databases.

The default name of the database system administrator is DBADMIN, in SAP systems SUPERDBA.

Properties
SQL User Properties of the Database System Administrator
SQL User Properties | Description
User Class | Database user class (SYSDBA)
Connection Mode | NOT EXCLUSIVE: Allows the database system administrator to open several database sessions simultaneously EXCLUSIVE: Prevents the database system administrator from opening database sessions simultaneously
Session Timeout | Length of time after which the database session is ended if the database system administrator is inactive
Cost Warning | Specifies the estimated SELECT cost value beyond which the user receives a warning. If a warning is issued, the user is asked whether he or she really wants to execute the SQL statement.
Cost Limit | Specifies the estimated SELECT cost value beyond which the SQL statement is not executed. This value must be greater than the Cost Warning value.
Default Code | DEFAULT: The default value for the code attribute is defined by the database parameter DefaultCodePage. ASCII: The default value for the code attribute is ASCII. UNICODE: The default value for the code attribute is Unicode.
DBM Operator Properties of the Database System Administrator
Property | Description
Disabled | Specifies whether the user account of the database system administrator is locked
Enable Second Password | You can define a second password for the database system administrator. This way you can temporarily allow other people to work with the database system administrator (for example, for support purposes) without the database system administrator having to reveal or change the original password.

Server authorizations (Server Rights) are authorizations for the DBM server program and hence for managing databases.

DBM Server Permissions
Permission | Required for Logon to a Database with Database Studio | Name in Database Manager CLI
Accessing an SQL session | Yes | AccessSQL
Access to Utility sessions | - | AccessUtility
Executing backups | - | Backup
Accessing database files (reading only) | Yes | DBFileRead
Displaying status information | Yes | DBInfoRead
Starting the database | - | DBStart
Stopping the database | - | DBStop
Managing the event dispatcher | Yes | EvtDispMgm
Using the Loader program | - | ExecLoad
Installation management | - | InstallMgm
Loading the system tables | - | LoadSysTab
Accessing database parameters (reading and writing; only those commands for changing parameters may be executed whose changes are checked against the default parameter file cserv.pcf) | - | ParamCheckWrite
Accessing database parameters (reading and writing; all commands can be executed, even those for directly changing the parameter file without the changes being checked by the system) | - | ParamFull
Accessing database parameters (reading only) | Yes | ParamRead
Restoring databases | - | Recovery
Managing the scheduler | - | SchedulerMgm
Scheduling DBM commands | - | Scheduling
Managing the shared memory | - | SharedMemoryAdmin
Executing operating system commands | - | SystemCmd
Managing DBM operators | - | UserMgm
Managing the Database System Administrator

You can use Database Studio, Database Manager CLI or a query tool to display or change the SQL user properties, DBM operator properties, and DBM server permissions of the database system administrator.

Database Studio, DBM Operators: Creating, Editing and Deleting

Database Manager CLI, user_get, user_getrights, user_put

SQL Reference Manual, ALTER USER Statement, ALTER PASSWORD Statement

More Information

Conventions for User Names and Passwords


How Databases Store Data and Log Entries - SAP Documentation

Background documentation How Databases Store Data and Log Entries

Physical View

When a database user changes data in the database, the database system first stores the changed data in the data cache in the working memory. Then it logs the changes in redo log entries in the log queue (also in the working memory).

More information: Working Memory Areas

In the following situations, the Pager tasks of the database system write the data changes from the data cache to the data area in permanent storage:

  • If the data cache is too full

    This depends on, among other things, the ratio between changed and read pages in the data cache.

  • At savepoints

In the following situations, the Log Writer task of the database system writes the redo log entries from a log queue to the log area:

  • If the log queue is full

  • If the transaction was completed with a COMMIT

  • At savepoints

Log pages in the log queue that were not full at the time of writing remain in the log queue. The system fills these log queues and writes them to the log volumes again during the next write process.

More information:

  • Savepoint

  • Volumes (Permanent Storage)

  • Data Area

  • Log Area

The unit that the database system uses to write information to and read it from the permanent storage is a page of 8 KB. A page corresponds to a certain number of operating system blocks. Pages are often the unit used to specify memory and disk space.

This graphic is explained in the accompanying text.

Working Memory and Permanent Storage

Logical View

The database system uses the following organizational structures to store data in the database:

  • Page chains

  • Pages in B* trees

More information: Logical Access Structures

This graphic is explained in the accompanying text.

Logical Access Structures

How Is Logical Information Assigned to Physical Pages?

The database system stores the assignment of logical data pages to physical addresses in the converter.

More information: Converter

More Information

How Databases Log Data Changes


Demo Database - SAP Documentation

Background documentation Demo Database

DEMODB is a database developed for demonstration purposes. It is used in the documentation to illustrate procedures and commands using examples.

Caution Caution

This demo database was developed for practice and testing purposes and contains several predefined demo database users with standard passwords and demo data. Do not use the demo database in a production system.

End of the caution.
Main Properties of the Demo Database

Property

Default Values

Database name

DEMODB

Name/password of the database system administrator

DBADMIN/SECRET

Name/password of a database user (with the permissions of a database administrator)

MONA/RED

Schema

HOTEL

Tables

CITY, CUSTOMER, HOTEL, ROOM, RESERVATION, EMPLOYEE

More information:

  • Objects in the HOTEL Schema

  • SQL Tutorial, Explanation of the Tables in the HOTEL Demo Schema

To use the demo database DEMODB, you first create a database and then load the demo data into it.

The demo data is used in the following tutorials:

  • Loader Tutorial (complete data record)

  • SQL Tutorial (simplified data record)

Process

You can use Database Studio, Database Manager CLI, or Installation Manager to create the DEMODB database and load the demo data.

More information:

  • Database Studio, Creating Databases

    To load the demo data, select the Load tutorial data option.

  • Database Manager CLI

  • Glossary, Installation Manager

You can also load the demo data into an existing database at a later stage using Database Studio or Database Manager CLI.

More information:

  • Database Studio, Loading Demo Data

  • Database Manager CLI, load_tutorial

The SQL Tutorial uses a simplified demo data set. If you want to work through the SQL Tutorial, do not load all the demo data, but follow the procedure described in SQL Tutorial, Demo Data for the SQL Tutorial.


Downgrading Dependent Software, Databases Exist - SAP Documentation

Procedure documentation Downgrading Dependent Software, Databases Exist

Databases already exist that refer to the higher software version. You want to downgrade the software exclusively used by the database (version-dependent software).

Procedure

Downgrade at Build Level

If you want to perform the downgrade at build level only, in most cases there will be no incompatibilities between the databases of the higher version and the software of the lower version.

However, there might have been implemented changes between the affected versions, which imply that the downgrade will not be successful.

To start a downgrade at build level, carry out the steps below for each of the affected databases:

 | Action | Command
1. | Switch to a Command Prompt, call Database Manager CLI, log on as a DBM operator and connect to the database. | >dbmcli -u <dbm_operator>,<dbm_operator_password> -d <database_name>
2. | Delete the database registration. | >db_unreg
3. | Exit Database Manager CLI. | >exit | release | quit | bye
4. | Uninstall the version-dependent software of the higher version. | >sdbuninst -i <installation_name>
5. | Install the desired lower version of the version-dependent software. | >sdbinst -i <installation_name> -path <installation_path>
6. | Re-register the database using DBMCLI. For that purpose, enter the installation path of the newly installed lower software version, the database name, and the user data of the First DBM operator of the old database. | >dbmcli -R <installation_path> db_reg DB <database_name> <first_dbm_operator>,<first_dbm_operator_password>
Downgrade with Change of Version

If the downgrade implies a change of version of the database software (minor or major version), contact technical support before you take any action.


Downgrading Client Software - SAP Documentation

Procedure documentation Downgrading Client Software

Use this procedure if you want go back to a lower version of the client software (build level, minor version or major version).

Procedure

Downgrading Client Software
Action | Command
Uninstall the client software to be downgraded. | >sdbuninst -i <installation_name>
Install the desired client software of the lower version. | >sdbinst -i <installation_name> -path <installation_path>


How Databases Log Data Changes - SAP Documentation

Background documentation How Databases Log Data Changes

The database system logs all transactions that change application data or the database catalog in log entries. The database system uses these log entries to roll back or repeat SQL statements, if necessary.

Example Example

A power outage has occurred. The data changes that the last transactions executed had only been stored by the database system in the data cache and had not yet been written to the data area with a savepoint. These data changes in the data cache (working memory) were lost due to the power outage and must therefore be repeated by the database system.

More information: Savepoint

End of the example.
When Does the System Write Which Log Entries?

  1. At the beginning of a transaction that will change data, the database system writes undo log entries (before images) for all database objects that are to be changed by the transaction to an undo log file in the data area.

    Each undo log entry in the undo log file receives an undo log sequence number, starting with 0.

  2. During the transaction the system continuously writes redo log entries (after images) to a log queue in the working memory. A transaction always writes to the same log queue.

  3. When the log queue is full, the log writer writes the redo log entries to the log area.

    When writing the redo log entries to the log area, the log writer gives each page a sequence number and a time stamp. Using the sequence numbers, the database system can later determine the definitive sequence of the pages in the log area. The timestamp is required by the database system for it to be able to restore the database to its state at a certain point in time.

    The time intervals between the individual write operations from the log queue to the log area are much smaller than the intervals between savepoints.

    Caution Caution

    If the log area is full, the database system locks all log queues and holds all transactions. Database users cannot perform any further data changes in the database. You then must back up redo log entries from the log area to data carriers so that the database system can again overwrite old redo log entries in the log area (exceptions: overwrite mode is activated for the log area, or automatic log backup is activated).

    End of the caution.

    This graphic is explained in the accompanying text.

    Transactions with Intermediate States (Example)

  4. At the end of the transaction, the following situations are possible:

    • The transaction is closed with a COMMIT.

      The database system writes the rest of the redo log entries (after images) from the log queue to the log area. Log pages in the log queue that were not full at the time of writing remain in the log queue. The system fills these log queues and writes them to the log area again during the next write process.

    • The transaction is retracted with a ROLLBACK.

      The database system uses the undo log files to roll back all data changes.

      Redo log entries already written to the log area or the log queue remain there and are ignored by the database system.

  5. The database system writes links to the undo log files of the completed transactions in history files. For performance reasons, there are always several history files open at the same time. The database system calculates the number of history files based on the general database parameter MaxUserTasks.

    At each savepoint, the database system backs up the updated history files as page chains to the data area.

    The garbage collects check the history files in regular intervals of a few seconds. After the garbage collectors have deleted the data that requires deletion, they then also delete the relevant undo log files. This means that the user task does not have to delete the undo log files, and the database system can inform the application sooner that the COMMIT/ROLLBACK command was executed.

More Information

Example: Restart

Example: Consistent View

Database Administration, Backing Up Log Entries


SAP liveCache Database Parameters - SAP Documentation

Background documentation SAP liveCache Database Parameters

Some database parameters only apply to SAP liveCache databases, for example MinRetentionTime, MaxRetentionTime, OmsHeapThreshold, OmsMaxHeapSize, OmsHeapBlockSize, OMSStreamTimeout, OmsSubHeaps and OmsVersionThreshold.

For more information about these database parameters, see the descriptions in the parameter group that these database parameters are assigned to:

  • General Database Parameters

  • Special Database Parameters

  • Support Database Parameters

More Information

SAP Note 719652 (Setting initial parameters for liveCache 7.5, 7.6, 7.7)

SAP Note 833216 (Parameter values as of liveCache Versions 7.5, 7.6 and 7.7)


Monitoring Databases - SAP Documentation

Procedure documentation Monitoring Databases

To recognize problems early and avoid disruptions to your production system, we recommend that you continuously monitor your database.

Procedure

Automatic Problem Notification

To receive automatic notifications of critical database states, you can use database events.

More information: Glossary, Event

Monitoring Free Space in the Data Area

If the data area is full, the database system stops all running transactions. This means that the database is unavailable for users. To avoid this, regularly check whether there is sufficient free space in the data area.

More information:

  • Database Studio, Displaying Information About the Data Area

  • Database Manager CLI, info

  • Database Administration in CCMS, Monitoring the Data Area

Monitoring Free Space in the Log Area

If the log area is full, the database system cannot write any further redo log entries to the log area and stops all running transactions. This means that the database is unavailable for users. To avoid this, regularly check whether there is sufficient free space in the log area.

More information:

  • Database Studio, Displaying Information About the Log Area

  • Database Manager CLI, info

  • Database Administration in CCMS, Monitoring the Log Area

Monitoring the Hit Rate for Access to the Caches

The hit rate is calculated as the following ratio:

This graphic is explained in the accompanying text.

The performance of the database system is best if the database system can retrieve as much information as possible from the caches (high hit rate), since access to the hard discs is considerably slower than access to the working memory.

More information:

  • Database Studio, Displaying Information About Caches (Working Memory Areas)

  • Database Manager CLI, Info

  • Database Administration in CCMS, Caches

Monitoring Backups

Backups can fail for various reasons.

Example Example

When you created the backup template, you specified the directory the backup file is to be written to. At the time of the backup, though, that directory no longer exists and the backup therefore fails.

End of the example.

The backup history displays which backups have been carried out and whether they were successful. Check the backup history regularly, in particular if you use the automatic log backup function or have automated the backup process using scripts.

Regularly check whether your backups are intact.

More information:

  • Database Studio,

    • Displaying the Backup History

    • Checking Backups

  • Database Manager CLI,

    • backup_history_list

    • recover_check

  • Database Administration in CCMS, DBA History

Monitoring Database Activities

Monitor the following database activities:

  • I/O activity

  • Locking activity

  • Logging activity

More information:

  • Database Studio, Displaying the Database Properties

  • Database Manager CLI, info

  • Database Administration in CCMS, Activities Overview

Monitoring the Number of Database Sessions

If the maximum number of database sessions has been reached, no further users can log on to the database. For this reason, monitor the number of database sessions.

More information:

  • Database Studio, Editor: Administration

  • Database Manager CLI, info

  • Database Administration in CCMS, User Tasks

Monitoring Security-Relevant Activities

More information:

SAP MaxDB Security Guide, Checking Log Files for Failed Logon Attempts

More Information

  • Log Files

  • Troubleshooting

  • Analyzing Database Performance


CHAR[ACTER] - SAP Documentation

Object documentation CHAR[ACTER]

The data type (data_type) CHAR[ACTER] defines an alphanumeric column. Specification of length attribute n is optional. If no other length attribute is specified, then it is assumed that n=1.

CHAR[ACTER] [(n)]: 0<n<=8000

CHAR[ACTER] [(n)] UNICODE: 0<n<=4000

The database system determines, in accordance with n, whether the values in the column are stored with a fixed or variable length. If you want to store the values in a variable length regardless of the value of n, you must use VARCHAR.

The data type CHAR[ACTER] is specified in the column definition, with a code attribute, if required.

More Information

Column Definition (column_definition)


BOOLEAN - SAP Documentation

Object documentation BOOLEAN

The data type (data_type) BOOLEAN is defined for the column. A BOOLEAN value can only have the two statuses TRUE and FALSE and the NULL value. A BOOLEAN value can only be compared to other BOOLEAN values.

The data type BOOLEAN is specified during column definition.

More Information

Column Definition (column_definition)


FIXED - SAP Documentation

Object documentation FIXED

The data type (data_type) FIXED(p,s) defines a fixed point number (fixed_point_literal). A column is defined that has a fixed point number with precision p and s number of decimal places (0<p<=38, s<=p). If no s is specified, it is assumed that there are 0 decimal places.

The data type FIXED is specified during column definition.

More Information

Column Definition (column_definition)

FIXED(a,p,s)


DATE (Date Value) - SAP Documentation

Object documentation DATE (Date Value)

The data type (data_type) DATE defines an alphanumeric column in which date values can be stored.

A date value is a special character string. A date value can be compared to other date values, numbers and to character strings with the code attributes ASCII and UNICODE.

The data type DATE is specified during column definition.

More Information

  • Character String

    Number

  • Code Attribut

  • Column Definition (column_definition)

  • Date and Time Format (datetimeformat)


Code Attribute - SAP Documentation

Object documentation Code Attribute

For column values with the following data types, a code attribute can also be entered, if required: CHAR[ACTER], VARCHAR, CLOB

A code attribute defines the sort sequence to be used for comparing values.

Code Attribute | Column Values
No code attribute specified | The column values are stored using the database system's default code attribute. You can change the default code attribute using the special database parameter DefaultCodePage.
ASCII | The column values are stored in ASCII.
BYTE | The column values are stored as-is, that is, they are not converted by the database system.
UNICODE | The column values are stored in Unicode.

Defining a Code Attribute

To define a code attribute, proceed as follows:

  • For column values with the data types CHAR[ACTER], VARCHAR and CLOB, a code attribute can also be entered in the column definition (column_definition), if required.

  • If you do not specify a code attribute, the code defined in the database system is used. The code can be defined for specific users or globally using the following options:

    User specification: The code can be defined for specific database users using the corresponding SQL statements (See: CREATE/ALTER USER Statement or CREATE/ALTER USERGROUP Statement).

    Global specification: The code can be defined globally when the database system is installed, using the special database parameter DefaultCodePage.

    The code defined for a database user overrides the code specified globally in the database system.

Changing a Code Attribute

You can change a code attribute. If you change the code attribute from ASCII to UNICODE, you should note that the column value cannot exceed the length of the column. You can only change the code attribute from UNICODE to ASCII if all the data can be converted into ASCII values.

More Information

Data Type (data_type)

ALTER TABLE Statement (alter_table_statement)


Uninstalling in the Command Line - SAP Documentation

Procedure documentation Uninstalling in the Command Line

Use the SDBUNINST uninstallation program to uninstall some or all of the software components, taking into account the dependencies between them.

In the uninstallation command, place any package names of software components that contain spaces in double quotation marks.

The SDBUNINST program can be used to uninstall the database software on Unix, Linux, and Microsoft Windows. It is contained in the database software of all versions ≥ 7.3.00.33.

You can uninstall database software of versions ≥ 7.2 using SDBUNINST.

Overview of the Options for the SDBUNINST program

Note Note

If you are working on the Linux operating system and have used the Red Hat Package Manager (rpm package) to install the database software on your computer, you must use this program to uninstall the software.

End of the note.

Prerequisites

  • You have administrator rights for your computer.

  • There are one or more versions of the database software installed on your computer. At least one of them is ≥ 7.3.00.33, and therefore contains the SDBUNINST program.

Procedure

  1. On Unix or Linux: Open a root shell and log on as the user root.

    On Microsoft Windows: Open a command prompt and log on as a member of the Administrators group.

  2. Call Database Manager CLI in session mode, log on as a DBM operator and connect to the database assigned to the installation directory in which you want to uninstall software:

    >dbmcli -d <database_name> -u <dbm_operator>,<dbm_operator_password>

  3. Stop the database:

    >db_stop

  4. Delete the database:

    >db_drop

  5. Exit Database Manager CLI:

    >exit

    Repeat steps 2 to 5 in succession for each database assigned to the installation directory in which you want to uninstall software.

  6. Execute the uninstallation program with the required option:

    >sdbuninst <option>

    Specify the installation to be uninstalled indicating the -i <installation name> or the -path <installation_path> option (see: Overview of Options for the SDBUNINST Program).

    If you want to uninstall all software components of all SAP MaxDB versions on your computer, specify the –all option; otherwise, specify your chosen component with the -package option. Place any package names of software components that contain spaces in double quotation marks.

    If a particular package has been installed in several versions, a list of the versioned packages with their IDs is displayed by the system. Specify a package ID and confirm.

Result

The specified database software was uninstalled.


TRUNC(a,n) - SAP Documentation

Function documentation TRUNC(a,n)

TRUNC(a,n) is an arithmetic function with the following result (for the expressions a and n that are numbers):

TRUNC(a) – Truncation of the decimal places from a

TRUNC(a,n) – Truncation of the number a after n places after the decimal point

TRUNC(a,-n) – Setting n places of the number a before the decimal point to 0

TRUNC(a,n)
a, n | Result of the TRUNC(a,n) Function
n>0 | Number a that is truncated n places after the decimal point
n=0 | Integer component of a
n<0 | Number a that is truncated s places before the decimal point
n not specified | As with n=0
n is not an integer | The integer component of n is used and the result is as with n>0, n=0, or n<0
a is a floating point number | Floating point number
a is a fixed point number | Fixed point number
a is a NULL value | NULL value
a is a special NULL value | Special NULL Value


SIGN(a) - SAP Documentation

Function documentation SIGN(a)

SIGN(a) is an arithmetic function, which provides information about the sign of an expression a (a is a number).

SIGN(a)
a | Result of the SIGN(a) Function
a<0 | -1
a=0 | 0
a>0 | 1
a is a NULL value | NULL value
a is a special NULL value | Special NULL Value


SQRT(a) - SAP Documentation

Function documentation SQRT(a)

SQRT(a) is an arithmetic function which calculates the square root of the expression a (a is a number).

SQRT(a)
a | Result of the SQRT(a) Function
a>0 | Square root of a
a=0 | 0
a<0 or a is a NULL value | NULL value
a is a special NULL value | Special NULL value


TIMEDIFF(t,s) - SAP Documentation

Function documentation TIMEDIFF(t,s)

TIMEDIFF(t,s) is a time function that calculates the time value between a start and end time.

t and s values: When used in a function, the expressions t and s must supply a time value, a time stamp value or an alphanumeric value that matches the current time or time stamp format. The arguments must have the same data type, in other words, be either a time value or a time stamp value.

TIMEDIFF(t,s)
t, s | Result of the TIMEDIFF(t,s) Function
Positive difference between t and s | Time value
t or s are time stamp values for alphanumeric values that match the current time stamp format | Dates in the time stamp value are used to calculate TIMEDIFF(t,s)
Difference of more than 9999 hours | Number of hours modulo 10000
t or s is a NULL value | NULL value


TIMESTAMP(a,b) - SAP Documentation

Function documentation TIMESTAMP(a,b)

TIMESTAMP(a,b) is a function (Extraction), which creates a time stamp value consisting of a date and time value and 0 microseconds from the expressions a and b.

TIMESTAMP(a,b)
a, b | Result of TIMESTAMP(a,b) Function
TIMESTAMP(a) | a must be a time stamp value or an alphanumeric value that matches the current time stamp format. The result is this time stamp value.
TIMESTAMP(a,b) | a must be a date value and b a time value (or alphanumeric value that matches the current format for date and time values). The result is a time stamp value calculated from a date value, time value, and 0 microseconds.
a or b is a NULL value | NULL value


TIME(a) - SAP Documentation

Function documentation TIME(a)

TIME(a) is a function (extraction), which creates a time value from the expression a.

TIME(a)
a | Result of TIME(a) Function
a is a time value or an alphanumeric value that matches the current time format | This time value
a is an alphanumeric value that does not match the current time format | Error message
a is a time stamp value or an alphanumeric value that matches the current time stamp format | The time value that is part of the time stamp
a is a NULL value | NULL value


SOUNDEX(x) - SAP Documentation

Function documentation SOUNDEX(x)

SOUNDEX(x) is a string function that converts a character string x (string specification) to a format that is generated by the Soundex algorithm. Only expressions that produce an alphanumeric value are permitted as string specifications.

This representation can be used if the user does not know the exact spelling of the search term.

SOUNDEX(x)
x | Result of the SOUNDEX(x) function
SOUNDEX(x) | The Soundex algorithm is used. The result is a value with the data type CHAR(4).
x is a NULL value | NULL value

Example Example

The SOUNDS predicate is often applied to a column x. Since inversions cannot be used here, it is advisable for performance reasons to define an additional table column x1 with the data type CHAR(4), in which the result of SOUNDEX(x) is then inserted.

An SQL statement should then refer to the x1 column. In other words, use x1 = SOUNDEX(<string_literal>) instead of x SOUNDS LIKE <string_literal>.

End of the example.


SUBSTR(x,a,b) - SAP Documentation

Function documentation SUBSTR(x,a,b)

SUBSTR(x,a,b) is a string function that outputs part of the character string x (string specification of length n). Only expressions that produce an alphanumeric value are permitted as string specification x. LOB values are allowed. If x is a LOB value, you must specify length b of the desired subarea.

a and b are expressions. The value b may not be larger than the column definition for a CHAR column.

SUBSTR(x,a,b)
x, a, b | Result of the SUBSTR(x,a,b) Function
SUBSTR(x,a,b) | Part of the character string x that starts at the ath character and is b characters long.
SUBSTR(x,a) | SUBSTR(x,a,n-a+1) supplies all of the characters in the character string x from the ath character to the last (nth) character.
b is an unsigned integer | SUBSTR(x,a,b) b can also have a value that is greater than (n-a+1).
b is not an unsigned integer | SUBSTR(x,a,b) b may not exceed the value (n-a+1) .
b>(n-a+1) | SUBSTR(x,a) As many blanks (code attribute ASCII, UNICODE) or binary zeros (code attribute BYTE) are appended to the end of this result as are needed to give the result the length b.
x, a or b is a NULL value | NULL value

Example

SQL Tutorial, Functions, Changing character strings


TRIM(x,y) - SAP Documentation

Function documentation TRIM(x,y)

TRIM(x,y) is a string function that removes all of the characters specified in the character string y from the start of the character string x. The result of TRIM(x,y), therefore, starts with the first character that was not specified in y.

Additionally, TRIM(x,y) removes the spaces from the end of the character string x (code attribute ASCII, UNICODE) and then all characters specified in the character string y. The result of TRIM(x,y), therefore, ends with the last character that was not specified in y.

TRIM(x,y)
x, y | Result of the TRIM(x,y) Function
TRIM(x) | Spaces only (code attribute ASCII, UNICODE) are removed from x.
x is a NULL value | NULL value

Example

SQL Tutorial, Changing Character Strings

More Information

LTRIM(x,y)

RTRIM(x,y)


TRANSLATE(x,y,z) - SAP Documentation

Function documentation TRANSLATE(x,y,z)

TRANSLATE(x,y,z) is a string function which replaces the ith character in the character string y with the ith character in the character string z within the character string x. The character strings y and z must have the same length.

x, y and z are string specifications. Only expressions that produce an alphanumeric value are permitted as string specifications.

TRANSLATE(x,y,z)
x, y, z | Result of the TRANSLATE(x,y,z) Function
x is a NULL value | NULL value
y is a NULL value | x remains unchanged

Example

SQL Tutorial, Changing Character Strings

More Information

REPLACE(x,y,z)


YEAR/MONTH/DAY(t) - SAP Documentation

Function documentation YEAR/MONTH/DAY(t)

YEAR(t), MONTH(t) and DAY(t) are functions (extraction) that extract the year, month and day from the specified date or time stamp value.

Value t: When used in a function, the expression t must supply a date, a time stamp, or an alphanumeric value that matches the current date or time stamp format.

YEAR/MONTH/DAY(t)
t | Result of the Function
YEAR(t), MONTH(t) or DAY(t) | Numeric value (year, month, day)
t is a NULL value | NULL value


CONCAT(x,y) - SAP Documentation

Function documentation CONCAT(x,y)

A concatenation (CONCAT(x,y), x||y or x&y) is a string function that returns the following results for the character string x (string specification of length n) and the character string y (string specification of length m):

Concatenation
x, y | Result of the Concatenation
CONCAT(x,y), x||y or x&y | x and y are concatenated to a character string with the length n+m. If a character string originates from a column, its length is determined without taking trailing blanks into account (code attribute ASCII, UNICODE) or binary zeros (code attribute BYTE).
x or y is a NULL value | NULL value

Only expressions that produce an alphanumeric value are permitted as string specifications.

Columns with the same code attribute can be concatenated. Columns with different code attributes (ASCII and UNICODE) can be concatenated together and with date, time and time stamp values.

Example

SQL Tutorial, Functions, Changing character strings


UPPER/LOWER(x) - SAP Documentation

Function documentation UPPER/LOWER(x)

UPPER(x) and LOWER(x) are string functions that convert a character string x (string specification) to uppercase/lowercase letters. Only expressions that produce an alphanumeric value are permitted as string specifications.

UPPER/LOWER(x)
x | Result of the UPPER(x) or LOWER(x) Function
x is a NULL value | NULL value

Example

SQL Tutorial, Converting Values


VALUE(x,y,...) - SAP Documentation

Function documentation VALUE(x,y,...)

VALUE(x,y,...) is a special function that can be used to replace NULL values with a non-NULL value.

The arguments (expressions) of the VALUE function must be comparable. The expressions are evaluated one after the other in the specified order.

VALUE(x,y,...)
x, y, ... | Result of the VALUE(x,y,...) Function
One of the arguments is a non-NULL value | The first non-NULL value that occurs
Each argument is a special NULL value | Special NULL value
Each argument is a NULL value | NULL value

Example

SQL Tutorial, Converting Values


Functions: Overview - SAP Documentation

Background documentation Functions: Overview

List of function names and value specifications:

ABS | ACOS | ADDDATE
ADD_MONTHS | ADDTIME | ALL
ALPHA | ASCII | ASIN
ATAN | ATAN2 | AVG
CASE | CEIL | CHAR
CHR | CONCAT | COS
COSH | COT | COUNT
CURRENT_SCHEMA{*} | CURRVAL{*} |
DATE | DATE{*} | DATEDIFF
DAY | DAYNAME | DAYOFMONTH
DAYOFWEEK | DAYOFYEAR | DECODE
DEFAULT{*} | DEGREES | DISTINCT
EXCEPT | EXP | EXPAND
FIXED | FLOAT | FLOOR
GREATEST |  |
HEX | HEXTORAW | HOUR
INDEX | INITCAP | INTERSECT
INTTORAW |  |
LEAST | LENGTH | LFILL
LIMIT | LN | LOG
LOWER | LPAD | LTRIM
MAKEDATE | MAKETIME | MAPCHAR
MAX | MICROSECOND | MIN
MINUTE | MONTH | MONTHNAME
NEXTVAL{*} | NOROUND | NULL{*}
NUM |  |
PI | POWER |
RADIANS | REPLACE | RFILL
ROUND | RPAD | RTRIM
SECOND | SIGN | SIN
SINH | SOUNDEX | SQLMODE
SQRT | STAMP{*} | STDDEV
SUBDATE | SUBSTR | SUBTIME
SUM | SYSDBA{*} |
TAN | TANH | TIME
TIME{*} | TIMEDIFF | TIMESTAMP
TIMESTAMP{*} | TIMEZONE{*} | TOP
TRANSACTION{*} | TRANSLATE | TRIM
TRUE{*} | TRUNC |
UID{*} | UNION | UPPER
USER{*} | UTCDATE{*} | UTCDIFF{*}
VALUE | VARIANCE |
WEEKOFYEAR |  |
YEAR |  |
|| | & |

The names flagged with {*} relate to value specifications.

More Information

  • Function (function_spec)

    Set Function (set_function_spec)

    Name of a Database Function (dbfunction_name)

  • Specifying Values (extended_value_spec)

  • SQL Syntax

  • SQL Reference Manual


-n: Name of the Database Computer - SAP Documentation

Background documentation -n: Name of the Database Computer

With this option you can access a remote computer in order to create a new database there, or to connect to an existing database there.

Enter the name of the corresponding computer together with this option.

Prerequisites

  • An SAP MaxDB X server is running on the remote database computer (status: Started).

    For more information, see Global Listener and X Servers.

  • To create a database on a remote computer, you require an operating system user on that computer. This user needs to have the right “logon as batch job”.

    Note Note

    To find out how you can assign this right to a user, see your operating system documentation.

    End of the note.

Structure

-n <database_computer>

Options
Option | Description
<database_computer> | Name of the database computer

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on the remote computer GENUA, and display the operational state of the database:

>dbmcli -u OLEG,MONDAY -d DEMODB -n GENUA db_state

OK

ONLINE


-o: Name of the Output File - SAP Documentation

Background documentation -o: Name of the Output File

Use this option to define the path and the name of the file where all the Database Manager output is to be written.

Structure

-o <file_name>

Options
Option | Description
<file_name> | Name and path of the output file

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, execute the DBM commands contained in the input.dbm input script in the C:\test\scripts directory, and output the answers to the DBM commands in the C:\test\outfiles\output.txt file:

>dbmcli -u OLEG,MONDAY -d DEMODB -i C:\test\scripts\input.dbm -o C:\test\outfiles\output.txt

OK


-t: Name of the Log File - SAP Documentation

Background documentation -t: Name of the Log File

Use this option to specify a DBM command to be executed and to get the answer to this command displayed on the command line and also logged in the specified file. Any existing content of the file is retained.

Structure

-t <file_name>

Options
Option | Description
<file_name> | Name and path of the log file

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, get the reply displayed, and save the command line sent to Database Manager along with the Database Manager’s answer in the log.txt log file in the <user_home>\logfiles\ directory:

>dbmcli -u OLEG,MONDAY -d DEMODB -t <user_home>\logfiles\log.txt db_state

OK

ONLINE


-uSQL: Opening an SQL Session - SAP Documentation

Background documentation -uSQL: Opening an SQL Session

Several DBM commands require an SQL session before they can be executed.

If you specify this DBM option additionally when logging on to Database Manager CLI, then the DBM command for opening an SQL session with the specified database is implicitly executed (see: sql_connect). However, opening the SQL session is successful only if you have the server permission required to execute the sql_connect command.

If you additionally specify a database user's data, then the SQL session is opened with this data. If you do not specify a database user, the system uses the data of the first DBM operator (system default).

When you exit Database Manager CLI, the SQL session is also ended.

Note the different meanings of the command with uppercase and lowercase spelling:

Use -uSQL to specify the name and the password of the database user

Use -USQL to specify the user key stored in the XUSER file of the database user

When the SQL session is opened, any database name stored under the specified user key is ignored.

Prerequisites

The database user specified with the user name and password, or with a user key, has been created for the database specified under the DBM option -d. Otherwise the DBM command fails.

Structure

-uSQL [<database_user>,<database_user_password>] | -USQL <user_key>

Options
Option | Description
<database_user> | Name of the database user
<database_user_password> | Password of the database user
<user_key> | User key

Example

Using -uSQL

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, and execute the SQL statement to display the content of the columns database table as the database user MONA with the password RED:

>dbmcli -u OLEG,MONDAY -d DEMODB -uSQL MONA,RED db_execute SELECT * FROM columns

OK

CONTINUE

'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'ALLOCATOR';'OPT';'CHAR';'ASCII';40;(null);'YES';'SEL+';(null);(null);(null);(null);1;(null);2;'20060406';'00145007';'20060406';'00145007';'SYSTEM';(null)

'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'USED_BYTES';'OPT';'FIXED';'';20;0;'YES';'SEL+';(null);(null);(null);(null);2;(null);3;'20060406';'00145007';'20060406';'00145007';'SYSTEM';(null)

...

...

Using -USQL

Call Database Manager CLI, logon as the operator OLEG with the password MONDAY, connect to the DEMODB database, and execute the SQL statement to display the content of the columns database table for the database user registered under the user key MOKEY:

>dbmcli -u OLEG,MONDAY -d DEMODB -USQL MOKEY db_execute SELECT * FROM columns

OK

CONTINUE

'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'ALLOCATOR';'OPT';'CHAR';'ASCII';40;(null);'YES';'SEL+';(null);(null);(null);(null);1;(null);2;'20060406';'00145007';'20060406';'00145007';'SYSTEM';(null)

'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'USED_BYTES';'OPT';'FIXED';'';20;0;'YES';'SEL+';(null);(null);(null);(null);2;(null);3;'20060406';'00145007';'20060406';'00145007';'SYSTEM';(null)

...

...

More Information

Utilities, XUSER


-uSRV: Opening a Service Session - SAP Documentation

Background documentation -uSRV: Opening a Service Session

Several DBM commands require a service session before they can be executed.

If you specify this DBM option additionally when logging on to Database Manager CLI, then the DBM command for opening an service session is implicitly executed (see: service_connect).

When you exit Database Manager CLI, the service session is also ended.

Structure

-uSRV

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, start a service session, and read the parameter file of this database from the backup created with the backup template DemoDataCompl:

>dbmcli -u OLEG,MONDAY -d DEMODB –uSRV recover_config DemoDataCompl

OK


Upgrade if Several Databases Use the Software Installation - SAP Documentation

Procedure documentation Upgrade if Several Databases Use the Software Installation

Use the SDBINST program for an upgrade if several databases use the software of the same installation path. Use this procedure to upgrade one or more of these databases.

Within the upgrade process, first install the new version of the database software additionally to the old one, and then upgrade one or more database/s, which use the old software version, to the new software version. At the end of the upgrade process, both software versions exist in parallel on the database computer. Depending on the number of databases you have upgraded, you may have databases still using the old software version and upgraded databases now using the new software version.

Before starting the SDBINST program on any operating system, stop all databases that use the software installation to be upgraded (not only those you plan to upgrade to the new version).

Recommendation Recommendation

If you have changed parameters of a database to be upgraded after the last restart , we also recommend that you first restart that database. This will prove that your database is still restartable and that no inconsistent changes have been made. Only then start the upgrade process to make sure that it does not fail because of parameter inconsistencies.

End of the recommendation.

Prerequisites

  • The databases to be upgraded are in a defined operational state - in other words, no errors may exist.

  • You have a backup template for a complete data backup for each of the databases to be upgraded.

  • For the SAP MaxDB communication servers the following prerequisites apply:

    For Source Versions < 7.8

    On Unix and Linux

    On Windows

    Source Version < 7.5

    Stop the X server (V server process) and all databases before the installation or update (see: Utilities, Stopping the Global Listener and/or Installation-Specific X Servers). Note that this interrupts the communication between the clients and all local databases.

    If the independent software is to be changed, stop the X server before the installation or update.

    Note that as per the system default, the independent software is updated only if the target version of the global software is higher than the source version.

    If the target version of the independent software is lower than the source version, the update process will not change the independent software.

    Source Version ≥ 7.5

    Stopping the X server and all the databases is not necessary.

    From this version the X server software supports an update of the database software while the X server is running.
    For Source Version ≥ 7.8

    On Unix and Linux

    On Windows

    From Source Version ≥ 7.8

    Stopping the global listener is not necessary.

    If the global software is to be changed, stop the global listener before the installation or update (see: Utilities, Stopping the Global Listener and/or Installation-Specific X Servers).

    Note that as per the system default, the global software is updated only if the target version of the global software is higher than the source version.

    If the target version of the global software is lower than the source version, the update process will not change the global software unless you explicitly specify the -update_global option.

Procedure

Caution Caution

To ensure the security of your data in the case of a possible error during the upgrade process, we strongly recommend that you perform a complete data backup of the database in the ADMIN operational state as part of the upgrade process. This causes additional downtime while the backup is performed. However, if an error occurs, the data backup produced in this way can be imported into a database of the start or target version.

Alternatively, you can perform a complete data backup in the ONLINE operational state before starting the upgrade process. However, in the event of an error, you can use this backup to recover the start version of the database only. It is therefore not equivalent to a data backup performed in the ADMIN operational during the upgrade process.

End of the caution.

  1. Install the target version software (zip file or tgz package) using SDBINST in the installation path <dependent_path_new> parallel to the installation path of the old software version (in other words, without overwriting the old software version).

  2. Perform the following series of steps for each of the databases to be upgraded:

    Action

    Command

    1.

    Call Database Manager CLI, log on as a DBM operator and connect to the database to be upgraded.

    >dbmcli –d <database_name> -u <dbm_operator>,<dbm_operator_password>

    2.

    Transfer the database to the OFFLINE operational state.

    Note Note

    Use the DBM command db_offline, and not db_stop. This is the only way of making sure that you can restart the database if an error occurs.

    End of the note.

    >db_offline

    3.

    Transfer the database to the ADMIN operational state.

    >db_admin

    4.

    For databases of the start version 7.5, open a utility session.

    For databases of the start version ≥ 7.6, open a database session.

    >util_connect

    >db_connect

    6.

    Perform a complete data backup in the current operational state ADMIN.

    >backup_start <medium_name>

    7.

    Exit the utility session or the database session, respectively.

    >util_release

    or

    db_release

    8.

    Transfer the database to the OFFLINE operational state.

    >db_offline

    9.

    Assign the database to the new software version.

    >db_reg –R <installation_path_new>

    10.

    Exit Database Manager CLI.

    >exit | release | quit | bye

    11.

    Call Database Manager CLI again, log on as a DBM operator and connect to the database to be upgraded (session mode).

    >dbmcli –d <database_name> -u <dbm_operator>,<dbm_operator_password>

    12.

    Start the upgrade of the database parameters.

    >param_checkall

    13.

    Restart the database. The database catalog is upgraded from source version to the target version.

    >db_online

    14.

    Load the system tables.

    >load_systab

Result

A message is displayed indicating that the procedure has been successful.

You have upgraded your database from the source version of the database software to the target version.

The relevant database is now in the ONLINE operational state.


-uk: User Key - SAP Documentation

Background documentation -uk: User Key

Use this option to specify the user key under which the user data is to be stored in the XUSER program.

Recommendation Recommendation

We recommend that you use the XUSER tool directly instead of using this DBM option.

End of the recommendation.

Structure

-uk <user_key>

Example

Log on to Database Manager CLI (without explicitly specifying an operator, thus the data of the first DBM operator is used), simultaneously log on to the XUSER program as the database user SAPR3 with the password SAP (stored under the DEFAULT user key), and create the user key Newkey entering the data of the user DAVID with the password BLUE:

>dbmcli -ux SAPR3,SAP -us DAVID,BLUE -uk Newkey

OK


Archiving Backup Files - SAP Documentation

Procedure documentation Archiving Backup Files

If automatic log backup is switched on, the database system continuously writes redo log entries to backup files (in chronological order). Thus the number of backup files on the hard disk keeps growing until there is no more storage space available.

If no more storage space for log backups is available on the hard disk, then after some time, no more storage space for redo log entries is available in the log area of the database either. This is because old redo log entries can only be overwritten by the system with new entries after they have been backed up. Exception: Overwrite mode for the log area is activated; but this is not recommended for production systems. If the database system cannot write any further redo log entries to the log area, it stops all running transactions. This means that the database is unavailable for users.

Therefore you need to ensure that there is always enough space available for log backups by moving your backup files to other data carriers (archiving).

Procedure

Archiving Backup Files Manually

  1. Locate the backup files.

    More information: Backup Templates and Data Carriers

    Example Example

    You have defined the following backup template and activated automatic log backup:

    Example of a Backup Template for a Log Backup

    Property

    Value

    Name of the backup template

    DEMODB_LOG

    Backup type

    LOG

    Data carrier type

    FILE

    Data carrier (Device/File)

    DEMODB_MYLOG

    Note that i you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory.

    Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_LOG

    Size of data carrier

    No restriction (blank or 0)

    Block size

    8 pages

    Overwritable

    No

    Your backup files are located in the run directory of the database:

    DEMODB_MYLOG.001

    DEMODB_MYLOG.002

    DEMODB_MYLOG.003

    DEMODB_MYLOG.004

    DEMODB_MYLOG.005

    End of the example.

  2. Caution Caution

    If automatic log backup is activated, the system backs up new log entries to the newest backup file even during archiving. To ensure that you only archive complete backup files, exclude the newest backup file from archiving.

    End of the caution.

    To archive the backup files, use operating system commands to move the oldest backup files to another data carrier.

Archiving Backup Files Automatically

If you use third-party backup tools, you can automate the archiving of backup files using Database Manager CLI or CCMS (only in SAP systems).

More information:

  • Database Manager CLI, Other Commands for Backups

  • Database Administration in CCMS, Archiving Backup Files


Backup Templates and Data Carriers - SAP Documentation

Procedure documentation Backup Templates and Data Carriers

Before you can back up data and log entries to a data carrier, you must define backup templates. In the properties of a backup template you specify, among other things, the backup type, and the type of data carrier that you want to use. You can use the same backup template more than once.

Backup Template Properties

Property

Description

Name

The name of the backup template has no influence on the name of the backup created later using this backup template.

Backup Type

  • Complete data backup

  • Incremental data backup

  • Log backup

Device Type

Data carrier type

  • File

  • Tape

  • Pipe

    Note Note

    For automatic log backups, you cannot use pipes.

    End of the note.

Backup Tool

Only if you are using a third-party backup tool

Specify the backup tool:

  • BACK: Backint for Oracle or Backint for MaxDB

  • NSR: Networker

  • TSM: TSM

More information: Database Administration, Using Third-Party Backup Tools

Device/File

Depending on the backup type enter the required information:

  • Name of the tape device in the operating system

  • Path and file name of the file in the file system

    Caution Caution

    If you do not enter a full path here, the system stores your backup in the run directory of the database.

    More information: Glossary, Run Directory

    End of the caution.

  • Path and name of the pipe

We recommend that you do not use the same data carrier for several databases.

For log backups to files, the system adds a sequence number to the name of each new backup file. It assigns the numbers sequentially as long as the history of the log backups is not interrupted. If the log backup history is interrupted (for example after the database was initialized), the system starts numbering at 001 again.

It also uses sequential numbers if you carry out multiple log backups for one database onto different data carriers, and thus to files with different file names.

Example Example

LogUri.001

LogKai.002

LogOleg.003

LogUri.004

LogUri.005

End of the example.

If automatic log backup is switched on, the system stores all backup files under the same file name using a sequence number.

Example Example

DEMODB_MYLOG.001

DEMODB_MYLOG.002

DEMODB_MYLOG.003

DEMODB_MYLOG.004

DEMODB_MYLOG.005

End of the example.

You can also back up to data carriers on remote computers. More information: Database Administration, Backing Up and Restoring Data with Remote Computers

Size

There is no size restriction in default mode.

The size of log backups to files is calculated as the size of a log segment (general database parameter AutoLogBackupSize) plus the space required by system information.

More information: Database Administration, General Database Parameters

Compressed

For backup templates of the FILE and PIPE types only

Specifies whether the backup is compressed

Overwrite

For backup templates of the FILE type only

Specifies whether the backup file can be overwritten

We recommend that you do not overwrite a backup with the backup that immediately follows it. Always keep an older version of the backup.

Block Size

Block size that the system uses to write backups to the data carrier.

Autoloader

Select this option if you want to use a tape device with an automatic tape loader.

OS Command

For backup templates fo the TAPE type only

Operating system command for backing up to tape devices

Encryption

Prerequisites: license for SAP Cryptolib (only available in SAP systems), private-public key pair has been created using sapgenpse

  • Algorithm

    Available encryption algorythms: DES, AES

  • Owner

    Private key owner (see X.509 certificate)

For more information, see Encryption.

The following table shows the different types of data carriers you can use for data and log backups.

Data carrier types

Type

Suitable for the Following Backup Types

Comments

FILE

  • Data backups

  • Log backups

  • Automatic log backups

Do not create backups on data carriers of the FILE type that are located on the same hard disk as the volumes of the database. Always carry out backups to a separate hard disk.

If your data carriers are located on the same computer as the database, regularly copy the backups to other computers or data carriers using operating system commands.

TAPE

  • Data backups

You can use autoloaders.

Do not use tapes more often than is recommended by the manufacturer.

On Unix:

  • Make sure you address the correct device driver.

  • Use a rewind tape.

PIPE

  • Data backups

  • Manual log backups

    Note that automatic log backups to pipes are not possible.

On Microsoft Windows, the pipes are created by the database kernel.

On Unix, the pipes are not created by the database kernel:

  • For backups without third-party backup tools, you must create the pipe explicitly before you start the backup.

  • For backups using third-party backup tools that are not directly supported by SAP MaxDB, you must create the pipe explicitly before you start the backup.

  • For backups using third-party backup tools that are directly supported by SAP MaxDB, the pipe is created by the database system during the backup. The pipe must not exist beforehand.

Before you carry out a log backup to a pipe without a third-party backup tool or with a third-party backup tool not directly supported by SAP MaxDB, first set the value of the special database parameter EnableLogBackupToPipe to YES. This ensures that the system can overwrite the log entries in the log area that have already been written to the pipe. Note that the system does not check whether the log backup to the pipe was successful. More information: Database Administration, Special Database Parameters

Procedure

To create backup templates, use Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio,

    • Defining Backup Templates

    • Changing the Properties of Backup Templates

    • Deleting Backup Templates

  • Database Administration in CCMS, Backup Templates

Example

Example of a Backup Template for a Complete Data Backup
Property | Value
Name of the backup template | COM
Backup type | COMPLETE DATA
Data carrier type | FILE
Data carrier (Device/File) | DEMODB_COM Note that if you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory. Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_COM
Size of data carrier | No restriction (blank or 0)
Block size | 8 pages
Overwritable | Yes
Example of a Backup Template for a Log Backup
Property | Value
Name of the backup template | DEMODB_LOG
Backup type | LOG
Data carrier type | FILE
Data carrier (Device/File) | DEMODB_MYLOG Note that i you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory. Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_LOG
Size of data carrier | No restriction (blank or 0)
Block size | 8 pages
Overwritable | No

More Information

Backing Up Databases


Automating Administration Tasks - SAP Documentation

Procedure documentation Automating Administration Tasks

As a database administrator, you must periodically carry out certain administration tasks. In addition to these, you may need to carry out further administration tasks after specific system events have occurred.

Some administration tasks can be automated using special automating functions, others can be planned with the scheduler, triggered by events or triggers, or planned with the DBA Planning Calendar.

Procedure

Using Automating Functions

  • Automatic extension of the data area (database size)

    More information:

    • Database Studio, Activating or Deactivating Automatic Extension of the Data Area

    • Database Manager CLI, auto_extend

  • Automatic Log Backup

    More information:

    • Database Studio, Activating or Deactivating Automatic Log Backup

    • Database Manager CLI, autolog_on

    • Database Administration in CCMS, Activating Automatic Log Backup

  • Automatic update of the SQL optimizer statistics

    More information:

    • Database Studio, Updating SQL Optimizer Statistics

    • Database Manager CLI, auto_update_statistics

    • Database Administration in CCMS, Scheduling Updates of the SQL Optimizer Statistics

  • Activating Automatic Database Start

Using the Scheduler

You can use the scheduler to schedule DBM commands to be executed at specific times. For that purpose, you log on to the database and create a job in the scheduler for every DBM command to be executed. You must activate the scheduler for the jobs to be executed.

The scheduler uses a separate DBM server process for the connection to the database. Therefore, the scheduler remains active when you stop the database.

More information: Database Manager CLI, Using the Scheduler Function

Using Database Events

You can define that database events are triggered under specific circumstances, and that certain actions are carried out in response to these events, for example sending an e-mail, executing a DBM command or executing a command from another program.

More information:

  • Glossary, Event

  • Database Studio, Using Database Events

  • Database Manager CLI, Using Database Events

Using Database Triggers

You can use database triggers to trigger actions in the database following certain data changes or a restart.

More information: SQL Reference Manual, Trigger Name (trigger_name)

Using the DBA Planning Calendar

In SAP systems, you can plan periodic administration tasks with the DBA Planning Calendar.

More information: Database Administration in CCMS, DBA Planning Calendar

More Information

Periodic Administration Tasks


EXP(a) - SAP Documentation

Function documentation EXP(a)

EXP(a) is an arithmetic function that calculates the power from base e (2.71828183) and the exponential a ("e to the power of a").

EXP(a)
a | Result of EXP(a) function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value


DAYOFWEEK/WEEKOFYEAR/DAYOFMONTH/DAYOFYEAR(t) - SAP Documentation

Function documentation DAYOFWEEK/WEEKOFYEAR/DAYOFMONTH/DAYOFYEAR(t)

DAYOFWEEK(t)/WEEKOFYEAR(t)/DAYOFMONTH(t)/DAYOFYEAR(t) are date functions that calculate the following details:

Value t: When used in a function, the expression t (date_or_timestamp_expression) must supply a date, a time stamp or an alphanumeric value that matches the current date or time stamp format.

DAYOFWEEK(t)/WEEKOFYEAR(t)/DAYOFMONTH(t)/DAYOFYEAR(t)
t | Result of the Function
DAYOFWEEK(t) | Numeric value between 1 and 7 (weekday) The first day is Monday, the second Tuesday, etc.
WEEKOFYEAR(t) | Numeric value between 1 and 53 (calendar week of the specified day)
DAYOFMONTH(t) | Numeric value between 1 and 31 (day of the month of the specified day)
DAYOFYEAR(t) | Numeric value between 1 and 366 (day of the year of the specified day)
t is a NULL value | NULL value


DAYNAME/MONTHNAME(t) - SAP Documentation

Function documentation DAYNAME/MONTHNAME(t)

DAYNAME(t) and MONTHNAME(t) are date functions that supply the weekday or month of the specified day.

Value t: When used in a function, the expression t (date_or_timestamp_expression) must supply a date, a time stamp or an alphanumeric value that matches the current date or time stamp format.

DAYNAME(t)/MONTHNAME(t)
t | Result of the Function
DAYNAME(t) or MONTHNAME(t) | Character string that supplies the name of a weekday (Sunday to Saturday) or month (January to December).
t is a NULL value | NULL value

Example

SQL Tutorial, Functions


DECODE(x,y(i),...,z) - SAP Documentation

Function documentation DECODE(x,y(i),...,z)

DECODE(x,y(i),...,z) is a special function which decodes expressions in accordance with their values.

DECODE(x,y(i),...,z)
x | check_expression | Expression (expression) for which a comparison is to be carried out with the comparison values y(i)
y(i) | search_and_result_spec | <search_and_result_spec> ::= <search_expression>, <result_expression> (Short form: y(i)=u(i),v(i), i=1,...) Combination of the comparison value u(i) and the value v(i) that is to replace this comparison value
z | default_expression | Optional default value (LOB value is permissible)
u(i) | search_expression | Comparison value that is to be replaced by v(i) if it matches x
v(i) | result_expression | Value that is to replace the value u(i), if necessary (LOB value is permissible)

The data types of x and u(i) must be comparable. The data types of v(i) and z must be comparable. The data types of u(i) and v(i) do not have to be comparable.

DECODE compares the values of x with the values u(i) consecutively. If values match, the result of DECODE is the value v(i) in the combination y(i)=u(i),v(i).

If x and u(i) are NULL values, then a match exists. The comparison of the special NULL value with any other value never results in a match. If no match is found, DECODE returns the result of z. If z is not specified, the result of DECODE is the NULL value.

Example

SQL Tutorial, Converting Values


HEX(a) - SAP Documentation

Function documentation HEX(a)

HEX(a) is a conversion function which converts the expression a to hexadecimal notation. The function can be applied to any data type.

HEX(a)
a | Result of the HEX(a) Function
a is a NULL value | NULL value
a is a special NULL value | Error Messages


HOUR/MINUTE/SECOND(t) - SAP Documentation

Function documentation HOUR/MINUTE/SECOND(t)

HOUR(t), MINUTE(t) and SECOND(t) are functions (extraction) that extract the hour, minute and second from the specified date or time stamp value.

Value t: When used in a function, the expression t must supply a time value, a time stamp value, or an alphanumeric value that matches the current time or time stamp format.

HOUR/MINUTE/SECOND(t)
t | Result of the Function
HOUR(t), MINUTE(t) or SECOND(t) | Numeric value (hours, minutes, and seconds)
t is a NULL value | NULL value


INDEX(a,b,p,s) - SAP Documentation

Function documentation INDEX(a,b,p,s)

INDEX(a,b,p,s) is an arithmetic function that determines the position of the substring specified in b within the character string a. a and b are string specifications. Only expressions that have an alphanumeric value are permitted as string specifications.

The parameter p (an expression) is optional. If p is specified (p>=1), it defines the start position for the search for the substring b. If p is not specified, the search is started at position 1.

The parameter s (an expression) is optional. If s is specified, it determines the number of searches for the substring b. If s is not specified, the search is carried out for the first occurrence.

INDEX(a,b,p,s)
a, b, p, s | Result of the INDEX(a,b,p,s) function
a, b are character strings and b is not less than s times the substring of a | 0
a is a character string and b is an empty character string | p
a, b, p or s is the NULL value | NULL value
p or s is a special NULL value | Error Messages

Example

SQL Tutorial, Information About Character Strings


HEXTORAW(a) - SAP Documentation

Function documentation HEXTORAW(a)

HEXTORAW(a) is a conversion function.

An argument a of the function must be an expression that consists of hexadecimal characters. The expression a is converted to a character string with the code attribute BYTE that contains the corresponding characters. During this conversion, two hexadecimal characters are converted to one character.

HEXTORAW(a)
a | Result of the HEXTORAW(a) Function
a is a NULL value | NULL value
a is a special NULL value | Error Messages


INITCAP(x) - SAP Documentation

Function documentation INITCAP(x)

INITCAP(x) is a string function that changes a character string x (string specification) so that the first character of a word is an uppercase letter and the rest of the word consists of lowercase characters. Different words are split by one or more characters from the 7-Bit ASCII character set that are not letters or digits (such as commas, blank characters, or colons). For a list of letters and characters, see Character (character). Only expressions that produce an alphanumeric value are permitted as string specifications.

INITCAP(x)
x | Result of the INITCAP(x) Function
x is a NULL value | NULL value

Example

SQL Tutorial, Information About Character Strings


FLOOR(a) - SAP Documentation

Function documentation FLOOR(a)

FLOOR(a) is an arithmetic function that calculates the largest integer value that is smaller than or equal to the expression a (a number). The result is a fixed point number with 0 decimal places.

If it is not possible to represent the result of FLOOR(a) as a fixed point number, then an error message is generated.

FLOOR(a)
a | Result of the FLOOR(a) function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value


FIXED(a,p,s) - SAP Documentation

Function documentation FIXED(a,p,s)

FIXED(a,p,s) is an arithmetic function that is used to output the expression a (a number) in a format of the data type FIXED(p,s) (p, s are unsigned integers).

Digits after the decimal point are rounded to s decimal places if necessary.

FIXED(a,p,s)
a, p, s | Result of the FIXED(a,p,s) function
s not specified | Result as for s=0
p not specified | Result as for p=38
ABS(a)>10exp(p-s) | Special NULL Value
a is a NULL value | NULL value
a is a special NULL value | Special NULL value

More Information

FIXED(p,s)


FLOAT(a,p) - SAP Documentation

Function documentation FLOAT(a,p)

FLOAT(a,p) is an arithmetic function that outputs the expression a (a number) in a format of the data type FLOAT(p) (p is an unsigned integer). It is rounded to p places if necessary.

Float(a,s)
a, p | Result of the FLOAT(a,s) function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value

More Information

FLOAT(p)


LN(a) - SAP Documentation

Function documentation LN(a)

LN(a) is an arithmetic function that calculates the natural logarithm of the expression a (a is a number).

LN(a)
a | Result of the LN(a) Function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value

More Information

LOG(a)


LOG(a) - SAP Documentation

Function documentation LOG(a)

LOG(a) is an arithmetic function that calculates the natural logarithm of the expression a (a is a number).

LOG(a)
a | Result of the LOG(a) Function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value

More Information

LN(a)


LPAD(x,a,y,n) - SAP Documentation

Function documentation LPAD(x,a,y,n)

LPAD(x,a,y,n) is a string function that inserts the character string y (string literal) at the start of the character string x (string specification) as often as specified by the expression a. Only expressions that produce an alphanumeric value are permitted as string specifications. The result of the expression a must be a positive integer.

Leading and subsequent blanks in the character string x are truncated.

The optional parameter n (unsigned integer) defines the maximal total length of the character string created. n must be greater than or equal to the total LENGTH(x)+a*LENGTH(y).

LPAD(x,a,y,n)
x, a, y, n | Result of the LPAD(x,a,y,n) function
LPAD(x,a,y) and x must identify a CHAR or VARCHAR column | The maximum length of the character string is the length of the character string x.
x or a is a NULL value | NULL value
a is a special NULL value | Error Messages

Example Example

SELECT hno, LPAD('',TRUNC(price/10),'*',70) graph FROM room

WHERE price > 150 ORDER BY price DESC

Creating bar charts: LPAD inserts asterisks in front of the first parameter (in this case, a blank). This is done according to the number equal to price divided by 10.

LPAD(x,a,y,n)
HNO | GRAPH
130 | **********************************************************************
140 | ************************************************************
50 | **************************************************
60 | **************************************************
150 | *********************************************
80 | ****************************************
120 | ***********************************
90 | ******************************
130 | ***************************
10 | ********************
60 | ********************
140 | ********************
150 | *******************
50 | ******************
70 | ******************
130 | ****************
End of the example.

More Information

RPAD(x,a,y,n)


LTRIM(x,y) - SAP Documentation

Function documentation LTRIM(x,y)

LTRIM(x,y) is a string function that removes all of the characters specified in the character string y (string specification) from the start of the character string x.

The result of LTRIM(x,y), therefore, starts with the first character that was not specified in y. Only expressions that produce an alphanumeric value are permitted as string specifications.

LTRIM(x,y)
x, y | Result of the LTRIM(x,y) function
LTRIM(x) | Spaces only (code attribute ASCII, UNICODE) are removed from x.
x is a NULL value | NULL value

Example

SQL Tutorial, Changing Character Strings

More Information

TRIM(x,y)

RTRIM(x,y)


GREATEST/LEAST(x,y,...) - SAP Documentation

Function documentation GREATEST/LEAST(x,y,...)

GREATEST(x,y,...) or LEAST(x,y) is a special function that calculates the maximum or minimum value of all arguments (expressions).

The functions can be applied to any data type. The data types of the individual expressions must be comparable.

GREATEST/LEAST(x,y,...)
x, y, ... | Result of the Function
At least one argument is the NULL value | NULL value
At least one argument is the special NULL value | Special NULL value

Example

SQL Tutorial, Information About Character Strings


ROUND(a,n) - SAP Documentation

Function documentation ROUND(a,n)

ROUND(a,n) is an arithmetic function with the following result (for the expressions a and n that are numbers):

ROUND(a): rounds decimal places up and down

ROUND(a,n): rounds up and down to the nth place on the right of the decimal point

ROUND(a,-n): rounds up and down to the nth place on the left of the decimal point

ROUND(a,n)
a, n | Result of the ROUND(a,n) function
a>=0 | TRUNC(a+0.5*10E-n,n)
a<0 | TRUNC(a-0.5*10E-n,n)
n not specified | Result as for n=0
n is not an integer | The integer component of n is used and the result is as with a>=0 or a<0
a is a floating point number | Floating point number
a is a fixed point number | Fixed point number
a is a NULL value | NULL value
a is a special NULL value | Special NULL value


POWER(a,n) - SAP Documentation

Function documentation POWER(a,n)

POWER(a,n) is an arithmetic function that calculates the nth power of the number a (a and n are expressions).

An error message is output if n is not an integer.

POWER(a,n)
a, n | Result of the POWER(a,n) function
a or n is a NULL value | NULL value
a is a special NULL value | Special NULL value


PI - SAP Documentation

Function documentation PI

PI is an arithmetic function that outputs the value pi.


NOROUND(a) - SAP Documentation

Function documentation NOROUND(a)

NOROUND(a) is an arithmetic function that prevents the expression a of an UPDATE or INSERT statement from being rounded to match the data type of the target column.

If the non-rounded number does not correspond to the data type of the target column, an error message is output.

NOROUND(a)
a | Result of the NOROUND(a) function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value


MAKEDATE(a,b) - SAP Documentation

Function documentation MAKEDATE(a,b)

MAKEDATE(a,b) is a date function that supplies a date value from a year and day value.

The expressions a and b (expression) in MAKEDATE must supply numeric values. The following restrictions also apply:

a>=0 (a represents a year value)

b>0 (b represents a day value)

Decimal places in a and b are truncated if necessary.

MAKEDATE(a,b)
a, b | Result of the MAKEDATE(a,b) function
a or b is a NULL value | NULL value
a or b is a special NULL value | Error Messages

Example Example

MAKEDATE(2008,49) in the INTERNAL date format outputs 2008-02-18

End of the example.


RPAD(x,a,y,n) - SAP Documentation

Function documentation RPAD(x,a,y,n)

RPAD(x,a,y,n) is a string function that inserts the character string y (string literal) at the end of the character string x (string specification) as often as specified by the expression a. Only expressions that produce an alphanumeric value are permitted as string specifications. The result of the expression a must be a positive integer.

Leading and subsequent blanks in the character string x are truncated.

The optional parameter n (unsigned integer) defines the maximal total length of the character string created. n must be greater than or equal to the total LENGTH(x)+a*LENGTH(y) .

RPAD(x,a,y,n)
x, a, y, n | Result of the RPAD(x,a,y,n) function
RPAD(x,a,y) x must identify a CHAR or VARCHAR column | The maximum length of the character string is the length of the character string x.
x or a is a NULL value | NULL value
a is a special NULL value | Error Messages

More Information

LPAD(x,a,y,n)


MAPCHAR(x,n,i) - SAP Documentation

Function documentation MAPCHAR(x,n,i)

MAPCHAR(x,n,i) is a string function that converts country-specific letters (string specification x) to a different format (e.g. German umlauts, French letters with a grave accent).

MAPCHAR(x,n,i) uses the MapChar set with the name i (mapchar set name) to convert the character string x (string specification). Only expressions that produce an alphanumeric value are permitted as string specifications.

The code on which the character string x is based and the code on which the implemented MapChar set is based must match.

If you do not specify a MapChar set name, the MapChar set with the name DEFAULTMAP (defined for the ASCII code) is used. In Unicode-based database systems string specifications are Unicode. So if necessary convert the string specification to an ASCII expression (using for example the function ASCII(x)).

The n parameter (unsigned integer) is optional; n specifies the maximum length of the result.

MAPCHAR(x,n,i)
x, n, i | Result of the MAPCHAR(x,n,i) function
MAPCHAR(x,i) | MAPCHAR(x,n,i), whereby n is the length of the character string x
MAPCHAR(x,i) x is a CHAR or VARCHAR column | MAPCHAR(x,n,i), whereby n is the length of the column x
MAPCHAR(x) | MAPCHAR(x,DEFAULTMAP)
x is a NULL value | NULL value

Example Example

The MAPCHAR function enables data to be sorted correctly, for example, if "ü" is to be treated as "ue" for sorting purposes. The MapChar set with the name DEFAULTMAP is used.

  1. SELECT ...,MAPCHAR(<column_name>) sort,... FROM ... ORDER BY sort
End of the code.

More Information

String Specification

ASCII(x)

ALPHA(x,n)


RTRIM(x,y) - SAP Documentation

Function documentation RTRIM(x,y)

RTRIM(x,y) is a string function that removes the blanks (code attribute ASCII, UNICODE) from the end of the character string x and then all of the characters specified in the character string y (string specification).

The result of RTRIM(x,y), therefore, ends with the last character that was not specified in y. Only expressions that produce an alphanumeric value are permitted as string specifications.

RTRIM(x,y)
x, y | Result of the RTRIM(x,y) function
RTRIM(x) | Spaces only (code attribute ASCII, UNICODE) are removed from x.
x is a NULL value | NULL value

Example

SQL Tutorial, Changing Character Strings

More Information

TRIM(x,y)

LTRIM(x,y)


NUM(a) - SAP Documentation

Function documentation NUM(a)

NUM(a) is a conversion function which converts the expression a to a numerical value.

NUM can be applied to character strings (data type CHAR or VARCHAR) with the code attribute ASCII, UNICODE, or BYTE, to date values, time values, timestamp values, and to numeric and Boolean values (BOOLEAN).

NUM(a)
a | Result of the NUM(a) function
a is a character string with the code attribute ASCII or UNICODE and can be interpreted as a numeric value | Corresponding numeric value
a is a character string with the code attribute BYTE | Value between 0 and 255 that is determined as follows: The first Byte of the character string is converted from hexadecimal notation to decimal notation
a is a numeric value | Identical numeric value (unchanged)
a is a Boolean value | 1, when a=TRUE 0, when a=FALSE
a is a character string that cannot be interpreted as a numeric value; a is a character string that does not have the code attribute ASCII, a is neither a numeric nor a Boolean value | Error message
a is a character string that can be interpreted as a numeric value outside the range -9.9999999999999999999999999999999999999E+62, 9.9999999999999999999999999999999999999E+62 | Special NULL Value
a is a NULL value | NULL Value
a is a special NULL value | Special NULL value


REPLACE(x,y,z) - SAP Documentation

Function documentation REPLACE(x,y,z)

REPLACE(x,y,z) is a string function that replaces the character string y in the character string x with the character string z. All character strings are string specifications. Only expressions that produce an alphanumeric value are permitted as string specifications.

REPLACE(x,y,z)
x, y, z | Result of the REPLACE(x,y,z) function
REPLACE(x,y) | The character string y is deleted in x
x is a NULL value | NULL value
y is a NULL value | x remains unchanged
z is a NULL value | The character string y is deleted in x

Example

SQL Tutorial, Changing Character Strings

More Information

TRANSLATE(x,y,z)


MAKETIME(h,m,s) - SAP Documentation

Function documentation MAKETIME(h,m,s)

MAKETIME(h,m,s) is a time function that calculates a time value from the total number of hours, minutes, and seconds.

Values h, m and s: When used in a function, each of the expressions h, m or s must be an integer greater than or equal to 0. If an expression is not an integer, decimal places are truncated.

MAKETIME(h,m,s)
h, m, s | Result of the MAKETIME(h,m,s) Function
h,m,s is a NULL value | NULL value
h,m,s is a special NULL value | Error Messages


MICROSECOND(a) - SAP Documentation

Function documentation MICROSECOND(a)

MICROSECOND(a) is a function (extraction) that extracts the microseconds from the expression a.

Value a: The expression a must be a time stamp value or supply an alphanumeric value that matches the current time stamp format.

MICROSECOND(a)
a | Result of MICROSECOND(a) Function
MICROSECOND(a) | Numeric value (microseconds)
a is a NULL value | NULL value


String Function (string_function) - SAP Documentation

Background documentation String Function (string_function)

A string_function is a function that supplies an alphanumeric value as a result.

Structure

Syntax Syntax

  1. <string_function> ::=
  ALPHA(<string_spec>[,<unsigned_integer>])
| ASCII(<string_spec>)
| CONCAT(<string_spec>,<string_spec>)
| EXPAND(<string_spec>,<unsigned_integer>)
| INITCAP(<string_spec>)
| LFILL(<string_spec>,<string_literal>[,<unsigned_integer>])
| LOWER(<string_spec>)
| LPAD(<string_spec>,<expression>,<string_literal>[,<unsigned_integer>])
| LTRIM(<string_spec>[,<string_spec>])
| MAPCHAR(<string_spec>[,<unsigned_integer>][,< mapchar_set_name>])
| REPLACE(<string_spec>,<string_spec>[,<string_spec>])
| RFILL(<string_spec>,<string_literal>[,<unsigned_integer>])
| RPAD(<string_spec>,<expression>,<string_literal>[,<unsigned_integer>])
| RTRIM(<string_spec>[,<string_spec>])
| SOUNDEX(<string_spec>)
| SQLMODE()
| SUBSTR(<string_spec>,<expression>[,<expression>])
| TRANSLATE(<string_spec>,<string_spec>,<string_spec>)
| TRIM(<string_spec>[,<string_spec>])
| UPPER(<string_spec>)
| <string_spec> || <string_spec>
| <string_spec> & <string_spec>

<string_spec> ::=
  <expression>
End of the code.
Explanation

<string_spec> || <string_spec> or <string_spec> & <string_spec> is used to represent a concatenation (CONCAT(x,X), x||y or x&y).

Only expressions that have an alphanumeric value are permitted as string specifications (string_spec).

More Information

Functions: Overview


-d: Name of the Database - SAP Documentation

Background documentation -d: Name of the Database

Use this option to specify to which database Database Manager should connect.

The specified database name is valid for the entire session. All database-specific DBM commands relate to this database.

When a session is started, the system checks whether the specified database is registered in the list of registered databases on the database computer. If this is not the case, then the session is refused.

Prerequisites

The database specified is available and registered in Database Manager.

Structure

-d <database_name>

Options
Option | Description
<database_name> | Name of the database

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the operational state of the database:

>dbmcli -u OLEG,MONDAY -d DEMODB db_state

OK

ONLINE


-e: Activating Encryption - SAP Documentation

Background documentation -e: Activating Encryption

Use this option to activate the encryption function. Also specify the encryption method to be applied for communication.

Note Note

You can only use this DBM option in conjunction with the -n DBM option (name of the database computer).

End of the note.

Prerequisites

You have configured your system for encryption.

Structure

-e <encryption>

Options
Option | Description
<encryption> | Encryption method Possible values are: SSL | SSL/TLS (Currently, only SSL/TLS encryption is supported, and only in SAP systems)

More Information

Database Administration, Encryption


-i | -ic | -is | -ics: Name of the Input Script - SAP Documentation

Background documentation -i | -ic | -is | -ics: Name of the Input Script

Use this option to specify the name of the input script, which contains the DBM commands you want to execute.

Also specify whether the script processing should be cancelled or continued if an error occurs, or whether Database Manager should remain in the session mode after the script has been processed.

Structure

-i <file_name> | -ic <file_name> | -is <file_name> | -ics <file_name>

Options
Option | Description
-i <file_name> | Path and name of the input script Script processing is cancelled if an error occurs.
-ic <file_name> | Path and name of the input script Script processing is continued if an error occurs.
-is <file_name> | Path and name of the input script After the script has been successfully processed, Database Manager remains in session mode. If an error occurs, script processing and the session mode are cancelled.
-ics <file_name> | Path and name of the input script Database Manager remains in session mode after having successfully processed the script and also if an error occurs.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, and execute the DBM commands contained in the input.dbm input script in the C:\test\scripts directory:

>dbmcli -u OLEG,MONDAY -d DEMODB -i C:\test\scripts\input.dbm

OK

<reply_to_first_DBM_command_in_script>

OK

<reply_to_second_DBM_command_in_script>

...


Overview of All DBM Commands - SAP Documentation

Syntax documentation Overview of All DBM Commands

DBM Command | Description
apropos | Searching for a DBM command
archive_stage | Creating a single archive of backup files (only for log backups)
archive_stage_repeat | Creating multiple archives of backup files (only for log backups)
auto_dbanalyzer | Automatically starting and stopping Database Analyzer
auto_extend | Extending the data area automatically
auto_load_systab | Updating the system tables automatically
auto_recreate_bad_index | Recreating bad indexes automatically
auto_update_statistics | Updating the optimizer statistics automatically
autolog_cancel | Exiting an automatic log backup which has been interrupted
autolog_off | Deactivating the automatic log backup function
autolog_on | Activating automatic log backup function
autolog_show | Displaying the automatic log backup function
autorecover | Restoring the database automatically
backup_cancel | Canceling an interrupted backup
backup_cancel_req | DBM command used only by DBM client programs
backup_ext_ids_forget | Releasing the memory occupied by external backup IDs
backup_ext_ids_get | Retrieving external backup IDs
backup_ext_ids_getfromtool | Retrieving backup information stored in the backup tool
backup_ext_ids_list | Displaying the external backup IDs
backup_ext_ids_listnext | Scrolling through the external backup IDs
backup_history_append | Internal system command
backup_history_close | Closing the backup history
backup_history_date | Changing the date of the backup history
backup_history_list | Displaying the backup history
backup_history_listnext | Scrolling through the backup history
backup_history_open | Retrieving the backup history
backup_ignore | Continuing the backup without the data carrier last reported as full
backup_ignore_req | DBM command used only by DBM client programs
backup_replace | Specifying the succeeding data carrier for a backup action
backup_replace_req | DBM command used only by DBM client programs
backup_reply_available | DBM command used only by DBM client programs
backup_reply_receive | DBM command used only by DBM client programs
backup_req | DBM command used only by DBM client programs
backup_start | Backing up the database
backup_state | Displaying the current backup status
bye | exit | quit | release | Exiting Database Manager CLI
db_activate | Initializing a database
db_activate RECOVER | Restoring and initializing a database
db_activate_req | DBM command used only by DBM client programs
db_addvolume | Adding volumes
db_admin | Transferring the database to the ADMIN operational state
db_clear | Deleting the runtime information after a database error
db_connect | Opening a database session
db_cons | Using the XCONS tool (database console)
db_create | Creating a database
db_deletevolume | Deleting a data volume
db_drop | Deleting the current database
db_enum | Displaying a list of all registered databases
db_execute | Executing an administration command or an SQL statement (displaying the complete result list)
db_executenice | Executing an administration command or an SQL statement (displaying the result record-by-record)
db_fetch | Scrolling through the results of an administration command or an SQL statement (displaying the complete result list)
db_fetchnice | Scrolling through the results of an administration command or an SQL statement (displaying the result record-by-record)
db_migratecatalog | DBM command used only by SAP applications
db_offline | Transferring the database to the OFFLINE operational state
db_online | Transferring the database to the ONLINE operational state
db_reg | Updating the registration of a database
db_reinstall | Resetting the database
db_release | Ending a database session
db_restart | Restarting the database
db_restartinfo | Displaying the restart information after importing a backup
db_speed | Displaying the database kernel variant
db_standby | Transferring the database to the STANDBY operational state
db_state | Displaying the operational state of the database
db_stop | Ending a database process
db_unreg | De-registering a database
dban_delete | Deleting the Database Analyzer log files
dban_start | Calling Database Analyzer
dban_state | Displaying the Database Analyzer function
dban_stop | Exiting Database Analyzer
dbm_configget | Displaying a configuration parameter of Database Manager
dbm_configset | Changing a configuration parameter of Database Manager
dbm_execute_serverprocess | Internal system command
dbm_getpath | Displaying the version-independent directories
dbm_getpid | Internal system command
dbm_listmemoryerror | Internal system command
dbm_next | Internal system command
dbm_shm_info | Displaying information about the shared memory
dbm_shm_reset | Resetting the shared memory
dbm_shm_unlock | Unlocking the shared memory
dbm_stop | Ending the DBM server process
dbm_trace | Starting and stopping the DBM server trace function
dbm_version | Displaying the software version
dbmevtdisp_internal_add | Internal system command
dbmevtdisp_internal_communication | Internal system command
dbmevtdisp_internal_delete | Internal system command
diag_histlist | Displaying the diagnosis history
diag_pack | Packing the database files
event_available | Displaying whether any events were triggered
event_delete | Deactivating an event
event_dispatcher | Managing the event dispatcher function
event_list | Displaying a list of active events
event_list_categories | Displaying event categories and their properties
event_receive | Displaying a triggered event
event_release | Ending an event session
event_set | Defining and activating an event
event_wait | Waiting for an event
exec_lcinit | Executing the liveCache initialization script
exec_nipingsrv | DBM command used only by SAP applications
exec_sdbinfo | DBM command used only by SAP applications
exit | Exiting Database Manager CLI
explain | Displaying the help text for a DBM command
file_backup | Backing up a database file
file_getfirst | Opening a database file
file_getlist | Displaying a list of database files
file_getnext | Scrolling through a database file
file_operation | Editing the log files of a database
file_restore | Restoring a database file
get_default | DBM command used only by DBM client programs
help | Displaying a list of DBM commands
hss_addstandby | Defining a standby database
hss_copyfile | Copying database files within a cluster
hss_enable | Defining a database as the master database
hss_execute | Executing DBM commands in a standby database
hss_getnodes | Displaying hot standby parameters
hss_removestandby | Deleting a standby database
info | Displaying the status information of the database
info_next | Scrolling through the status information of the database
inst_enum | Displaying a list of all registered versions of the database software
inst_info | DBM command used only by SAP applications
inst_reg | Registering a version of the database software
inst_unreg | Deleting registration of a database software version
load_lcapps | Loading the application libraries
load_r3tab | Loading SAP-specific tables
load_systab | Updating the system tables
load_tutorial | Loading the SQL tutorial files
medium_date | Displaying the change date of the template definition file
medium_delete | Deleting a backup template
medium_delete_nodistribute | Internal system command with hot standby configurations
medium_get | Displaying the data of the backup template
medium_getall | Displaying a list of all defined backup templates
medium_label | Displaying the backup information in the ONLINE or ADMIN operational state
medium_labeloffline | Displaying backup information in the OFFLINE operational state
medium_migrate | Adopting an existing template definition
medium_put | Defining or changing the properties of a backup template
medium_put_nodistribute | Internal system command with hot standby configurations
package_info | DBM command used only by SAP applications
param_abortsession | Ending a parameter session
param_addvolume | Changing volume parameters
param_checkall | Checking all database parameters
param_commitsession | Confirming changes to the database parameter file
param_copy | Copying a database parameter file
param_delvolume | Deleting volume parameters
param_directdel | Deleting a database parameter
param_directget | Displaying the value of a parameter in the database parameter file
param_directgetall | Displaying the value of all parameters in the database parameter file
param_directgetallnext | Scrolling through the parameter values in the database parameter file
param_directput | Changing a value directly in the database parameter file
param_extget | Displaying the individual data of a database parameter
param_extgetall | Displaying the data of all database parameters
param_extgetallnext | Scrolling through all database parameter data
param_getdefault | Displaying the system default (default value)
param_getexplain | Displaying the stored explanatory text
param_getfull | Displaying all the data of a database parameter
param_gethelp | Displaying the stored help text
param_gethistory | Opening the database parameter history
param_gethistorynext | Scrolling through the database parameter history
param_getproperties | Displaying all the properties of a database parameter
param_gettype | Displaying the data type of a database parameter
param_getvalue | Displaying the current value of a database parameter
param_getvolsall | Displaying the data of all volume parameters
param_getvolume | Displaying the data of an individual volume
param_init | Initializing the database parameters for a new database
param_put | Changing the values of database parameters
param_restore | Resetting the parameter file to a previous version
param_rmfile | Deleting the database parameter file
param_startsession | Opening a parameter session
param_versions | Displaying a list of parameter files
quit | Exiting Database Manager CLI
recover_cancel | Canceling an interrupted restore or a backup check
recover_cancel_req | DBM command used only by DBM client programs
recover_check | Checking a backup
recover_check_req | DBM command used only by DBM client programs
recover_config | Restoring the parameter file from a data backup
recover_ignore | Continuing a parallel restore or a backup check
recover_ignore_req | DBM command used only by DBM client programs
recover_replace | Specifying the succeeding data carrier for a restore operation or a backup check
recover_replace_req | DBM command used only by DBM client programs
recover_req | DBM command used only by DBM client programs
recover_start | Restoring the database
recover_state | Displaying the current status of a restore action
recover_state_check | Displaying the current status of a backup check
recover_volume | Restoring a damaged volume
release | Exiting Database Manager CLI
scheduler_activate_job | Activating a scheduler job
scheduler_create_job | Creating a scheduler job
scheduler_deactivate_job | Deactivating a scheduler job
scheduler_delete_job | Deleting a scheduler job
scheduler_list_jobs | Displaying a list of all scheduler jobs
scheduler_start | Starting the scheduler
scheduler_state | Displaying the function of the scheduler
scheduler_stop | Stopping the scheduler
service_connect | Opening a service session
service_register | Registering the service database in the system
service_release | Closing a service session
service_unregister | Unregistering the service database in the system
show | Displaying information about the database
show_list | Displaying the keywords for information about the database
show_next | Scrolling through information about the database
sql_connect | Opening an SQL Session
sql_execute | Executing an SQL statement (displaying the complete result list)
sql_executenice | Executing an SQL statement (displaying the result record-by-record)
sql_fetch | Scrolling through the results of an SQL statement (displaying the complete result list)
sql_fetchnice | Scrolling through the results of an SQL statement (displaying the result record-by-record)
sql_info | Displaying the structure of a result set
sql_recreateindex | Restoring a damaged index
sql_release | Ending an SQL session
sql_updatestat | Updating the optimizer statistics
sql_updatestat_per_systemtable | Updating the optimizer statistics as per system table SYSUPDSTATWANTED
trace_clear | Deleting the contents of the database trace
trace_flush | Creating the binary file of the database trace
trace_off | Deactivating the database trace
trace_on | Activating the database trace
trace_prot | Creating the text version of the database trace
trace_protopt | Displaying the command options for creating the text version of the database trace
trace_show | Displaying the logged activities of the database trace
user_create | Creating a DBM operator
user_delete | Deleting a DBM operator
user_get | Displaying a DBM operator's properties
user_getall | Displaying a list of DBM operators
user_getrights | Displaying the server permissions
user_logon | Logging on to Database Manager
user_name_get | Displaying your current logon name in Database Manager
user_put | Changing a DBM operator's properties
user_rename | Changing the name of a DBM operator
user_sap | Storing special users
user_sysdba | Transferring the data of the database system administrator to Database Manager
user_system | Logging on to the operating system


Installations or Updates in the Command Line - SAP Documentation

Procedure documentation Installations or Updates in the Command Line

Use the SDBINST program to install or update a complete database software installation or individual software packages on Unix, Linux, or Microsoft Windows. Specify all required information in the command line, along with the command for starting the SDBINST program.

When installing or updating individual components, take into account the dependencies between the software components. Otherwise, an error message is displayed and the system terminates the installation process. Therefore we recommend that you update individual components in special cases only. For details, see Software Components.

Prerequisites

  • The software installation you want to update is not used by any databases.

    Note Note

    If one or more databases use the software installation to be updated, you must upgrade the databases along with the software (see: Upgrading Databases and Their Server Software). Otherwise, you risk rendering the databases incompatible with the database software. In this case, you may not be able to start them again.

    End of the note.

  • For software updates, the following prerequisites apply for the SAP MaxDB communication servers:

    For Source Versions < 7.8

    On Unix and Linux

    On Windows

    Source Version < 7.5

    Stop the X server (V server process) and all databases before the installation or update (see: Utilities, Stopping the Global Listener and/or Installation-Specific X Servers). Note that this interrupts the communication between the clients and all local databases.

    If the independent software is to be changed, stop the X server before the installation or update.

    Note that as per the system default, the independent software is updated only if the target version of the global software is higher than the source version.

    If the target version of the independent software is lower than the source version, the update process will not change the independent software.

    Source Version ≥ 7.5

    Stopping the X server and all the databases is not necessary.

    From this version the X server software supports an update of the database software while the X server is running.
    For Source Version ≥ 7.8

    On Unix and Linux

    On Windows

    From Source Version ≥ 7.8

    Stopping the global listener is not necessary.

    If the global software is to be changed, stop the global listener before the installation or update (see: Utilities, Stopping the Global Listener and/or Installation-Specific X Servers).

    Note that as per the system default, the global software is updated only if the target version of the global software is higher than the source version.

    If the target version of the global software is lower than the source version, the update process will not change the global software unless you explicitly specify the -update_global option.

Procedure

  1. In the download area, select the package that is appropriate for your operating system architecture and copy it to a local directory of your choice.

  2. On Unix or Linux: Open a root shell and go to the above local directory. Unpack the software using GNU tar with the following command:

    tar -xvzf <package_name>

    On Microsoft Windows: Extract the downloaded package into your local directory using WinZip or WinRAR.

  3. If the following conditions apply to your system, you must perform the preparatory steps below before a new installation. Otherwise, continue with step 4.

    1. The installation program adds the necessary sql6 und sapdbni72 services to the /etc/services file, if they do not already exist. If these services are managed centrally in the network (NIS) for your system, you must enter them there as follows:

      sql6 7210/tcp

      sapdbni72 7269/tcp

    2. During the installation, the database software must be assigned to a special operating system user (<sdb_user>) as the owner of the software, and to the group <sdba_group>.

      If you install a software version ≥ 7.5.00, this assigment is done by the system during the installation process (For detailed information see Database Administration, Special Operating System Users and Groups.)

      If you install a software version < 7.5.00, provide the necessary information as follows:

      If you manage user groups and owners locally on your computer, we recommend that you create the user group and owner before starting the installation process. You can also enter this information during the installation process.

      If you manage user groups and owners for your system centrally in the network, you must create them there before you start the installation. For more information on creating operating system users and user groups, see the documentation for your operating system.

      The special operating system user must not log on to the operating system. Therefore, revoke this authorization from the user. For information on how to do this, see the documentation for your operating system (lock account).

      The primary group for the owner of the database software is the Administrators group.

      Recommendation Recommendation

      For a better supportability, we recommend that you use the sdb and sdba names for the owner and the group.

      End of the recommendation.

    3. Check whether the PATH environment variable contains the <installation_path>/bin and <global_programs_path>/bin entries (in this order) for each user that wants to use the database system. If this is not the case, enter it now (For information on setting environment variables, see the documentation for your operating system).

  4. Go to the directory maxdb-<all | studio>-<os>-<32|64>bit-<arch>-<version>_<build>, which contains the installation software.

  5. Start the installation or update process with the appropriate command from the list below.

    Note Note

    For an explanation of the options, see Overview of the Options for the SDBINST Program.

    Place any names of software components that contain blanks in double quotation marks.

    End of the note.
    Syntax Overview

    SDBINST <installation> | <update> | -v | -h | -l

    <installation> :: = <inst_complete_software> | <inst_software_package>

    Installing the Complete Database Software:

    <inst_complete_software> :: = [-i <installation_name>] [-path <installation path>] [-description <installation_description>] [-private_datapath <path>] [-global_prog <path>] [-global_data <path>] [-global_owner <user_name>] [-global_group <group_name>] [-global_port <number>] [-network_port <number>] [-no_debug_packages] [-b]

    Installing Individual Software Packages:

    <inst_software_package> :: = -package <package_list>] [-i <installation_name>] [-description <installation_description>] [-path <installation_path>] [-private_datapath <path>] [-global_prog <path>] [-global_data <path>] [-global_owner <user_name>] [-global_group <group_name>] [-global_port <number>] [-network_port <number>] [-b] [-no_debug_packages] [-update_global]

    <package_list> :: = <package> | <package>,<package>,…

    Updating a Complete Software Installation:

    <update_complete_software> :: = <installation_ident> [-check_files] [-no_debug_packages] [-force_extract] [-kill_running_processes] [-b]

    <installation_ident> :: = -i <installation_name> | -path <installation_path>

    Updating Individual Software Packages:

    <update_software_package> :: = <installation_ident> [-check_files] [-no_debug_packages] [-force_extract] [-kill_running_processes] [-b]

    <installation_ident> :: = -i <installation_name> | -path <installation_path>

You will receive a message informing you that the installation was successful.

Result

The software packages have been installed and registered. You can check the result of your installation in the log.

You can create databases using Database Studio or Database Manager CLI.

More Information

Database Studio, Creating Databases

Database Manager CLI, db_create


DBM Options - SAP Documentation

Function documentation DBM Options

When you call Database Manager CLI, you can enter various DBM options and exactly one DBM command.

You can enter parameters for many of the DBM options. If you do not specify a parameter, the default values are used.

If you enter DBM options with parameters, mark the beginning of the subsequent DBM command with the DBM option -c. In this way you prevent Database Manager from interpreting the subsequent DBM command as a parameter of the previously entered DBM option.

Features

You can use the following DBM options:
Option | Description
-c | Indicating as DBM command
-d | Name of the database instance
-e | Activating Encryption
-i | -ic | -is | -ics | Name of the input script
-n | Name of the database computer
-o | Name of the Output File
-R | Installation directory of the database instance
-t | Name of the Log File
-uSQL | Opening an SQL Session
-uSRV | Opening a Service Session
-uUTL | Opening a Utility Session
-ud | Deleting XUSER Entries
-uk | User key
-us | Creating or Changing XUSER Entries
-ux | Logging on to the XUSER program
-ul | Displaying XUSER Data

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, and display the content of the users database system table without explicitly specifying a database user.

(Mark the beginning of the DBM command with the option -c. The system default, that is the data of the database system administrator, is used for the database user):

>dbmcli -u OLEG,MONDAY -d DEMODB -uSQL -c db_execute SELECT * FROM users

OK

END

'OLEG';'';'OLEG';'ADMIN';'MULTIPLE';(null);(null);(null);'DEFAULT';'20050602';'00104503';'20050602';'00104503';'20050602';'00104503';'DEMODB';'p59963.dhcp.ber.sap.corp';0;'NO';(null)

'DBADMIN';'';'DBSERVICE';'DBA';'MULTIPLE';(null);(null);(null);'DEFAULT';'20050602';'00104508';'20050602';'00104508';'20050602';'00104508';'DEMODB';'p59963.dhcp.ber.sap.corp';6;'YES';(null)

'DBADMIN';'';'DBADMIN';'SYSDBA';'MULTIPLE';(null);(null);(null);'DEFAULT';'20050602';'00104503';'20050602';'00104506';'20050602';'00104503';'DEMODB';'p59963.dhcp.ber.sap.corp';10;'NO';(null)

'DBADMIN';'';'MONA';'DBA';'MULTIPLE';(null);(null);(null);'DEFAULT';'20050602';'00104523';'20050602';'00104523';'20050602';'00104523';'DEMODB';'p59963.dhcp.ber.sap.corp';24;'NO';(null)

More Information

Calling Database Manager CLI


Upgrade if an Indidual Database Uses the Software Installation - SAP Documentation

Procedure documentation Upgrade if an Indidual Database Uses the Software Installation

Use the SDBUPD program to upgrade a database. In this process, update the existing software and simultaneously upgrade the existing database to this new version.

The SDBUPD program automatically stops the database to be upgraded during this process.

For source versions < 7.8 on Microsoft Windows, the SDBUPD program also stops the X server, provided that no other databases are running on this computer. If there are other databases running on this computer, you must transfer them to the OFFLINE operational state before starting the upgrade. Otherwise, the upgrade process will stop with an error. On Unix/Linux, stopping the X server is not necessary since from version 7.5 the X server software supports an update of the database software while X server is running.

In case the scheduler is running on the database to be upgraded, stop the scheduler before starting the SDBUPD program. After having performed the upgrade, you must re-start the scheduler for the jobs to be executed.

Recommendation Recommendation

Before you start the upgrade process, make sure you have up-to-date log backups and data backups for recovering the database in the event of an error.

If you have changed parameters of the database to be upgraded after the last restart , we also recommend that you first restart the database. This will prove that your database is still restartable and that no inconsistent changes have been made. Only then start the upgrade process to make sure that it does not fail because of parameter inconsistencies.

End of the recommendation.

Prerequisites

  • The SDBINST program or Installation Manager has been used to install the existing software.

  • The database is in a defined operational state - in other words, no errors may exist.

  • It is the only database which uses the software to be updated.

  • For the SAP MaxDB communication server the following prerequistes must be fulfilled:

    For Source Version ≥ 7.8

    On Unix and Linux

    On Windows

    From Source Version ≥ 7.8

    Stopping the global listener is not necessary.

    If the global software is to be changed, stop the global listener before the installation or update (see: Utilities, Stopping the Global Listener and/or Installation-Specific X Servers).

    Note that as per the system default, the global software is updated only if the target version of the global software is higher than the source version.

    If the target version of the global software is lower than the source version, the update process will not change the global software unless you explicitly specify the -update_global option.

Procedure

  1. Call Database Manager CLI in session mode, log on as a DBM operator and connect to the database to be upgraded:

    >dbmcli -d <database_name> -u <dbm_operator>,<dbm_operator_password>

  2. Check whether the scheduler function is active:

    >scheduler_state

  3. If the scheduler function is active, stop it using the following command:

    >scheduler_stop

    Otherwise proceed with step 4.

  4. Exit Database Manager CLI:

    >exit

  5. Start the SDBUPD program by entering the following command:

    Microsoft Windows

    Unix/Linux

    >sdbupd -d <database_name> -u <dbm_operator>,<dbm_operator_password>

    >./SDBUPD -d <database_name> -u <dbm_operator>,<dbm_operator_password>

    SDBUPD performs the upgrade and displays a message to indicate that the upgrade has been completed successfully. It then flags the installation as complete.

Result

The specified database and its server software, that is the software stored in the installation path, have been updated.

Caution Caution

With this procedure, the global software is not updated. To update this software, use the SDBINST program as described under Installations or Updates in the Command Line.

End of the caution.

The database that has been upgraded is now in the ONLINE operational state.


-ul: Displaying XUSER Data - SAP Documentation

Background documentation -ul: Displaying XUSER Data

With the DBM option -ul, you can display the user data stored in the XUSER program from within the Database Manager CLI. For that purpose, log on to the XUSER program as the user stored under the DEFAULT user key (DBM option -ux).

The system displays a list of the existing user keys with the assigned user names.

Note Note

Unlike user names and passwords, Database Manager treats user keys as case-sensitive.

End of the note.

Prerequisites

You have stored the user name and password of a valid database user under the DEFAULT user key.

Structure

-ul

Example

Call Database Manager CLI, log on to the XUSER program with the user BORIS and the password PINK stored under the DEFAULT user key, display a list of all the XUSER entries stored in the XUSER program:

>dbmcli -ux BORIS,PINK -ul

OK

DEFAULT BORIS

DAKEY DAVID

DBMUSR DBM

More Information

Utilities, XUSER


-us: Creating or Changing XUSER Entries - SAP Documentation

Background documentation -us: Creating or Changing XUSER Entries

XUSER entries are sets of user data, which are defined by user keys. They facilitate the logon process to programs that support XUSER.

In Database Manager, you can use the XUSER program with the DBM option –us to create new XUSER entries, or to overwrite existing entries.

You can use an XUSER key together with the DBM option -U to log on to Database Manager (see: user_logon). This means that you do not need to specify a DBM operator name and password (DBM option –u), since Database Manager CLI takes the required data from the relevant XUSER entry.

Recommendation Recommendation

We recommend that you use the XUSER program directly to create or change XUSER entries instead of using this DBM option.

End of the recommendation.

Note Note

You can only access a database with a user stored under an XUSER entry if that user has been actually created for this database. DBM operators can be created using Database Manager. (see: user_create). Also database users can be created using Database Manager (see: db_execute).

Unlike user names and passwords, Database Manager treats user keys as case-sensitive. If you define the user keys DBMUSR and DEFAULT for the default values of Database Manager, write the user keys in upper-case letters.

End of the note.
Creating XUSER Entries

To create new XUSER entries, no logon to the XUSER program ist required.

You can define a user key for an XUSER entry, under which this entry is to be stored. You can also instruct Database Manager CLI to generate this user key from a combination of the database name and the database computer name. You do so by specifying the database name and database computer name in addition to the user name and password.

To work in Database Manager, we recommend that you create an XUSER entry with the user key DBMUSR and the user data of the first DBM operator. If you specify the DBM option -U without a user key when you log on (see Calling Database Manager CLI), Database Manager CLI attempts to access this key implicitly.

Other functions require that you log on to Database Manager with the user data stored under the DEFAULT user key. For this reason, we recommend that you also create an XUSER entry with the user key DEFAULT and the user data of a valid database user.

Changing XUSER Entries

To change XUSER entries, log on with the data of the user that you want to change, or with the data stored under the DEFAULT XUSER key. If you log on with the data stored under the DEFAULT XUSER key, you are authorized to change all XUSER entries.

To identify the XUSER entry you want to change, use the DBM option -uk, or a combination of the database name and the database computer name (DBM options -d and -n).

Structure

-us <new_user_name>,<new_user_password>

Options
Option | Description
<new_user_name> | Name of the user you want to save in the key
<new_user_password> | Password of the user you want to save in the key

Example

Creating a New XUSER Entry
Saving Under a Defined User Key

Call Database Manager CLI, create a new XUSER entry for the user BORIS with the password PINK, save this user data under the user key DEFAULT):

>dbmcli -uk <user_key> -us <new_user_name>,<new_user_password> [options]

with example data:

>dbmcli -uk DEFAULT -us BORIS,PINK

Saving Under a Generated User Key

Call Database Manager CLI, create a new XUSER entry for the user MONA with the password RED), save this user data under the user key, which is generated from the database name DEMODB and the database computer name GENUA:

>dbmcli -d <database_name> [-n <database_computer>] -us <new_user_name>,<new_user_password> [options]

with example data:

>dbmcli -d DEMODB -n GENUA -us MONA,RED

Changing an Existing XUSER Entry
Logging on with the Data of the User to be Changed

Call Database Manager CLI, log on to the XUSER program with the DBM option -u and the data of the XUSER entry to be changed (user MONA, password RED), change the data of this XUSER entry to the user DAVID with the password BLUE,

  • and specify the XUSER entry to be changed by entering the user key (example: user key MOKEY):

    >dbmcli -u <user_name>,<user_password> -uk <user_key> -us <new_user_name>,<new_user_password> [options]

    with example data:

    >dbmcli -u DAVID,BLUE -uk DAKEY -us BORIS,PINK

  • or specify the XUSER entry to be changed using the combination of the database name and the database computer name (DEMODB and GENUA):

    >dbmcli -u <user_name>,<user_password> -d <database_name> [-n <database_computer>] -us <new_user_name>,<new_user_password> [options]

    with example data:

    >dbmcli -u DAVID,BLUE -d DEMODB -n GENUA -us BORIS,PINK

Logging on with the User Key DEFAULT

Call Database Manager CLI, log on to the XUSER program using the DBM option -ux and the data stored under the DEFAULT XUSER key (user BORIS, password PINK),

  • and specify the XUSER entry to be changed using the DBM option –uk (user key: DAKEY), specify the new user data (user MONA, password RED) using the DBM option –us:

    >dbmcli -ux <default_user_name>,<default_user_password> -uk <user_key> -us <new_user_name>,<new_user_password> [options]

    with example data:

    >dbmcli -ux BORIS,PINK -uk DAKEY -us MONA,RED

  • or specify the XUSER entry to be changed using a combination of the database name DEMODB and the database computer name GENUA, specify the new user data (user name MONA, password RED) using the DBM option -us:

    >dbmcli -ux <default_user_name>,<default_user_password> -d <database_name> [-n <database_computer>] -us <new_user_name>,<new_user_password> [options]

    with example data:

    >dbmcli -ux BORIS,PINK -d DEMODB -n GENUA -us MONA,RED

More Information

Utilities, XUSER


Analyzing Databases - SAP Documentation

Syntax documentation Analyzing Databases

You can analyze individual functions of the database using DBM commands.

Note Note

However, you do not require these analyses for normal database operation. Use these functions only when you are told to do so by technical support.

End of the note.

Commands for the Database Trace Function

Commands for Accessing Database Files

Commands for Using Database Analyzer


Creating and Deleting Databases - SAP Documentation

Syntax documentation Creating and Deleting Databases

Standard Commands
DBM Command | Description
auto_load_systab | Updating system tables automatically
db_drop | Deleting the current database
db_enum | Displaying a list of all registered databases
db_reinstall | Resetting the database
load_systab | Loading the system tables
load_tutorial | Loading the SQL tutorial data

Other Commands for Creating and Deleting Databases


Operating Modes in Database Manager CLI - SAP Documentation

Function documentation Operating Modes in Database Manager CLI

In the Database Manager CLI program, you have the option of executing the DBM commands individually, one after the other in the sequence specified. To do this, Database Manager CLI is called for each command and is then closed again after the command has been executed (command mode).

It is also possible to call Database Manager CLI in session mode and to execute the DBM commands one after the other without having to log on to Database Manager more than once (session mode).

A third option is to create a script, which can be called and processed in Database Manager CLI (script mode). If you work in script mode, you can transmit a series of DBM commands stored in a script file to Database Manager and execute them. To do this, you call Database Manager CLI with the DBM option -i <file_name>.

If you want to execute DBM commands, which require a database session or a service session, use Database Manager in session mode or script mode.

We recommend that you also work in script mode if you want a succession of DBM commands to be executed in the background.

Example

Using Command Mode to Activate the Automatic Log Backup Function

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the operational state of the database:

>dbmcli –u OLEG,MONDAY –d DEMODB db_online

OK

or:

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the database DEMODB, and activate the automatic log backup function:

>dbmcli –u OLEG,MONDAY –d DEMODB autolog_on

OK

Using Session Mode to Backu Up the DEMODB Database

  1. Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, and connect to the database DEMODB:

    >dbmcli -u OLEG,MONDAY -d DEMODB

    dbmcli on DEMODB>

  2. Open a database session:

    dbmcli on DEMODB>db_connect

    OK

  3. Start a data backup using the backup template DemoDataCompl:

    dbmcli on DEMODB>backup_start DemoDataCompl

    OK

    Returncode 0

    Date 20051229

    Time 00104810

    Server GENUA

    Database DEMODB

    Kernel Version Kernel 7.6.00 Build 016-123-109-428

    Pages Transferred 384

    Pages Left 0

    Volumes 1

    Medianame DemoDataCompl

    Location Backups 2005\Data\completeDataJan

    Errortext

    Label DAT_000000003

    Is Consistent true

    First LOG Page 15939

    Last LOG Page

    DB Stamp 1 Date 20051229

    DB Stamp 1 Time 00104809

    DB Stamp 2 Date

    DB Stamp 2 Time

    Page Count 365

    Devices Used 1

    Database ID GENUA:DEMODB_20051201_111620

    Max Used Data Page 0

    ---

    dbmcli on DEMODB>

Using Script Mode to Create a New Database

  1. Create the script file demoscript.txt and save it here:

    C:\test\DBM

  2. Copy the following template to the script file and save your entries:

    db_create DEMODB DBM,DBM

    param_startsession

    param_init OLTP

    param_put SessionTimeout 0

    param_put CacheMemorySize 1000

    param_put MaxDataVolumes 64

    param_put MaxUserTasks 10

    param_checkall

    param_commitsession

    param_addvolume 1 DATA DISKD0001 F 32768

    param_addvolume 1 LOG DISKL0001 F 6400

    db_admin

    db_activate DBADMIN,SECRET

    load_systab

    auto_update_statistics ON

    auto_extend ON

    load_tutorial

    db_execute SET LOG AUTO OVERWRITE ON

  3. Call Database Manager CLI with the option for executing the script file:

    >dbmcli -i "C:\test\DBM\demoscript.txt"

    >db_create DEMODB DBM,DBM

    OK

    ---

    >param_startsession

    OK

    ---

    >param_init OLTP

    OK

    ---

    >param_put SessionTimeout 0

    OK

    ---

    >param_put CacheMemorySize 2500

    OK

    ---

    >param_put UseExtendedOracleSQLMode NO

    OK

    ---

    >param_put MaxDataVolumes 64

    OK

    ---

    >param_put MaxUserTasks 10

    OK

    ---

    >param_checkall

    OK

    ---

    >param_commitsession

    OK

    ---

    >param_addvolume 1 DATA DISKD0001 F 32768

    OK

    ---

    >param_addvolume 1 LOG DISKL0001 F 6400

    OK

    ---

    >db_admin

    OK

    ---

    >db_activate DBADMIN,SECRET

    OK

    ---

    >auto_update_statistics ON

    OK

    ---

    >auto_extend ON

    OK

    ---

    >load_systab

    OK

    0,OK: everything works fine

    0,""c:\program files\sdb\maxdb1\bin\x_python" "c:\program files\sdb\maxdb1\env\lsystab.py" -R "c:\program files\sdb\maxdb1" -d DEMODB -u DBADMIN,*"

    Removing obsolete objects

    Installing Loader tables

    Installing messages and help

    Installing SYSDBA tables

    Installing comments for SYSDBA tables

    Installing precompiler tables

    Installing system tables for R3 backup information

    Installing ODBC tables

    Installing system tables for ORACLE (V7) mode

    Installing data dictionary tables and views

    Installing synonyms for oracle system tables

    Installing comments on oracle system tables

    Installing tables for WebAgent

    Installing tables for Repository

    Installing DOMAIN tables

    Installing comments for DOMAIN tables

    Installing Views as replacement for SHOWs

    Installing Database Manager tables

    Installing SYSINFO tables

    Installing comments for SYSINFO tables

    Installing support for UDE (User Defined Extensions)

    Installing tables for JDBC Database Metadata

    Installing tables for SQLDBC Database Metadata

    Installing additional triggers

    ==================================

    Installation successfully finished

    ==================================

    ---

    >load_tutorial

    OK

    0,OK: everything works fine

    0,""c:\program files\sdb\maxdb1\bin\x_python" "c:\program files\sdb\maxdb1\env\../demo/ltutorial.py" -R "c:\program files\sdb\maxdb1" -d DEMODB -u DBADMIN,*"

    HOTEL

    ==================================

    Installation successfully finished

    ==================================

    ---

    >db_execute SET LOG AUTO OVERWRITE ON

    OK

    ---


Input Help - SAP Documentation

Function documentation Input Help

The input help of Database Manager assists you in entering DBM commands in the command line.

You can use the input help to link multi-line entries in Database Manager, to mark lines as comments and thus prevent them from being executed, or to transmit commands to the local operating system without having to exit Data Manager input window.

Prerequisites

You are in script mode or session mode.

Features

The following input help is available:
Syntax | Description
# | Additional Notes
! | Local System Call
/ | Linking Lines
< | Linking Lines


Commands for Accessing Database Files - SAP Documentation

Syntax documentation Commands for Accessing Database Files

Commands for Experts
DBM Command | Description
diag_histlist | Displaying the diagnosis history
file_getfirst | Opening a database file
file_getlist | Displaying a list of database files
file_operation | Editing the log files of a database
Commands for Support
DBM Command | Description
diag_pack | Packing database files
file_restore | Restoring a database file
Commands for Use in Programs
DBM Command | Description
file_getnext | Scrolling through a database file
Internal Commands
DBM Command | Description
file_backup | Backing up a database file


Commands for the Database Trace Function - SAP Documentation

Syntax documentation Commands for the Database Trace Function

Commands for Support
DBM Command | Description
trace_clear | Deleting the contents of the database trace
trace_flush | Creating the binary file of the database trace
trace_off | Deactivating the database trace
trace_on | Activating the database trace
trace_prot | Creating the text version of the database trace
trace_show | Displaying the logged activities of the database trace
Commands for Use in Programs
DBM Command | Description
trace_protopt | Displaying the command options for creating the text version of the database trace


Commands for Using Database Analyzer - SAP Documentation

Syntax documentation Commands for Using Database Analyzer

Commands for Experts
DBM Command | Description
auto_dbanalyzer | Automatically starting and stopping Database Analyzer
dban_delete | Deleting the Database Analyzer log files
dban_start | Calling Database Analyzer
dban_state | Displaying the function of Database Analyzer
dban_stop | Exiting Database Analyzer


Comment: # - SAP Documentation

Syntax documentation Comment: #

Use

If you begin a command with a number sign, it will be ignored by Database Manager and not executed.

Prerequisites

You have called Database Manager CLI in session mode or in script mode.

Syntax

#<dbm_command>


Accessing Databases Using SQL - SAP Documentation

Syntax documentation Accessing Databases Using SQL

Standard Commands
DBM Command | Description
db_connect | Opening a database session
db_release | Ending a database session

Other Commands for Accessing a Database Using SQL


Managing Hot Standby Systems - SAP Documentation

Syntax documentation Managing Hot Standby Systems

To set up and manage hot standby systems, you need a very thorough knowledge of both system-internal processes and of how to manage a database system. Your system's hardware and software also needs to fulfill certain special requirements.

Only experienced database administrators with all the necessary knowledge should set up a hot standby system.

Expert Commands for Managing Hot Standby Systems


Using the Scheduler - SAP Documentation

Syntax documentation Using the Scheduler

Standard Commands
DBM Command | Description
scheduler_create_job | Creating a scheduler job
scheduler_delete_job | Deleting a scheduler job
scheduler_list_jobs | Displaying a list of all scheduler jobs
scheduler_start | Starting the scheduler
scheduler_state | Displaying the function of the scheduler
scheduler_stop | Stopping the scheduler

Other Commands for Using the Scheduler


Other Commands for Accessing a Database Using SQL - SAP Documentation

Syntax documentation Other Commands for Accessing a Database Using SQL

Commands for Experts
DBM Command | Description
db_execute | Executing an administration command or an SQL statement (displaying the complete result list)
db_executenice | Executing an administration command or an SQL statement (displaying the result record-by-record)
db_fetch | Scrolling through the results of an administration command or an SQL statement (displaying the complete result list)
db_fetchnice | Scrolling through the results of an administration command or an SQL statement (displaying the result record-by-record)
sql_connect | Opening an SQL Session
sql_execute | Executing an SQL statement (displaying the complete result list)
sql_executenice | Executing an SQL statement (displaying the result record-by-record)
sql_fetch | Scrolling through the results of an SQL statement (displaying the complete result list)
sql_fetchnice | Scrolling through the results of an SQL statement (displaying the result record-by-record)
sql_info | Displaying the structure of a result set
sql_release | Ending an SQL session


Other Commands for Backup Templates - SAP Documentation

Syntax documentation Other Commands for Backup Templates

Commands for Use in Programs
DBM Command | Description
medium_date | Displaying the change date of the template definition file
Internal Commands
DBM Command | Description
medium_migrate | Adopting an existing template definition
medium_delete_nodistribute | Internal command relating to hot standby configurations
medium_put_nodistribute | Internal command relating to hot standby configurations


Other Commands for Creating and Deleting Databases - SAP Documentation

Syntax documentation Other Commands for Creating and Deleting Databases

Commands for Experts
DBM Command | Description
db_activate | Initializing a database
db_create | Creating a database
db_migratecatalog | DBM command used only by SAP applications
db_reg | Updating the registration of a database
db_unreg | De-registering a database
Commands for Support
DBM Command | Description
load_lcapps | Loading the application libraries


Other Commands for Using Events of the Database - SAP Documentation

Syntax documentation Other Commands for Using Events of the Database

Commands for Use in Programs
DBM Command | Description
event_available | Displaying whether any events were triggered
event_receive | Displaying a triggered event
event_release | Ending an event session
event_wait | Waiting for an event
Internal Commands
DBM Command | Description
dbmevtdisp_internal_add | Internal system command
dbmevtdisp_internal_communication | Internal system command
dbmevtdisp_internal_delete | Internal system command


Other Commands for Configuring Databases - SAP Documentation

Syntax documentation Other Commands for Configuring Databases

Commands for Experts
DBM Command | Description
param_addvolume | Changing volume parameters
param_delvolume | Deleting volume parameters
param_getvolsall | Displaying the data of all volume parameters
param_getvolume | Displaying the data of an individual volume parameter


Other Commands for Restoring - SAP Documentation

Syntax documentation Other Commands for Restoring

Commands for Experts
DBM Command | Description
recover_cancel | Canceling an interrupted restore, or a backup check
recover_ignore | Continuing a parallel restore, or a backup check
recover_replace | Specifying the succeeding data carrier for a restore operation, or a backup check
recover_volume | Restoring a damaged volume
service_connect | Opening a service session
service_release | Closing a service session
Commands for Use in Programs
DBM Command | Description
db_activate_req | DBM command used only by DBM client programs
recover_cancel_req | DBM command used only by DBM client programs
recover_ignore_req | DBM command used only by DBM client programs
recover_replace_req | DBM command used only by DBM client programs
recover_req | DBM command used only by DBM client programs


Other Commands for Backups - SAP Documentation

Syntax documentation Other Commands for Backups

Commands for Experts
DBM Command | Description
archive_stage | Creating a single archive of backup files (only for log backups)
archive_stage_repeat | Creating multiple archives of backup files (only for log backups)
backup_cancel | Canceling an interrupted backup
backup_ignore | Continuing with a backup without the requested succeeding data carrier
backup_replace | Specifying the succeeding data carrier for a backup action
Commands for Use in Programs
DBM Command | Description
autolog_cancel | Exiting an automatic log backup which has been interrupted
backup_cancel_req | DBM command used only by DBM client programs
backup_ignore_req | DBM command used only by DBM client programs
backup_replace_req | DBM command used only by DBM client programs
backup_reply_available | DBM command used only by DBM client programs
backup_reply_receive | DBM command used only by DBM client programs
backup_req | DBM command used only by DBM client programs


Other Commands for Managing the Database Manager Tool - SAP Documentation

Syntax documentation Other Commands for Managing the Database Manager Tool

Commands for Experts
DBM Command | Description
dbm_configget | Displaying a configuration parameter of Database Manager
dbm_configset | Changing a configuration parameter of Database Manager
dbm_stop | Ending the DBM server process
Commands for Support
DBM Command | Description
dbm_listmemoryerror | Internal system command
dbm_shm_info | Displaying information about the shared memory
dbm_shm_reset | Resetting the shared memory
dbm_shm_unlock | Unlocking the shared memory
dbm_trace | Starting and stopping the DBM server trace function
Commands for Use in Programs
DBM Command | Description
dbm_next | Internal system command
Internal Commands
DBM Command | Description
dbm_getpid | Internal system command
dbm_execute_serverprocess | Internal system command


Other Commands for Information on Backups - SAP Documentation

Syntax documentation Other Commands for Information on Backups

Commands for Experts
DBM Command | Description
backup_history_close | Closing the backup history
backup_history_open | Retrieving the backup history
Commands for Support
DBM Command | Description
load_r3tab | Loading SAP-specific tables
Commands for Use in Programs
DBM Command | Description
backup_ext_ids_listnext | Scrolling through the external backup IDs
backup_history_date | Change date of the backup history
backup_history_listnext | Scrolling through the backup history
recover_check_req | DBM command used only by DBM client programs
Internal Commands
DBM Command | Description
backup_history_append | Internal system command


Other Commands for Managing Database Manager Operators - SAP Documentation

Syntax documentation Other Commands for Managing Database Manager Operators

Commands for Experts
DBM Command | Description
user_sysdba | Transferring the data of the database system administrator to the Database Manager
user_system | Logging on to the operating system
Commands for Support
DBM Command | Description
user_sap | Storing special users


Other Commands for Using the Scheduler - SAP Documentation

Syntax documentation Other Commands for Using the Scheduler

Commands for Experts
DBM Command | Description
scheduler_activate_job | Creating a scheduler job
scheduler_deactivate_job | Deactivating a scheduler job


Other Commands for Database Manager Help - SAP Documentation

Syntax documentation Other Commands for Database Manager Help

Commands for Use in Programs
DBM Command | Description
get_default | DBM command used only by DBM client programs


Other Commands for Software Installation - SAP Documentation

Syntax documentation Other Commands for Software Installation

Commands for Experts
DBM Command | Description
dbm_getpath | Displaying version-independent directories
inst_info | DBM command used only by SAP applications
inst_reg | Registering a version of the database software
inst_unreg | Deleting registration of a database software version
package_info | DBM command used only by SAP applications
service_register | Registering the service database in the system
service_unregister | Unregistering the service database in the system
Commands for Support
DBM Command | Description
exec_nipingsrv | DBM command used only by SAP applications
exec_sdbinfo | DBM command used only by SAP applications


Other Commands for Controlling Databases - SAP Documentation

Syntax documentation Other Commands for Controlling Databases

Commands for Experts
DBM Command | Description
db_clear | Deleting the runtime information after a database error
db_cons | Using the XCONS tool (database console)
db_restartinfo | Displaying the restart information after importing a backup
db_speed | Displaying the database kernel variant
exec_lcinit | Executing the liveCache initialization script
show | Displaying information about the database
show_list | Displaying the keywords for information about the database
show_next | Scrolling through the information about the database
Commands for Use in Programs
DBM Command | Description
info_next | Scrolling through the status information of the database


How Database Manager CLI Works - SAP Documentation

Background documentation How Database Manager CLI Works

Database Manager CLI is the client program of Database Manager. With this program you connect to the DBM server on the computer on which you want to create a new database or manage an existing database.

When you create a database, you define the very first user of the database. This user is called the first DBM operator.

Initially, only this operator can log on to the new database using Database Manager. During the configuration of a new database, you define the database system administrator.

Only the database system administrator and DBM operators can log on to Database Manager and execute DBM commands for managing the database for which they were created.

The first DBM operator and the database system administrator can log on to all database tools. They have the most comprehensive permissions for working with a database. They can use DBM commands and DBM options to create database users and, if required, more DBM operators for a database.

To be able to execute DBM commands, the respective user needs to have the necessary server permissions. The first DBM operator and the database system administrator have all server permissions.

To execute DBM commands, the current database has to be be in the ONLINE operational state. Exceptions to this rule are explicitly specified in the “Prerequisites” section of a DBM command description.

Calling up Database Manager CLI is equivalent to opening a session with Database Manager. Once the specified DBM command has been processed, the system closes the session with Database Manager. If you want to execute a series of DBM commands, you call Database Manager CLI in session mode.

The activities logged by Database Manager are written to the log files of Database Manager.

More Information

Database Administration, Managing Users, Log Files


Linking Lines: / - SAP Documentation

Syntax documentation Linking Lines: /

Use

If you want to enter a multiline DBM command, close each line with a slash. This tells the system that the command is not complete. If you choose Enter at the end of a line that closes with a slash, the command is not executed.

The entire command is only transmitted to Database Manager and executed when you choose Enter without having entered a slash in the current line.

Prerequisites

You have called Database Manager CLI in session mode or in script mode.

Syntax

<command_line_beginning>/

<command_line_continued>/

<command_line_continued>/

<command_line_end>

Example

>dbm_version/

BUILD

OK

DBMServer 7.6.00 Build 009-103-092-650


Linking Lines: < - SAP Documentation

Syntax documentation Linking Lines: <

Use

Using the less than (<) character, you can send multiline commands to Database Manager. The <command_line_beginning> character string is linked to the following lines until a line beginning with <stop_token> is found.

The line with <stop_token> is not incorporated into the command.

Prerequisites

  • You have called Database Manager CLI in session mode or in script mode.

  • All lines are separated from one another by a line feed.

Syntax

'<'<stop_token> <command_line_beginning>

Example

><stop dbm_version

BUILD

stop

OK

DBMServer 7.6.00 Build 009-103-092-650


Commands for Managing Hot Standby Systems - SAP Documentation

Syntax documentation Commands for Managing Hot Standby Systems

Commands for Experts
DBM Command | Description
hss_addstandby | Defining a standby database
hss_copyfile | Copying database files within a cluster
hss_enable | Defining a database as the master database
hss_execute | Executing DBM commands in a standby database
hss_getnodes | Displaying hot standby parameters
hss_removestandby | Deleting a standby database


Commands for Changing Database Parameters - SAP Documentation

Syntax documentation Commands for Changing Database Parameters

Commands for Experts
DBM Command | Description
param_abortsession | Ending a parameter session
param_checkall | Checking all database parameters
param_commitsession | Confirming changes to the database parameter file
param_copy | Copying a database parameter file
param_directdel | Deleting a database parameter
param_directget | Displaying the value of a parameter from the database parameter file
param_directgetall | Displaying the value of all parameters in the database parameter file
param_directput | Changing a value directly in the database parameter file
param_extget | Displaying the individual data of a database parameter
param_extgetall | Displaying the data of all database parameters
param_getdefault | Displaying the system default value
param_getexplain | Displaying the stored explanatory text
param_getfull | Displaying all the data of a database parameter
param_gethelp | Displaying the stored help text
param_gethistory | Opening the database parameter history
param_getproperties | Displaying all the properties of a database parameter
param_gettype | Displaying the data type of a database parameter
param_getvalue | Displaying the current value of a database parameter
param_init | Initializing the database parameters for a new database
param_put | Changing the value of a database parameter
param_restore | Resetting the parameter file to a previous version
param_rmfile | Deleting the database parameter file
param_startsession | Opening a parameter session
param_versions | Displaying a list of parameter files
Commands for Use in Programs
DBM Command | Description
param_directgetallnext | Scrolling through the parameter values in the database parameter file
param_extgetallnext | Scrolling through all database parameter data
param_gethistorynext | Scrolling through the database parameter history


Configuring Databases - SAP Documentation

Syntax documentation Configuring Databases

Standard Commands for Configuring the Volumes
DBM Command | Description
auto_extend | Extending the data area automatically
db_addvolume | Adding volumes
db_deletevolume | Deleting a data volume

Other Commands for Configuring Databases

Commands for Changing Database Parameters

Changing the database parameters is no standard task of a database administrator. A database is fully functional with the configuration defined at the time of its creation. Subsequent changes to individual database parameters require comprehensive knowledge of the internal processes and interrelationships in a database. To ensure the functionality of the database system and the security of the data, changes to database parameters should only be made by trained, experienced professionals.

Commands for Changing Database Parameters


Local System Call: ! - SAP Documentation

Syntax documentation Local System Call: !

Use

If you are logged on to Database Manager and want to execute a command in the local computer’s operating system, you do not need to leave the input window of Database Manager. If you put an exclamation mark in front of the command, it is not transmitted to Database Manager. Instead, it is executed in the local command interpreter of the operating system.

Prerequisites

You have called Database Manager CLI in session mode or in script mode.

Syntax

!<os_command>

Example

dbmcli>!dir


Using Events of the Database - SAP Documentation

Syntax documentation Using Events of the Database

Standard Commands
DBM Command | Description
event_delete | Deactivating the event
event_dispatcher | Managing the event dispatcher function
event_list | Displaying a list of active events
event_list_categories | Displaying event categories and their properties
event_set | Defining and activating an event

Other Commands for Using Events of the Database

See also:

Glossary, Event


Optimizing the SQL Access to a Database - SAP Documentation

Syntax documentation Optimizing the SQL Access to a Database

Standard Commands
DBM Command | Description
auto_recreate_bad_index | Recreating bad indexes automatically
auto_update_statistics | Updating the optimizer statistics automatically
sql_updatestat | Updating the optimizer statistics
sql_updatestat_per_systemtable | Updating the optimizer statistics as per system table SYSUPDSTATWANTED


SharedMemoryAdmin: Managing the Shared Memory - SAP Documentation

Background documentation SharedMemoryAdmin: Managing the Shared Memory

Operators, who have been assigned the SharedMemoryAdmin server permission, can execute the following DBM commands:

DBM Command | Description
dbm_shm_info | Displaying the shared memory information
dbm_shm_reset | Resetting the shared memory
dbm_shm_unlock | Unlocking the shared memory


Backing Up and Restoring Databases - SAP Documentation

Syntax documentation Backing Up and Restoring Databases

Standard Commands for Backup Templates
DBM Command | Description
medium_delete | Deleting a backup template
medium_get | Displaying the data of a backup template
medium_getall | Displaying a list of all defined backup templates
medium_put | Defining or changing the data of a backup template

Other Commands for Backup Templates

Standard Commands for Backing Up
DBM Command | Description
autolog_off | Deactivating the automatic log backup function
autolog_on | Activating the automatic log backup function
autolog_show | Displaying the automatic log backup function
backup_start | Backing up the database
backup_state | Displaying the current backup status

Other Commands for Backups

Standard Commands for Information on Backups
DBM Command | Description
backup_ext_ids_forget | Releasing the memory occupied by external backup IDs
backup_ext_ids_get | Retrieving external backup IDs
backup_ext_ids_getfromtool | Retrieving backup information stored in the backup tool
backup_ext_ids_list | Displaying information generated by the backup tool
backup_history_list | Displaying the backup history
medium_label | Displaying backup information in the ONLINE or ADMIN operational state
medium_labeloffline | Displaying backup information in the OFFLINE operational state
recover_check | Checking a backup
recover_state_check | Displaying the current status of a backup check

Other Commands for Information on Backups

Standard Commands for Restoring
DBM Command | Description
autorecover | Restoring the database automatically
recover_config | Restoring the parameter file from a backup
recover_start | Restoring the database
recover_state | Displaying the current status of a restore action
sql_recreateindex | Restoring a damaged index

Other Commands for Restoring


Software Installation - SAP Documentation

Syntax documentation Software Installation

Standard Commands
DBM Command | Description
inst_enum | Displaying a list of all registered versions of the database software

Other Commands for Software Installation


Managing Database Manager Operators - SAP Documentation

Syntax documentation Managing Database Manager Operators

Standard Commands
DBM Command | Description
user_create | Creating a DBM operator
user_delete | Deleting a DBM operator
user_get | Displaying a DBM operator's properties
user_getall | Displaying the list of DBM operators
user_getrights | Displaying the server permissions
user_logon | Logging on to Database Manager
user_name_get | Displaying your current logon name in Database Manager
user_put | Changing a DBM operator's properties
user_rename | Changing the name of a DBM operator

Other Commands for Managing Database Manager Operators


Installation Manual - SAP Documentation

Component documentation Installation Manual

This documentation describes the basics for installing and uninstalling SAP MaxDB software, creating databases, updating the database software, and upgrading databases on all operating system platforms supported by SAP MaxDB.

You can use the SAP MaxDB software to create, use, and manage SAP MaxDB databases. You can use a SAP MaxDB database as the database for an SAP system and as a less expensive alternative to databases from other vendors for your own or third-party applications as well.

A Community Edition of SAP MaxDB software can be downloaded at https://www.sdn.sap.com/irj/sdn/maxdb-downloads. Information about the license conditions that apply for the use of SAP MaxDB outside of SAP systems can be found at https://www.sdn.sap.com/irj/sdn/maxdb. It is also displayed when you download the installation packages from that website.

Download the Database Software Package plus the Database Studio Tools Package, which contains the administration tool for SAP MaxDB databases.

The current version is SAP MaxDB 7.8.

Prior to version 7.7, SAP MaxDB was delivered under the names MaxDB and SAP DB.

For information about the basic concept of SAP MaxDB installations, see Software Overview.

For descriptions of the installation, upgrade, or uninstallation procedures, see Using Installation Manager.

In special cases you might want to install, upgrade, or uninstall the database software in the command line. For that purpose, see Installation, Upgrade and Uninstalling in the Command Line.

Note Note

This documentation is related to SAP MaxDB software of version 7.5 or higher. For installing, updating, or upgrading SAP MaxDB software of a lower version, see the SAP MaxDB 7.6 Library at http://maxdb.sap.com/documentation/.

End of the note.

Constraints

This documentation is not relevant for installing or uninstalling SAP MaxDB software in SAP systems.

Installing and uninstalling the SAP MaxDB software required for SAP systems is described in SAP-specific guides. SAP customers can find more information in SAP Note 767598.

SAP customers receive the SAP MaxDB software with the SAP installation CD, or can obtain it through the SAP Service Marketplace at http://service.sap.com.

SAP customers can find information about operating systems and architectures that support SAP MaxDB in the Product Availability Matrix (PAM) at http://service.sap.com/pam.

More Information

Supported Platforms: https://www.sdn.sap.com/irj/sdn/maxdb?rid=/webcontent/uuid/7001df5e-549f-2a10-4487-f818b3c52031

Product Availability Matrix: https://www.sdn.sap.com/irj/sdn/maxdb?rid=/webcontent/uuid/30501665-8e9b-2a10-9fa9-cedf4c9d2095

Database Administration

Concepts of the Database System


Number Generators for Tables - SAP Documentation

Background documentation Number Generators for Tables

You can use the CREATE SEQUENCE statement to generate a sequence, and thus, in turn, an implicit number generator (automatically-generated sequence of numbers). This is commonly used for generating a primary key, for example.

Each time you access a sequence, you can determine the next available value of the number generator and use it. You can get the values of the number generator from the pseudo columns NEXTVAL and CURRVAL. These values are always integers.

  • NEXTVAL shows the next available value generated by the number generator

  • CURRVAL shows the current value generated by the number generator within the database session

Using INSERT and UPDATE statements, the current and next available sequence values can be entered in any column of a table if the data type of the column allows it. It is not possible, however, to define the next available or current value as the DEFAULT value of a column. Both values must always be specified explicitly.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Sequence

Use the CREATE SEQUENCE statement to create the sequence sequ. Enter the sequence name and the first sequence value (START WITH <integer>, default value 1). Specify the increment by which the next value in the sequence is to be generated (INCREMENT BY <integer>, default value 1).

CREATE SEQUENCE hotel.sequ

  START WITH 1

  INCREMENT BY 1

See also: SQL Reference Manual, CREATE SEQUENCE Statement (create_sequence_statement)

Using a Sequence

For the following example, create the tables pers1 and pers2.

CREATE TABLE hotel.pers1

(pno FIXED(6),

 firstname CHAR (20),

 name CHAR(20))

//

CREATE TABLE hotel.pers2

(pno FIXED(6),

 firstname CHAR (20),

 name CHAR(20))

One Number Generator for Different Tables

You can use the number generator generated with the sequ sequence in your SQL statements. To do so, enter the keyword NEXTVAL after the sequence name. If you want to use the number generator in different tables, specify this in the desired tables with <sequence_name>.NEXTVAL.

INSERT INTO hotel.pers1 VALUES (hotel.sequ.NEXTVAL,'Mary','Jackson')

//

INSERT INTO hotel.pers2 VALUES (hotel.sequ.NEXTVAL,'Billy','Jackson')

//

INSERT INTO hotel.pers1 VALUES (hotel.sequ.NEXTVAL,'Lucy','Baker')

//

INSERT INTO hotel.pers2 VALUES (hotel.sequ.NEXTVAL,'Henry','Baker')

//

INSERT INTO hotel.pers1 VALUES (hotel.sequ.NEXTVAL,'Anna','Miller')

//

INSERT INTO hotel.pers2 VALUES (hotel.sequ.NEXTVAL,'Mike','Miller')

//

INSERT INTO hotel.pers1 VALUES (hotel.sequ.NEXTVAL,'Peggy','Miller')

//

SELECT * FROM hotel.pers1

Result

PNO | FIRSTNAME | NAME
1 | Mary | Jackson
3 | Lucy | Baker
5 | Anna | Miller
7 | Peggy | Miller

SELECT * FROM hotel.pers2

Result

PNO | FIRSTNAME | NAME
2 | Billy | Jackson
4 | Henry | Baker
6 | Mike | Miller
Displaying the Current Value of the Number Generator

You can use the DUAL table, which is automatically generated by the database system, to display the current value of the number generator. The DUAL table can be used by all database users. As the DUAL table has only one row, you can use it to display the value of the number generator using a SELECT statement.

SELECT hotel.sequ.CURRVAL FROM dual

Result

 | EXPRESSION1
1 | 7

If <sequence_name>.NEXTVAL has not been used in the current database session, <sequence_name>.CURRVAL cannot be utilized.

See also: SQL Reference Manual, Specification of Values (extended_value_spec)

Using a Number Generator Value More Than Once

One of the ways to utilize a value from a number generator more than once is as follows: Enter the current value of the number generator <sequence_name>.CURRVAL in your SQL statement.

INSERT INTO hotel.pers1 VALUES (hotel.sequ.NEXTVAL,'Mary','Ford')

//

INSERT INTO hotel.pers2 VALUES (hotel.sequ.CURRVAL,'Mary','Ford')

//

SELECT * FROM hotel.pers1

Result

PNO | FIRSTNAME | NAME
1 | Mary | Jackson
3 | Lucy | Baker
5 | Anna | Miller
7 | Peggy | Miller
8 | Mary | Ford

SELECT * FROM hotel.pers2

Result

PNO | FIRSTNAME | NAME
2 | Billy | Jackson
4 | Henry | Baker
6 | Mike | Miller
8 | Mary | Ford

See also: Number Generator for a Single Table Column

Deleting the Number Generator

To delete a number generator, use the DROP SEQUENCE statement.

DROP SEQUENCE hotel.sequ

See also: SQL Reference Manual, DROP SEQUENCE Statement (drop_sequence_statement)

More Information

More examples for Data Definition


Data Query - SAP Documentation

Background documentation Data Query

For a complete syntax description of the SQL statements for data query, see Data Query in the SQL reference manual. Below are just a few examples of key SQL statements for data query.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Example

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

SELECT zip, name, state

  FROM hotel.city

    WHERE name = 'Seattle'

This data query means:

  • Search (SELECT)

  • The zip, name, state columns

  • From the city table of the hotel schema (FROM)

  • For the rows with the city name Seattle (WHERE)

The form of a simple SELECT statement is therefore SELECT... FROM... WHERE....

Result

ZIP | NAME | STATE
20005 | Seattle | WA
20019 | Seattle | WA
20037 | Seattle | WA
Other Examples

  • Selecting, Arranging and Renaming Columns

  • Selecting and Arranging Rows

  • Conditions: Comparison, AND, OR, BETWEEN, IN

  • Searching for Character Strings: LIKE

  • Negative Conditions: NOT

  • Creating Groups: GROUP BY, HAVING

  • Arithmetic Operations

  • Functions

  • Set Functions

  • Date and Time Calculations

  • Converting Values

  • Changing Character Strings

  • Information About Character Strings

  • Subquery: Internal Queries

  • Joins: Information From Several Tables

  • Set Operations: UNION, INTERSECT, EXCEPT


Database Functions - SAP Documentation

Background documentation Database Functions

You can define user-specific database functions. In an SQL statement, you can then use these user-defined database functions in the same way as any other predefined functions.

A database function can contain several SQL statements. A series of control structures are also available for the application programmer. You can program loops or branches, for example, within a database function.

Database functions are specialized database procedures that contain any number of input parameters but only one output parameter. The output parameter represents the result of the database function.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Database Function

To create a database function, use the CREATE FUNCTION statement.

CREATE FUNCTION hotel.avgprice (zip CHAR(5)) RETURNS FIXED(6,2) AS

     VAR sum FIXED(10,2); price FIXED(6,2);

     hotels INTEGER;

TRY

   SET sum = 0; SET hotels = 0;

   DECLARE functionresult CURSOR FOR

   SELECT price FROM hotel.room,hotel.hotel WHERE zip = :zip AND

   room.hno = hotel.hno AND type = 'single';

     WHILE $rc = 0 DO BEGIN

      FETCH functionresult INTO :price;

      SET sum = sum + price;

      SET hotels = hotels + 1;

     END;

CATCH

  IF $rc <> 100 THEN STOP ($rc, 'unexpected error');

CLOSE functionresult;

IF hotels > 0 THEN RETURN sum/hotels

  ELSE RETURN NULL;

The database function avgprice determines the average price for single rooms in hotels located within a specified zip code range.

Explanation

  • The input parameter is the zip code zip; the data type of the output value is specified after the keyword RETURNS.

  • The SQL statements (the SELECT statement, for example) and control structures (WHILE statement and an IF statement, for example) that are required for executing the desired function are defined after the keyword AS.

  • The variables required within the database function are defined after the keyword VAR.

  • Error Handling: If an SQL error occurs in the statement list between TRY and CATCH, the system branches directly to the statement that follows CATCH. The actual troubleshooting routine can be programmed in this statement.

  • SET can be used to assign values to the sum and hotels variables.

  • The DECLARE CURSOR statement is used to define the named result table functionresult.

  • The tables in the SELECT statement must always be specified completely, that is, with the owner specified. Note that the zip code is transferred as the parameter: :zip.

  • The WHILE statement enables statements to be repeated in response to certain conditions. The statement is executed as long as the search condition specified is met.

  • The FETCH statement assigns the values from the current row of the result table functionresult to parameters.

  • The $rc variable returns a numeric error code after a SELECT statement has been executed. The value 0 means that the SELECT statement was successfully executed.

  • An IF statement first evaluates the search condition. If this is met, the statement specified in the THEN branch is executed. Otherwise, the statement in the ELSE branch (if defined) is executed.

  • The CLOSE statement deletes the result table functionresult.

  • The output parameter is defined after the keyword RETURN.

See also:

SQL Reference Manual, CREATE FUNCTION Statement (create_function_statement), Routine (routine)

Evaluating System Tables, FUNCTIONS

Calling Up a Database Function

To call up a database function, follow the procedure for calling up a predefined function. When the hotel table with the SQL Statements for the HOTEL Demo Schema has been created and filled with data, you can try the following SELECT statement:

SELECT hno, hotel.avgprice(zip) avgprice

  FROM hotel.hotel

    WHERE hno < 100

Result

HNO | AVGPRICE
10 | 135
20 | 70
30 | 45
40 | 87.5
50 | 105
60 | 120
70 | 115
80 | 87.5
90 | 90

See also: SQL Reference Manual, Database Function Call (dbfunction_call)

Deleting a Database Function

To delete a database function, use the DROP FUNCTION statement.

DROP FUNCTION hotel.avgprice

You can use this SQL statement to delete the database function definition.

See also: SQL Reference Manual, DROP FUNCTION Statement (drop_function_statement)

More Information

More examples for Data Definition


Database Procedures - SAP Documentation

Background documentation Database Procedures

Database procedures are programs that can be called up from an application program in the same way as an SQL statement. A database procedure can contain several SQL statements. A series of control structures are also available for the application programmer. You can program loops or branches, for example, within a database procedure.

You can define both input and output parameters in order to transfer individual values to a database procedure or to obtain results.

You can use database procedures, for example, to formulate complex integrity rules that check the permissibility of values. In database procedures, operations can be provided for application objects. Any changes to these rules or operations can be made at a central location, namely in the database procedure. This means that they do not have to be made individually in each application. The programs are more clearly organized and, as a result, more user friendly.

Using database structures also makes it easier to grant privileges. All you have to do is grant the call privilege; you do not need to grant privileges for the addressed database objects.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Database Procedure

To create a database procedure, use the CREATE DBPROC statement.

CREATE DBPROC hotel.avg_price (IN zip CHAR(5), OUT avg_price FIXED(6,2)) AS

     VAR sum FIXED(10,2); price FIXED(6,2); hotels INTEGER;

TRY

   SET sum = 0; SET hotels = 0;

   DECLARE dbproccursor CURSOR FOR

   SELECT price FROM hotel.room,hotel.hotel WHERE zip = :zip AND

   room.hno = hotel.hno AND type = 'single';

     WHILE $rc = 0 DO BEGIN

       FETCH dbproccursor INTO :price;

       SET sum = sum + price;

       SET hotels = hotels + 1;

     END;

CATCH

  IF $rc <> 100 THEN STOP ($rc, 'unexpected error');

CLOSE dbproccursor;

IF hotels > 0 THEN SET avg_price = sum / hotels

  ELSE STOP (100, 'no hotel found');

The database procedure avg_price determines the average price for single rooms in hotels located within the specified zip code range.

Explanation

  • IN zip CHAR(5), OUT avg_price FIXED(6,2) : The input parameter is the zip code zip, the output parameter is the average price avg_price.

  • The SQL statements (in this example, a SELECT statement) and control structures (in this example, a WHILE and an IF statement) that are required for executing the desired procedure are defined after the keyword AS.

  • The variables required within the database procedure are defined after the keyword VAR.

  • Error Handling: If an SQL error occurs in the statement list between TRY and CATCH, the system branches directly to the statement that follows CATCH. The actual troubleshooting routine can be programmed in this statement.

  • SET can be used to assign values to the sum and hotels variables.

  • The DECLARE CURSOR statement is used to define the named result table dbproccursor.

  • The tables in the SELECT statement must always be specified completely, that is, with the owner specified. Note that the zip code is transferred as the parameter: :zip.

  • The WHILE statement enables statements to be repeated in response to certain conditions. The statement is executed as long as the search condition specified is met.

  • The FETCH statement assigns the values from the current row of the result table dbproccursor to parameters.

  • The $rc variable returns a numeric error code after a SELECT statement has been executed. The value 0 means that the SELECT statement was successfully executed.

  • An IF statement first evaluates the search condition. If this is met, the statement specified in the THEN branch is executed. Otherwise, the statement in the ELSE branch (if defined) is executed.

  • The CLOSE statement deletes the result table dbproccursor.

See also:

SQL Reference Manual, CREATE DBPROC[EDURE] Statement (create_dbproc_statement), Routine (routine)

Evaluating System Tables, DBPROCEDURES

Calling Up a Database Procedure

To call up a database procedure, use the CALL statement.

When the hotel table with the SQL Statements for the HOTEL Demo Schema has been created and filled with data, you can try the following CALL statement:

CALL hotel.avg_price ('20005', :avg_price)

Result

Out(1)

135

If the mode of a formal parameter in the database procedure is OUT, the corresponding expression must be a parameter specification. The CALL statement contains the parameter specification :avg_price.

See also: SQL Reference Manual, CALL Statement (call_statement)

Deleting a Database Procedure

To delete a database procedure, use the DROP DBPROC statement.

DROP DBPROC hotel.avg_price

You can use this SQL statement to delete the database procedure definition.

See also: SQL Reference Manual, DROP DBPROC[EDURE] Statement (drop_dbproc_statement)

More Information

More examples for Data Definition


Database Triggers - SAP Documentation

Background documentation Database Triggers

Database triggers are programs that implicitly start for a base table when an INSERT-, UPDATE- or DELETE statement is executed. A trigger can contain several SQL statements. A series of control structures are also available for the application programmer. You can program loops or branches, for example, within a trigger.

If, for example, you define for a base table a trigger that is triggered each time an INSERT statement is executed, the actions defined within the trigger are automatically executed each time a new entry is inserted in this table. You can make the execution of a trigger dependent on particular preconditions. You can also formulate UPDATE triggers for changing individual columns only.

You can use triggers to check that values are suitable before entering them in a table or to save values before changing them, for example. When programming a trigger, you can therefore access both the new and the old column values.

Once you have defined a trigger, you have to assign it to a base table or individual columns and to an action such as INSERT, UPDATE, DELETE.

To define a trigger for tables, you have to be the owner of the table in question and have the relevant authorization for carrying out the activities defined within the trigger.

If execution of a trigger fails, you can use ROLLBACK to reset the associated INSERT, UPDATE or DELETE statement.

A trigger can call other triggers implicitly and database procedures explicitly.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Database Trigger

To create a database trigger, use the CREATE TRIGGER statement.

CREATE TRIGGER hotel_update FOR hotel.hotel AFTER UPDATE EXECUTE

(TRY

IF NEW.hno <> OLD.hno

THEN UPDATE hotel.room SET hno = :NEW.hno WHERE hno = :OLD.hno;

CATCH

IF $rc <> 100

THEN STOP ($rc, 'unexpected error');)

The trigger ensures that the hotel number in the room table is also changed when a hotel number is changed in the hotel table.

Explanation

  • The trigger event UPDATE is specified after the keyword AFTER. The UPDATE event causes the trigger to be executed for each change made to a row in the hotel table.

  • The SQL statements and control structures (in this example, IF statements) that are required for executing the desired trigger are defined after the keyword EXECUTE.

  • Error Handling: If an SQL error occurs in the statement list between TRY and CATCH, the system branches directly to the statement that follows CATCH. The actual troubleshooting routine can be programmed in this statement.

  • You can use the new hotel number NEW.hno and the old hotel number OLD.hno.

  • The $rc variable returns a numeric error code after a UPDATE statement has been executed. The value 0 means that the statement was successfully executed.

  • An IF statement first evaluates the search condition. If this is met, the statement specified in the THEN branch is executed. Otherwise, the statement in the ELSE branch (if defined) is executed.

See also: SQL Reference Manual, CREATE TRIGGER Statement (create_system_trigger_statement), Routine (routine)

Evaluating System Tables, TRIGGERS

Executing a Database Trigger

The database trigger hotel_update is automatically started as soon as changes are made to the hotel number in the hotel table, using an UPDATE statement.

Deleting a Database Trigger

To delete a database trigger, use the DROP TRIGGER statement.

DROP TRIGGER hotel_update OF hotel.hotel

You can use this SQL statement to delete the trigger definition. This does not affect the table contents.

See also: SQL Reference Manual, DROP TRIGGER Statement (drop_trigger_statement)

More Information

More examples for Data Definition


Arithmetic Operations - SAP Documentation

Background documentation Arithmetic Operations

You can use expressions that have arithmetic operations (such as + for additions and - for subtractions).

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Arithmetic in the Results Table

You can use a data query both to determine data that already exists in a table and calculate values on the basis of this data.

SELECT hno, price*7 weekly_price, type

  FROM hotel.room

    WHERE type = 'single' AND hno < 50

Displaying the weekly price for a single room; the display has been restricted to those hotels with a hotel number below 50

Result

HNO | WEEKLY_PRICE | TYPE
10 | 945 | Single
20 | 490 | Single
30 | 315 | Single
40 | 595 | Single
Arithmetic in Search Conditions

In search conditions, you can also use expressions that have arithmetic operations.

SELECT hno, type, price

  FROM hotel.room

    WHERE price*7 < 500 AND type = 'single'

Displaying the hotels whose weekly price for a single room is below 500.00 euro

Result

HNO | TYPE | PRICE
20 | Single | 70
30 | Single | 45
100 | Single | 60
110 | Single | 70

SELECT hno, type, price

  FROM hotel.room

    WHERE (price*1.05)*7 < 500 AND type = 'single'

Displaying the hotels whose weekly price for a single room is below 500.00 euro, even after a price increase of 5 percent

Result

HNO | TYPE | PRICE
30 | Single | 45
100 | Single | 60

More Information

SQL Reference Manual, Expression (expression)

More examples for Data Query


Set Operations: UNION, INTERSECT, EXCEPT - SAP Documentation

Background documentation Set Operations: UNION, INTERSECT, EXCEPT

A series of options are available for establishing a relationship between results from several results tables and for generating a new results table on the basis of this relationship.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

UNION

The UNION statement enables you to create a union for the individual results tables from several SELECT statements. In the simplest case, you can link together two results tables that have been created from the same base table.

You can also use the UNION statement to combine results tables that have been created from different tables. However, in this case you have to make sure that the data types of the relevant ith output columns are comparable. These data types do not have to be identical, since the maximum length is used, where applicable.

SELECT zip customer_zip FROM hotel.customer WHERE zip > '90000'

SELECT zip hotel_zip FROM hotel.hotel WHERE zip> '90000'

Displaying the zip codes greater than 90000for each table

Result

CUSTOMER_ZIP | HOTEL_ZIP
90018 | 90804
97213 | 90029
95054 | 92262
90018 |
92714 |

SELECT zip FROM hotel.customer WHERE zip > '90000'

  UNION

SELECT zip FROM hotel.hotel WHERE zip > '90000'

Displaying all the zip codes from the customer and hotel tables that are greater than 90000

Result

ZIP

90018

90029

92262

90804

97213

92714

95054

zip codes that occur several times are displayed once only, since the database system implicitly executes a DISTINCT. If you want to display all zip codes by their frequency of occurrence, use UNION ALL.

SELECT hno hno_or_cno, name hotel_or_customer_name, zip FROM hotel.hotel WHERE zip < '30000'

    UNION ALL

SELECT cno, name, zip FROM hotel.customer WHERE zip < '30000'

Displaying all the cities/places in which either a hotel is located or one of the customers lives

Result

HNO_OR_CNO | HOTEL_OR_CUSTOMER_NAME | ZIP
3000 | Porter | 10580
30 | Regency | 20037
4300 | TOOLware | 20019
4400 | Jenkins | 20903
10 | Congress | 20005
3400 | Griffith | 20005
80 | Midtown | 10019
20 | Long Island | 11788
70 | Empire State | 12203
40 | Eighth Avenue | 10019
INTERSECT

You can use INTERSECT to generate an intersection.

SELECT zip FROM hotel.customer WHERE zip < '30000'

  INTERSECT

SELECT zip FROM hotel.hotel WHERE zip < '30000'

Displaying the zip codes that are used in both tables

Result

ZIP

20005

If you do not additionally specify ALL, an implicit DISTINCT is also executed here.

EXCEPT

You can use EXCEPT to deduct the results from one results table from those of another. The sequence of the SELECT statements is important here.

SELECT zipFROM hotel.hotel WHERE zip < '30000'

  EXCEPT

SELECT zip FROM hotel.customer WHERE zip < '30000'

Displaying only those zip codes from the hotel table that do not exist in the customer table

Result

ZIP

12203

10019

20037

11788

Before the EXCEPT set operation becomes effective, a DISTINCT is implicitly executed.

If you also want to take into consideration the number of rows found in the individual results tables, use <UNION|INTERSECT|EXCEPT> ALL in each case.

More Information

SQL Reference Manual, QUERY Expression (query_expression)

More examples for Data Query


Joins: Information From Several Tables - SAP Documentation

Background documentation Joins: Information From Several Tables

In order to respond to some queries, the system must search several tables. The link between these tables is established on the basis of columns that appear in several tables. Statements such as this are called a Join.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

SELECT reservation.rno, customer.name, reservation.arrival, reservation.departure

  FROM hotel.customer, hotel.reservation

    WHERE customer.name = 'Porter'

AND customer.cno = reservation.cno

Displaying whether and when a reservation was made for the customer Porter

Result

RNO | NAME | ARRIVAL | DEPARTURE
100 | Porter | 2004-11-13 | 2004-11-15
110 | Porter | 2004-12-24 | 2005-01-06

The link between the two tables is established on the basis of the customer number, that is, only those rows that contain the name Porter and in which the customer numbers are identical are selected. =, <, <=, >, >= and <> are possible operators in the WHERE clause.

The overall result row comprises the desired columns in the relevant table. If columns in two different tables have the same name, the table name must be specified in the statement before the column name; the two names are then linked by a period (.).

SELECT customer.name, reservation.rno, hotel.name hotel_name

  FROM hotel.customer, hotel.reservation, hotel.hotel

    WHERE customer.name = 'Porter'

    AND customer.cno = reservation.cno

    AND reservation.hno = hotel.hno

Displaying all the hotels in which the customer Porter has made a reservation. For this purpose, the customer, reservation and hotel tables must be concatenated.

Result

NAME | RNO | HOTEL_NAME
Porter | 100 | Midtown
Porter | 110 | Beach

Another example for a join table:

SELECT hotel.name hotel_name, city.zip, city.name city_name

  FROM hotel.hotel, hotel.city

    WHERE city.state = 'CA' AND city.zip=hotel.zip

Displaying the cities in the state of CA for which hotels are specified in the hotel table

Result

HOTEL_NAME | ZIP | CITY_NAME
Long Beach | 90804 | Long Beach
Star | 90029 | Hollywood
Indian Horse | 92262 | Palm Springs

More Information

SQL Reference Manual, JOIN Predicate (join_predicate)

More examples for Data Query


Roles - SAP Documentation

Background documentation Roles

A role is a group of privileges that can be granted to database users, user groups, or to other roles.

While privileges always apply, roles must be explicitly activated for each individual database session. Every user to whom roles have been assigned can also define which of the roles should be active in each database session. This definition can be changed after a database session has been opened.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Role

Open a database session for the database administrator MONA and use the CREATE ROLE statement to create a role.

CREATE ROLE role_1

//

CREATE ROLE role_2

//

CREATE ROLE role_3

The roles ROLE_1, ROLE_2, and ROLE_3 are created.

See also: SQL Reference Manual, CREATE ROLE Statement (create_role_statement)

Granting Privileges

Open a database session for the database administrator MONA and use the GRANT statement to grant privileges.

GRANT SELECT, UPDATE, INSERT ON hotel.city TO role_1

The database administrator MONA manages the CITY table and decides that the SELECT, UPDATE, and INSERT authorizations for the CITY table are granted to ROLE_1.

GRANT DELETE ON hotel.city TO role_2

The DELETE authorization for the CITY table is granted to ROLE_2 .

GRANT DELETE, ALTER ON hotel.city TO role_3

The DELETE and ALTER authorizations for the CITY table are granted to ROLE_3 .

See also: SQL Reference Manual, GRANT Statement (grant_statement)

Assigning a Role

Create the database users DAVID and BORIS as described in Database Users and Their Privileges.

Open a database session for the database administrator MONA and use the GRANT statement to assign the desired roles to a different database user.

GRANT role_1 TO david

//

GRANT role_2 TO david

//

GRANT role_3 to boris

ROLE_1 and ROLE_2 are assigned to the database user DAVID. The role ROLE_3 is assigned to the database user BORIS.

Defining Which Role is to Be Used

Open a database session for the database administrator MONA. Use the ALTER USER statement to define which of the roles that are granted to a database user are to be used when a database session is opened.

ALTER USER david DEFAULT ROLE role_1

ALTER USER boris DEFAULT ROLE role_3

ROLE_1 is activated for database user DAVID when he opens a database session, for BORIS it is ROLE_3.

See also: SQL Reference Manual, ALTER USER Statement (alter_user_statement)

During a database session, you can use the SET statement to activate additional roles granted to a database user.

Open a database session for the database user DAVID.

SET ROLE ALL

All roles (ROLE_1 and ROLE_2) are to be activated.

See also: SQL Reference Manual, SET Statement (set_statement)

Revoking Privileges

Open a database session for the database administrator MONA and use the REVOKE statement to revoke privileges.

REVOKE DELETE ON hotel.city FROM role_3

The DELETE privilege is revoked from ROLE_3.

See also: SQL Reference Manual, REVOKE Statement (revoke_statement)

Evaluating System Tables, ROLES, SESSION_ROLES, ROLEPRIVILEGES

Deleting Roles

Open a database session for the database administrator MONA and use the DROP ROLE statement to delete roles.

DROP ROLE ROLE_3

ROLE_3 is deleted.

See also: SQL Reference Manual, DROP ROLE Statement (drop_role_statement)

More Information

More examples for Authorization


SQL Statements for the HOTEL Demo Schema - SAP Documentation

Background documentation SQL Statements for the HOTEL Demo Schema

You can use the following SQL statements to generate a series of simply structured tables and their contents in the HOTEL demo schema. You can then use this schema data to work through all the examples in this SQL Tutorial.

Process

Create the database administrator MONA and log on to the DEMODB database as MONA with a suitable tool (see: Demo Data for the SQL Tutorial). Enter the following SQL statements:

//

CREATE SCHEMA hotel

//

SET CURRENT_SCHEMA = hotel

//

CREATE TABLE city

(zip CHAR(5)  PRIMARY KEY,

name CHAR (30) NOT NULL,

state CHAR(2) NOT NULL)

//

CREATE TABLE customer

(cno FIXED(4) PRIMARY KEY,

title CHAR(7),

firstname CHAR (20) ,

name CHAR (40) NOT NULL,

zip CHAR(5),

address CHAR(40) NOT NULL)

//

CREATE TABLE hotel

(hno FIXED(4) PRIMARY KEY,

name CHAR (50) NOT NULL,

zip CHAR(5),

address CHAR(40) NOT NULL)

//

CREATE TABLE room

(hno FIXED(4),

type CHAR(6), PRIMARY KEY (hno,type),

free FIXED(3,0),

price FIXED(6,2))

//

CREATE TABLE reservation

(rno FIXED(4) PRIMARY KEY,

cno FIXED(4),

hno FIXED(4),

type CHAR(6),

arrival DATE NOT NULL,

departure DATE NOT NULL)

//

//----------------------------------------------------------------

// TABLE city (25 Rows)

//----------------------------------------------------------------

//

INSERT INTO city VALUES ('12203','Albany','NY')

//

INSERT INTO city VALUES ('60601','Chicago','IL')

//

INSERT INTO city VALUES ('60615','Chicago','IL')

//

INSERT INTO city VALUES ('45211','Cincinnati','OH')

//

INSERT INTO city VALUES ('33575','Clearwater','FL')

//

INSERT INTO city VALUES ('75243','Dallas','TX')

//

INSERT INTO city VALUES ('32018','Daytona Beach','FL')

//

INSERT INTO city VALUES ('33441','Deerfield Beach','FL')

//

INSERT INTO city VALUES ('48226','Detroit','MI')

//

INSERT INTO city VALUES ('90029','Hollywood','CA')

//

INSERT INTO city VALUES ('92714','Irvine','CA')

//

INSERT INTO city VALUES ('90804','Long Beach','CA')

//

INSERT INTO city VALUES ('11788','Long Island','NY')

//

INSERT INTO city VALUES ('90018','Los Angeles','CA')

//

INSERT INTO city VALUES ('70112','New Orleans','LA')

//

INSERT INTO city VALUES ('10580','New York','NY')

//

INSERT INTO city VALUES ('10019','New York','NY')

//

INSERT INTO city VALUES ('92262','Palm Springs','CA')

//

INSERT INTO city VALUES ('97213','Portland','OR')

//

INSERT INTO city VALUES ('60018','Rosemont','IL')

//

INSERT INTO city VALUES ('95054','Santa Clara','CA')

//

INSERT INTO city VALUES ('20903','Silver Spring','MD')

//

INSERT INTO city VALUES ('20037','Seattle','WA')

//

INSERT INTO city VALUES ('20005','Seattle','WA')

//

INSERT INTO city VALUES ('20019','Seattle','WA')

//----------------------------------------------------------------

//TABLE customer (15 rows)

//----------------------------------------------------------------

//

INSERT INTO customer VALUES (3000,'Mrs','Jenny','Porter','10580','1340 N. Ash Street, #3')

//

INSERT INTO customer VALUES (3100,'Mr','Peter','Brown','48226','1001 34th St., APT.3')

//

INSERT INTO customer VALUES (3200,'Company',NULL,'Datasoft','90018','486 Maple St.')

//

INSERT INTO customer VALUES (3300,'Mrs','Rose','Brian','75243','500 Yellowstone Drive, #2')

//

INSERT INTO customer VALUES (3400,'Mrs','Mary','Griffith','20005','3401 Elder Lane')

//

INSERT INTO customer VALUES (3500,'Mr','Martin','Randolph','60615','340 MAIN STREET, #7')

//

INSERT INTO customer VALUES (3600,'Mrs','Sally','Smith','75243','250 Curtis Street')

//

INSERT INTO customer VALUES (3700,'Mr','Mike','Jackson','45211','133 BROADWAY APT. 1')

//

INSERT INTO customer VALUES (3800,'Mrs','Rita','Doe','97213','2000 Humboldt St., #6')

//

INSERT INTO customer VALUES (3900,'Mr','George','Howe','75243','111 B Parkway, #23')

//

INSERT INTO customer VALUES (4000,'Mr','Frank','Miller','95054','27 5th St., 76')

//

INSERT INTO customer VALUES (4100,'Mrs','Susan','Baker','90018','200 MAIN STREET, #94')

//

INSERT INTO customer VALUES (4200,'Mr','Joseph','Peters','92714','700 S. Ash St., APT.12')

//

INSERT INTO customer VALUES (4300,'Company',NULL,'TOOLware','20019','410 Mariposa St., #10')

//

INSERT INTO customer VALUES (4400,'Mr','Antony','Jenkins','20903','55 A Parkway, #15')

//

//----------------------------------------------------------------

//TABLE hotel (15 rows)

//----------------------------------------------------------------

//

//

INSERT INTO hotel VALUES (10,'Congress','20005','155 Beechwood St.')

//

INSERT INTO hotel VALUES (30,'Regency','20037','477 17th Avenue')

//

INSERT INTO hotel VALUES (20,'Long Island','11788','1499 Grove Street')

//

INSERT INTO hotel VALUES (70,'Empire State','12203','65 Yellowstone Dr.')

//

INSERT INTO hotel VALUES (80,'Midtown','10019','12 Barnard St.')

//

INSERT INTO hotel VALUES (40,'Eighth Avenue','10019','112 8th Avenue')

//

INSERT INTO hotel VALUES (50,'Lake Michigan','60601','354 OAK Terrace')

//

INSERT INTO hotel VALUES (60,'Airport','60018','650 C Parkway')

//

INSERT INTO hotel VALUES (90,'Sunshine','33575','200 Yellowstone Dr.')

//

INSERT INTO hotel VALUES (100,'Beach','32018','1980 34th St.')

//

INSERT INTO hotel VALUES (110,'Atlantic','33441','111 78th St.')

//

INSERT INTO hotel VALUES (120,'Long Beach','90804','35 Broadway')

//

INSERT INTO hotel VALUES (150,'Indian Horse','92262','16 MAIN STREET')

//

INSERT INTO hotel VALUES (130,'Star','90029','13 Beechwood Place')

//

INSERT INTO hotel VALUES (140,'River Boat','70112','788 MAIN STREET')

//

//----------------------------------------------------------------

//TABLE room (38 rows)

//----------------------------------------------------------------

//

//

INSERT INTO room VALUES (10,'single',20,135.00)

//

INSERT INTO room VALUES (10,'double',45,200.00)

//

INSERT INTO room VALUES (30,'single',12,45.00)

//

INSERT INTO room VALUES (30,'double',15,80.00)

//

INSERT INTO room VALUES (20,'single',10,70.00)

//

INSERT INTO room VALUES (20,'double',13,100.00)

//

INSERT INTO room VALUES (70,'single',4,115.00)

//

INSERT INTO room VALUES (70,'double',11,180.00)

//

INSERT INTO room VALUES (80,'single',15,90.00)

//

INSERT INTO room VALUES (80,'double',19,150.00)

//

INSERT INTO room VALUES (80,'suite',5,400.00)

//

INSERT INTO room VALUES (40,'single',20,85.00)

//

INSERT INTO room VALUES (40,'double',35,140.00)

//

INSERT INTO room VALUES (50,'single',50,105.00)

//

INSERT INTO room VALUES (50,'double',230,180.00)

//

INSERT INTO room VALUES (50,'suite',12,500.00)

//

INSERT INTO room VALUES (60,'single',10,120.00)

//

INSERT INTO room VALUES (60,'double',39,200.00)

//

INSERT INTO room VALUES (60,'suite',20,500.00)

//

INSERT INTO room VALUES (90,'single',45,90.00)

//

INSERT INTO room VALUES (90,'double',145,150.00)

//

INSERT INTO room VALUES (90,'suite',60,300.00)

//

INSERT INTO room VALUES (100,'single',11,60.00)

//

INSERT INTO room VALUES (100,'double',24,100.00)

//

INSERT INTO room VALUES (110,'single',2,70.00)

//

INSERT INTO room VALUES (110,'double',10,130.00)

//

INSERT INTO room VALUES (120,'single',34,80.00)

//

INSERT INTO room VALUES (120,'double',78,140.00)

//

INSERT INTO room VALUES (120,'suite',55,350.00)

//

INSERT INTO room VALUES (150,'single',44,100.00)

//

INSERT INTO room VALUES (150,'double',115,190.00)

//

INSERT INTO room VALUES (150,'suite',6,450.00)

//

INSERT INTO room VALUES (130,'single',89,160.00)

//

INSERT INTO room VALUES (130,'double',300,270.00)

//

INSERT INTO room VALUES (130,'suite',100,700.00)

//

INSERT INTO room VALUES (140,'single',10,125.00)

//

INSERT INTO room VALUES (140,'double',9,200.00)

//

INSERT INTO room VALUES (140,'suite',78,600.00)

//

//----------------------------------------------------------------

//TABLE reservation (10 rows)

//----------------------------------------------------------------

//

//

INSERT INTO reservation VALUES (100,3000,80,'single','2004-11-13','2004-11-15')

//

INSERT INTO reservation VALUES (110,3000,100,'double','2004-12-24','2005-01-06')

//

INSERT INTO reservation VALUES (120,3200,50,'suite','2004-11-14','2004-11-18')

//

INSERT INTO reservation VALUES (130,3900,110,'single','2005-02-01','2005-02-03')

//

INSERT INTO reservation VALUES (150,3600,70,'double','2005-03-14','2005-03-24')

//

INSERT INTO reservation VALUES (140,4300,80,'double','2004-04-12','2004-04-30')

//

INSERT INTO reservation VALUES (160,4100,70,'single','2004-04-12','2004-04-15')

//

INSERT INTO reservation VALUES (170,4400,150,'suite','2004-09-01','2004-09-03')

//

INSERT INTO reservation VALUES (180,3100,120,'double','2004-12-23','2005-01-08')

//

INSERT INTO reservation VALUES (190,4300,140,'double','2004-11-14','2004-11-17')

//

// THE END

Note Note

If you load the complete set of demo data with the Installation Manager or the Database Studio, the tables are created with much more extensive definitions and a partly larger number of data records and additional objects (e.g. views, indexes, etc.) are generated. You can use this demo data as well. However, the result set specified for an example statement in this SQL tutorial may differ from the result set you receive for the complete set of demo data.

End of the note.

More Information

Explanation of the Tables in the HOTEL Demo Schema

Concepts of the Database System, Demo Database and Objects in the HOTEL Schema


Tables - SAP Documentation

Background documentation Tables

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Table

To create a table, use the CREATE TABLE statement.

CREATE TABLE hotel.person

(pno FIXED(6),

name CHAR(20),

 city CHAR(20))

You specify the name of the table (person) after the keywords CREATE TABLE. Create the person table in the hotel schema.

In the list of column definitions, you have to enter the name and data type for each column. The list of column definitions is in parentheses.

  • The person  table contains columns with the following names: pno, name, city

  • The columns have the following data types: pno FIXED(6), name and city, each CHAR(20)

See also: SQL Reference Manual, CREATE TABLE Statement (create_table_statement), Column Name (column_name), Data Type (data_type)

Data Integrity

The person  table is a very simple table. The only input restriction for values in the columns in the person table is that the data types are predefined. In reality, additional entries, restrictions, and objects, such as constraints, primary keys, domains, database procedures and database triggers are usually required to ensure data integrity.

See also: SQL Reference Manual, Ensuring Data Integrity

Changing a Table

You can use the ALTER TABLE statement to change the table definition while the database is in operation.

ALTER TABLE hotel.person

ADD (code FIXED(5), fon FIXED(8))

Columns for the telephone dialing code and number are added to the person table.

See also: SQL Reference Manual, ADD Definition (add_definition)

ALTER TABLE hotel.person

DROP (code)

The column for the telephone dialing code is deleted again from the customer table.

See also: SQL Reference Manual, DROP Definition (drop_definition)

ALTER TABLE hotel.person

MODIFY fon FIXED(10)

The column definition is changed in the customer table. The column is redefined only if it corresponds to the values already stored.

See also: SQL Reference Manual, MODIFY Definition (modify_definition)

Additional changes can be made to existing tables.

See also: SQL Reference Manual, ALTER TABLE Statement (alter_table_statement)

Renaming a Table

To rename a table, use the RENAME TABLE statement.

RENAME TABLE hotel.person TO member

Rename the person  table to member

See also: SQL Reference Manual, RENAME TABLE Statement (rename_table_statement)

Deleting a Table

To delete a table, use the DROP TABLE statement.

DROP TABLE hotel.member

You can use this SQL statement to delete the table definition, the table contents, and all dependent objects (such as view tables and indexes). The table can be deleted by the table owner only.

See also: SQL Reference Manual, DROP TABLE Statement (drop_table_statement)

More Information

More examples for Data Definition


Database Users and Their Privileges - SAP Documentation

Background documentation Database Users and Their Privileges

Database administrators can create additional database users and grant privileges.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating Database Users

Use the CREATE USER statement to create additional database users.

CREATE USER david PASSWORD blue RESOURCE

The database administrator MONA has created the database user DAVID with the password BLUE. The database user class RESOURCE has been defined for this database user.

CREATE USER boris PASSWORD pink STANDARD

The database administrator MONA has created the database user BORIS with the password PINK. The database user class STANDARD has been defined for this database user.

See also: SQL Reference Manual, CREATE USER Statement (create_user_statement)

Changing the Database User Class

Use the ALTER USER statement to change the database user class.

ALTER USER boris RESOURCE

The database user class RESOURCE is defined for the database user BORIS.

See also: SQL Reference Manual, ALTER USER Statement (alter_user_statement)

Changing the Password

Use the ALTER PASSWORD statement to change the password of a database user.

  • Log on as the database system administrator (default values: DBADMIN/SECRET).

    ALTER PASSWORD boris red

    The password of the database user BORIS is changed to RED.

You can also use the ALTER PASSWORD statement as follows:

  • Log on as the database user BORIS (BORIS/RED).

    ALTER PASSWORD red TO pink

    The password of the database user BORIS is changed to PINK.

See also: SQL Reference Manual, ALTER PASSWORD Statement (alter_password_statement)

Granting Privileges

Open a database session for the database administrator MONA and use the GRANT statement to grant privileges.

GRANT SELECT, UPDATE, DELETE, INSERT ON hotel.customer TO david

The database administrator MONA administers the customer table in the HOTEL schema. MONA decides that the RESOURCE user DAVID is to be entitled to maintain customer data but not to make any changes to the structure of the table.

GRANT SELECT ON hotel.customer TO PUBLIC

All of the database users in the system are to be granted read access to the data in the customer table. You can use the keyword PUBLIC to grant privileges to all database users.

Check the privileges granted, on the basis of the information in the TABLEPRIVILEGES system table, for example. Log on to the database DEMODB as user DAVID.

SELECT * FROM DOMAIN.TABLEPRIVILEGES

  WHERE schemaname = 'HOTEL' AND tablename = 'CUSTOMER'

Result

SCHEMANAME | OWNER | TABLENAME | GRANTOR | GRANTEE | PRIVILEGE | IS_GRANTABLE
HOTEL | MONA | CUSTOMER | MONA | DAVID | SELECT | NO
HOTEL | MONA | CUSTOMER | MONA | DAVID | UPDATE | NO
HOTEL | MONA | CUSTOMER | MONA | DAVID | INSERT | NO
HOTEL | MONA | CUSTOMER | MONA | DAVID | DELETE | NO
HOTEL | MONA | CUSTOMER | MONA | PUBLIC | SELECT | NO

See also:

SQL Reference Manual, GRANT Statement (grant_statement)

Evaluating System Tables, TABLEPRIVILEGES

Revoking Privileges

Open a database session for the database administrator MONA and use the REVOKE statement to revoke privileges.

REVOKE DELETE ON hotel.customer FROM david

The RESOURCE user DAVID is not to be permitted to delete rows from the customer table.

See also: SQL Reference Manual, REVOKE Statement (revoke_statement)

Deleting Database Users

To delete database users, use the DROP USER statement.

DROP USER boris

If no CASCADE option or the option CASCADE is specified, all the synonyms and tables of the user to be deleted, as well as all indexes, privileges, view tables, and so on based on these objects, are deleted together with the database user.

See also: SQL Reference Manual, DROP USER Statement (drop_user_statement)

More Information

More examples for Authorization


Domains - SAP Documentation

Background documentation Domains

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

When you create a table, you can define a domain for each column.

CREATE TABLE hotel.customer

(cno          FIXED(4) PRIMARY KEY CONSTRAINT cno_cons CHECK cno > 0,

 title       CHAR(7)  CONSTRAINT title_cons CHECK title IN ('Mr','Mrs','Company'),

 firstname   CHAR(20),

 name      CHAR(40) NOT NULL,

...)

The customer number has a maximum of four characters, the title 7, the first name 20 and the name 40 characters.

See also: SQL Reference Manual, CREATE TABLE Statement (create_table_statement)

You can predefine these domains in a domain definition.

Creating a Domain

To create a domain, use the CREATE DOMAIN statement.

CREATE DOMAIN name_domain CHAR(20)

Names are to be 20 characters long.

CREATE DOMAIN birthday_domain DATE DEFAULT DATE

CONSTRAINT birthday_domain > '1880-01-01' AND birthday_domain <= DATE

In the domain definition birthday_domain for the birthday, the current date is selected as the DEFAULT value. The birth date is not to be before 01/01/1880.

In a domain definition, you can specify a DEFAULT value and/or a CONSTRAINT definition.

  • The DEFAULT values must satisfy any existing restrictive conditions.

  • No constraint name can be specified in the CONSTRAINT definition and the domain is used as the column name.

Using the Domain

  1. Delete the person table, if necessary.

    DROP TABLE hotel.person

  2. Create the person table.

    CREATE TABLE hotel.person

    (pno FIXED(6) PRIMARY KEY,

     name name_domain,

     city CHAR(20))

  3. Add a birthday column with the domain birthday_domain.

    ALTER TABLE hotel.person ADD birthday birthday_domain

The person  table was created in accordance with the name_domain domain for names and with the birthday column with the domain definition birthday_domain.

See also: SQL Reference Manual, CREATE DOMAIN Statement (create_domain_statement)

Evaluating System Tables, COLUMNS, DOMAINS, DOMAINCONSTRAINTS

Deleting a Domain

To delete a domain, use the DROP DOMAIN statement.

DROP DOMAIN name_domain

You can use this SQL statement to delete the domain definition. Table definitions that used this domain definition are not deleted.

See also: SQL Reference Manual, DROP DOMAIN Statement (drop_domain_statement)

More Information

More examples for Data Definition


Exporting - SAP Documentation

Background documentation Exporting

For a complete syntax description of the Loader commands for exporting, see Exporting: Commands in the Loader documentation. The following section will give some examples of key export commands.

Prerequisites

You can use the demo data of demo database DEMODB.

Example

Start the Loader and log on to the demo database DEMODB as database administrator MONA with the password RED. Use the session mode: loadercli -d demodb -u mona,red.

Enter the desired export command:

EXPORT TABLE hotel.city

  CATALOG OUTSTREAM 'city_ddl.catalog'

This means:

  1. Export (EXPORT)

  2. a table (TABLE)

  3. from the HOTEL schema called CITY (hotel.city)

  4. Export the database catalog data (CATALOG)

  5. to the output file (OUTSTREAM)

  6. called city_ddl.catalog

All object definitions (such as view tables) dependent on the CITY table are also exported to the city_ddl.catalog file.

More Information

EXPORT DB

EXPORT USER

EXPORT SCHEMA

EXPORT TABLE

EXPORT COLUMNS

Session Mode

You can use the export data streams you have created in this way to import the data to a database of your choice.


Indexes - SAP Documentation

Background documentation Indexes

Since all columns in a table are handled in the same way, each column can be used as a search criterion. However, this does not mean that all search operations are equally efficient.

If you want to use a particular column to process search conditions, you should create an index for this column. This enables you to find the desired rows more quickly, since the database system attempts to use indexes to search for entries.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating an Index

To create an index, use the CREATE INDEX statement.

CREATE INDEX name_index ON hotel.customer (name)

You use this statement to create a single-column index with the name name_index in the hotel schema.

CREATE INDEX city_state ON hotel.city (state)

You use this statement to create a single-column index with the name city_state.

CREATE INDEX full_name_index ON hotel.customer (name,firstname)

You use this statement to create a two-column index with the name full_name_index.

If you want to create an index that (like the key) ensures uniqueness, you have to use the keyword UNIQUE.

CREATE UNIQUE INDEX address_index ON hotel.customer (firstname,name,address)

See also: SQL Reference Manual, CREATE INDEX Statement (create_index_statement)

You can define a UNIQUE index at the same time as you define the table, using the CREATE TABLE statement.

  1. Delete the person table, if necessary.

    DROP TABLE hotel.person

  2. Create the person table.

    CREATE TABLE hotel.person

    (pno FIXED(6) PRIMARY KEY,

    name CHAR(20) CONSTRAINT name_index UNIQUE,

     city CHAR(20))

You use this statement to create a single-column UNIQUE index with the name name_index.

  1. Delete the person table.

    DROP TABLE hotel.person

  2. Create the person table.

    CREATE TABLE hotel.person

    (pno FIXED(6) PRIMARY KEY,

    name CHAR(20),

    city CHAR(20),

    CONSTRAINT address_index UNIQUE (name,city))

You use this statement to create a two-column UNIQUE index with the name address_index.

See also: SQL Reference Manual, CREATE TABLE Statement (create_table_statement), UNIQUE Definition (unique_definition)

Deleting an Index

To delete an index, use the DROP INDEX statement.

DROP INDEX hotel.full_name_index ON hotel.customer

You can use this SQL statement to delete the index definition and the data contained in the index. This does not affect the table contents.

See also: SQL Reference Manual, DROP INDEX Statement (drop_index_statement)

More Information

More examples for Data Definition


Constraints - SAP Documentation

Background documentation Constraints

You can use constraints to restrict the domain of the data type in a column.

With just a few exceptions, you can formulate in a CONSTRAINT definition everything that also counts as a search condition. You can use the AND, OR and NOT operators to link together several conditions. You can address as many columns as required. Note, however, that constraints reduce the speed of the database system when changes are made to entries in the table.

Simple Constraints: You can formulate constraints that refer to one table column only.

Complex Constraints: In a complex constraint, you formulate conditions that refer to several columns in the table.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

SQL Reference Manual, CONSTRAINT Definition (constraint_definition)

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Constraint

You can specify a constraint when you define the table or add it to an existing table at a later stage.

Creating a Constraint During Table Definition

You can use the CREATE TABLE statement to define constraints when you create a table.

  1. Delete the city table, if necessary.

    DROP TABLE hotel.city

  2. Create the city table.

    CREATE TABLE hotel.city

    (zip CHAR(5) PRIMARY KEY CONSTRAINT zip_cons CHECK

    SUBSTR(zip,1,1) BETWEEN '0' AND '9' AND

    SUBSTR(zip,2,1) BETWEEN '0' AND '9' AND

    SUBSTR(zip,3,1) BETWEEN '0' AND '9' AND

    SUBSTR(zip,4,1) BETWEEN '0' AND '9' AND

    SUBSTR(zip,5,1) BETWEEN '0' AND '9',

    name CHAR(30) NOT NULL,

    state CHAR(2) NOT NULL)

The city table is created with a simple constraint in the zip code column. This constraint ensures that only digits from 0 to 9 can be entered for the zip code. All other characters will be rejected. When you define a constraint, you specify implicitly that the NULL value is not permitted as an input.

Specifying NOT NULL has the effect that a value has to be assigned to a column. This column is then designated as mandatory.

See also: SQL Reference Manual, CREATE TABLE Statement (create_table_statement)

Creating Constraints for an Existing Table Retroactively

You can use the ALTER TABLE statement to add constraints to existing tables.

ALTER TABLE hotel.customer ADD CONSTRAINT zip_cons CHECK

SUBSTR(zip,1,1) BETWEEN '0' AND '9' AND

SUBSTR(zip,2,1) BETWEEN '0' AND '9' AND

SUBSTR(zip,3,1) BETWEEN '0' AND '9' AND

SUBSTR(zip,4,1) BETWEEN '0' AND '9' AND

SUBSTR(zip,5,1) BETWEEN '0' AND '9'

A simple constraint is added to the zip code column in the customer table. This constraint ensures that only digits from 0 to 9 can be entered for the zip code. All other characters will be rejected.

ALTER TABLE hotel.customer ADD CONSTRAINT cno_cons CHECK cno > 10

//

ALTER TABLE hotel.customer ADD CONSTRAINT title_cons CHECK title IN ('Mr', 'Mrs', 'Company')

Additional simple constraints are defined for the customer table. The customer number must be greater than 10; you are permitted to enter only one of the character sets Mr, Mrs or Company in the title column.

ALTER TABLE hotel.reservation ADD CONSTRAINT staying CHECK departure > arrival

A complex constraint has been defined for the reservation table. In the reservation table, check that the arrival date is before the departure date.

See also: SQL Reference Manual, ALTER TABLE Statement (alter_table_statement), ADD Definition (add_definition)

Changing a Constraint

You can use the ALTER TABLE statement to change existing constraints.

ALTER TABLE hotel.customer ALTER CONSTRAINT cno_cons CHECK cno > 0

For the customer table, the simple constraint cno_cons has changed. The customer number must be greater than 0.

See also:

SQL Reference Manual, ALTER Definition (alter_definition)

Evaluating System Tables, CONSTRAINTS

Deleting a Constraint

You can use the ALTER TABLE statement to delete a constraint.

ALTER TABLE hotel.reservation DROP CONSTRAINT staying

See also: SQL Reference Manual, DROP Definition (drop_definition)

More Information

More examples for Data Definition


View Tables - SAP Documentation

Background documentation View Tables

A view table is a view of one or more existing tables. Parts of these tables are hidden, and others remain visible.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a View Table

To create a view table, use the CREATE VIEW statement.

CREATE VIEW hotel.customer_addr (cno, title, name, zip, city, state, address)

AS SELECT customer.cno, customer.title, customer.name, customer.zip, city.name, city.state, customer.address

FROM hotel.customer, hotel.city

WHERE customer.zip = city.zip

The customer_addr view table is comprised of information from the customer and city tables.

When the tables have been filled with the data specified for the SQL tutorial (SQL Statements for the HOTEL Demo Schema), you can get the following data from the customer_addr view table:

SELECT * FROM hotel.customer_addr ORDER BY cno

Result

CNO | TITLE | NAME | ZIP | CITY | STATE | ADDRESS
3000 | Mrs | Porter | 10580 | New York | NY | 1340 N.Ash Street, #3
3100 | Mr | Brown | 48226 | Detroit | MI | 1001 34th Str., APT.3
3200 | Company | Datasoft | 90018 | Los Angeles | CA | 486 Maple Str.
3300 | Mrs | Brian | 75243 | Dallas | TX | 500 Yellowstone Drive, #2
3400 | Mrs | Griffith | 20005 | Washington | DC | 3401 Elder Lane
3500 | Mr | Randolph | 60615 | Chicago | IL | 340 MAIN STREET, #7
3600 | Mrs | Smith | 75243 | Dallas | TX | 250 Curtis Street
3700 | Mr | Jackson | 45211 | Cincinnati | OH | 133 BROADWAY APT. 1
3800 | Mrs | Doe | 97213 | Portland | OR | 2000 Humboldt Str., #6
3900 | Mr | Howe | 75243 | Dallas | TX | 111 B Parkway, #23
4000 | Mr | Miller | 95054 | Santa Clara | CA | 27 5th Str., 76
4100 | Mrs | Baker | 90018 | Los Angeles | CA | 200 MAIN STREET, #94
4200 | Mr | Peters | 92714 | Irvine | CA | 700 S. Ash Str., APT.12
4300 | Company | TOOLware | 20019 | Washington | DC | 410 Mariposa Str., #10
4400 | Mr | Jenkins | 20903 | Silver Spring | MD | 55 A Parkway, #15

When you create a view table, you can rename and rearrange columns. You can link together several tables. To define a View table, you can use every SELECT statement that does not contain ORDER BY.

You can always use a view table name in SELECT statements and, in special cases, in INSERT, UPDATE and DELETE statements.

See also: SQL Reference Manual, CREATE VIEW Statement (create_view_statement)

Evaluating System Tables, VIEWS, VIEWDEFS, VIEWCOLUMNS

For more CREATE View example statements see: Concepts of the Database System, Objects in the Schema HOTEL

Deleting a View Table

To delete a View table, use the DROP VIEW statement.

DROP VIEW hotel.customer_addr

You can use this SQL statement to delete the view definition. This does not affect the table contents.

See also: SQL Reference Manual, DROP VIEW Statement (drop_view_statement)

More Information

More examples for Data Definition


Foreign Key Dependencies Between Tables - SAP Documentation

Background documentation Foreign Key Dependencies Between Tables

You can define a dependency between two tables that affects the tables when changes are made to rows. This relationship is called a referential constraint (or a foreign key dependency).

Simple Foreign Key You can define foreign key dependencies that refer to only one primary key column in a table.

Foreign Key in Several Columns: You can define a foreign key for several primary key columns.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

SQL Reference Manual, CONSTRAINT Definition (referential_constraint_definition)

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Foreign Key

You can specify a foreign key when you define the table or add it to an existing table at a later stage.

Creating a Foreign Key When Defining a Table

You can use the CREATE TABLE statement to define foreign keys when you create a table.

  1. Delete the hotel table.

    DROP TABLE hotel.hotel

  2. Define the hotel table as illustrated below:

    CREATE TABLE hotel.hotel

    (hno FIXED(4) PRIMARY KEY CONSTRAINT hno_cons CHECK hno > 0,

     name CHAR (50) NOT NULL,

     zip CHAR(5) CONSTRAINT zip_cons CHECK

       SUBSTR(zip,1,1) BETWEEN '0' AND '9' AND

       SUBSTR(zip,2,1) BETWEEN '0' AND '9' AND

       SUBSTR(zip,3,1) BETWEEN '0' AND '9' AND

       SUBSTR(zip,4,1) BETWEEN '0' AND '9' AND

       SUBSTR(zip,5,1) BETWEEN '0' AND '9',

     address CHAR (40) NOT NULL,

    FOREIGN KEY hotel_zip_in_city (zip) REFERENCES hotel.city ON DELETE RESTRICT)

You can link the city and hotel tables to one another on the basis of the zip code, since the zip code column in the city table is the primary key column. On the basis of the FOREIGN KEY syntax rule, the hotel table is assigned the simple foreign key hotel_zip_in_city for the zip column

CITY Table

ZIP

NAME

STATE

HOTEL Table

HNO

NAME

ZIP

...

The name of the foreign key was specified after the keywords FOREIGN KEY. If you do not specify the name, the database system itself assigns the following name: city_hotel, that is, the names of the tables involved are linked by an underscore.

By specifying the appropriate keyword before the keyword DELETE, you can define what you want to happen to dependent values when rows are deleted. For example, if you want to delete rows from the city table only if no hotel entries are available for these cities, you can select from among the following options:

  • ON DELETE RESTRICT: the system outputs a warning; the rows are not deleted from the city table.

  • ON DELETE CASCADE: the relevant rows are deleted from the city and hotel tables.

  • ON DELETE SET NULL: obsolete entries in the hotel table are assigned the NULL value.

  • ON DELETE SET DEFAULT: obsolete entries in the hotel table are assigned the default value.

The foreign key hotel_zip_in_city prevents you from inserting or changing a row in the hotel table for which no city is available.

See also: SQL Reference Manual, CREATE TABLE Statement (create_table_statement)

Creating Foreign Keys for an Existing Table Retroactively

You can use the ALTER TABLE statement to add foreign keys to existing tables.

ALTER TABLE hotel.reservation ADD FOREIGN KEY reservation_cno_in_customer (cno) REFERENCES hotel.customer ON DELETE CASCADE

A basic foreign key was added to customer number column cno in table reservation. This column is a primary key column in the customer table.

ALTER TABLE hotel.reservation ADD FOREIGN KEY reservation_info_in_room (hno,type) REFERENCES hotel.room ON DELETE CASCADE

A foreign key was added to multiple columns, that is, the hno and type columns in the reservation table. These columns are primary key columns in the room table.

See also: SQL Reference Manual, ALTER TABLE Statement (alter_table_statement), ADD Definition (add_definition)

Evaluating System Tables, FOREIGNKEYS, FOREIGNKEYCOLUMNS

Deleting a Foreign Key

You can use the ALTER TABLE statement to delete foreign keys.

ALTER TABLE hotel.reservation DROP FOREIGN KEY reservation_info_in_room

See also: SQL Reference Manual, DROP Definition (drop_definition)

More Information

More examples for Data Definition


Inserting, Updating and Deleting Rows - SAP Documentation

Background documentation Inserting, Updating and Deleting Rows

SQL statements for data manipulation (insert, update, and delete) are described in the following section.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Inserting Rows

To insert rows, use the INSERT statement.

INSERT INTO hotel.city VALUES ('10018','New York','NY')

or

INSERT INTO hotel.city (zip,name,state) VALUES ('10017','New York','NY')

Rows are inserted in the hotel table (INSERT). The values that are to be inserted after the keyword VALUES are specified in parentheses. If you do not specify a column name, the order of the values must match the order of the definitions in the columns. Both orders must have the same length and data type. You can write undefined values as NULL.

You can also copy data from one table to another using a SELECT statement.

  1. Delete the person table, if necessary.

    DROP TABLE hotel.person

  2. Create the person table:

    CREATE TABLE hotel.person

    (pno FIXED(6.0) PRIMARY KEY,

     name CHAR(20),

     city CHAR(20))

  3. Fill the table with values from the city table:

    INSERT INTO hotel.person

    SELECT zip, state, name FROM hotel.city WHERE zip < '20000'

The person table is filled with information from the city table. You can check this using the following SELECT statement, for example:

SELECT pno, name state, city FROM hotel.person

Result

PNO | STATE | CITY
10017 | NY | New York
10018 | NY | New York
10019 | NY | New York
10580 | NY | New York
11788 | NY | Long Island
12203 | NY | Albany

See also: SQL Reference Manual, INSERT Statement (insert_statement)

Updating Rows

To update rows, use the UPDATE statement. Note that all the rows in the table are updated if the WHERE clause is missing from the UPDATE statement.

UPDATE hotel.person

  SET name = 'CITY'

  WHERE pno = '10019'

In the person table, the column value for name is changed (UPDATE...SET...); however, only for the row specified in the WHERE clause. You can check this using the following SELECT statement, for example:

SELECT pno, name, city

FROM hotel.person

Result

PNO | NAME | CITY
10017 | NY | New York
10018 | NY | New York
10019 | CITY | New York
10580 | NY | New York
11788 | NY | Long Island
12203 | NY | Albany

See also: SQL Reference Manual, UPDATE Statement (update_statement)

Deleting Rows

To delete rows, use the DELETE statement.

DELETE FROM hotel.person

  WHERE name = 'NY'

In the person table, rows are deleted (DELETE FROM...), that is, all the rows with the entry NY as the name (WHERE...) are deleted. You can check this using the following SELECT statement, for example:

SELECT pno, name, city

  FROM hotel.person

Result

PNO | NAME | CITY
10019 | CITY | New York

See also: SQL Reference Manual, DELETE Statement (delete_statement)

More Information

Data Manipulation


Data Manipulation - SAP Documentation

Background documentation Data Manipulation

For a complete syntax description of the SQL statements for data query, see Data Manipulation in the SQL reference manual. Below are just a few examples of key SQL statements for data manipulation.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Example

Inserting, Changing and Deleting Rows


Data Definition - SAP Documentation

Background documentation Data Definition

For a complete syntax description of the SQL statements for data definition, see Data Definition in the SQL reference manual. Below are just a few examples of key SQL statements for data definition.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Example

  • Tables

  • Constraints

  • Primary key

  • Foreign Key Dependencies Between Tables

  • View Tables

  • Indexes

  • Domains

  • Database Procedures

  • Database Functions

  • Database Triggers

  • Number Generators for Tables

  • Number Generator for a Single Table Column

  • Authorization


Subquery: Inner Queries - SAP Documentation

Background documentation Subquery: Inner Queries

A second SELECT statement (Subquery (subquery)) can be included in a SELECT statement. A value or set of values is generated by the Subquery as part of the main statement.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Subquery

SELECT name, zip

  FROM hotel.customer

    WHERE zip = (SELECT MAX(zip) FROM hotel.customer)

Displaying the customer with the greatest zip code

Result

NAME | ZIP
Doe | 97213

See also: SQL Reference Manual, Comparison Predicate (comparison_predicate)

SELECT hno, name, zip

  FROM hotel.hotel

    WHERE zip IN(SELECT zip FROM hotel.customer WHERE title = 'Mrs')

Displaying the hotels located in cities/places in which female customers also live

Result

HNO | NAME | ZIP
10 | Congress | 20005

See also: SQL Reference Manual, IN Predicate (in_predicate)

SELECT hno, name

  FROM hotel.hotel

    WHERE name = ANY(SELECT name FROM hotel.city)

Displaying hotels that have the same name as other cities in the city table. The inner query determines the list of city names with which the hotel names are compared.

Result

HNO | NAME
20 | Long Island
120 | Long Beach

SELECT cno, name

  FROM hotel.customer

    WHERE cno = ANY(SELECT cno FROM hotel.reservation WHERE arrival > '2005-01-01')

Displaying the customers that have made all reservations as of a specified date

Result

CNO | NAME
3600 | Smith
3900 | Howe

Use ANY if the Subquery returns more than one value and you want to take this into consideration in the WHERE clause condition that usually requires exactly one value.

See also: SQL Reference Manual, Quantified Predicate (quantified_predicate)

Correlated Subquery

You can use Correlated Subqueries to formulate conditions for selecting rows; these conditions are to apply to groups of rows only and not to all rows in a table.

Subqueries are only evaluated once. Correlated Subqueries are evaluated for each row in the external table, in the case of compound Subqueries from the inside out.

SELECT hno, type, price

  FROM hotel.room room_table

    WHERE price =

(SELECT MAX(price) FROM hotel.room WHERE type = room_table.type)

Displaying the hotels (in the form of the hotel number) whose rooms in the individual types (single, double, or suite) have the highest price

Since in this example, the same table is addressed in the external SELECT statement as in the Subquery, you have to specify a reference name (room_table). A row from the result of the external SELECT statement is linked (correlated) to a value in the Subquery.

Explanation

  • SELECT hno, type, price FROM hotel.room room_table Searches for the hotel number, room type and price in the room table and renames the table room_table.

  • WHERE price= Contains the row in which the price is the same as the result of the following Subquery:

  • (SELECT MAX(price) FROM hotel.room (Start the Subquery) Searches for the maximum price in the room table

  • WHERE type = room_table.type) The room types here are to be the same as the room types in the rows found above

Result

HNO | TYPE | PRICE
130 | double | 270
130 | single | 160
130 | suite | 700

SELECT cno, title, name

  FROM hotel.customer

    WHERE EXISTS

(SELECT * FROM hotel.reservation

    WHERE hotel.customer.cno = hotel.reservation.cno)

Displaying only those customers from the customer table for which one or more reservations exist

Result

CNO | TITLE | NAME
3000 | Mrs | Porter
3100 | Mr | Brown
3200 | Company | Datasoft
3600 | Mrs | Smith
3900 | Mr | Howe
4100 | Mrs | Baker
4300 | Company | TOOLware
4400 | Mr | Jenkins

Use EXISTS if you only want the Subquery to find out whether a row exists that fulfils a specific condition.

See also: SQL Reference Manual, EXISTS Predicate (exists_predicate)

More Information

More examples for Data Query


Information About Character Strings - SAP Documentation

Background documentation Information About Character Strings

You can obtain a series of information about a character string.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Defining the Number of Characters

SELECT name, LENGTH(name) len

  FROM hotel.customer

    WHERE title = 'Mrs' ORDER BY len, name

Part of the customer table is sorted according to the surname length, with names of the same length sorted in alphabetical order.

Result

NAME | LEN
Doe | 3
Baker | 5
Brian | 5
Smith | 5
Porter | 6
Griffith | 8

See also: SQL Reference Manual, LENGTH(a)

Standardizing Notation

When applied to a character string, the INITCAP function returns a character string in which the initial letter of any given word appears in uppercase and all other letters in lowercase. This function can be used to standardize the notation for names, for example.

SELECT name, INITCAP(name) name_new

  FROM hotel.customer

    WHERE firstname IS NULL

Result

NAME | NAME_NEW
Datasoft | Datasoft
TOOLware | Toolware

See also: SQL Reference Manual, INITCAP(x)

Searching the Position of Character Strings

The INDEX function returns the position of a predefined substring in the character string. You can also choose to use a third parameter in the INDEX function to specify the starting position for the search and a fourth parameter to specify the number of occurrences of the substring after which the search is to start.

SELECT name, INDEX(name,'er') position_er

  FROM hotel.customer

    WHERE title = 'Mrs'

For part of the customer table, the position of the character string ‘er’ is to be defined in the last name.

Result

NAME | POSITION_ER
Porter | 5
Brian | 0
Griffith | 0
Smith | 0
Doe | 0
Baker | 4

See also: SQL Reference Manual, INDEX(a,b,p,s)

Defining the Minimum and Maximum in Character Strings

You can also apply the MAX and MIN functions to character strings.

SELECT title, MIN(name) min_name

  FROM hotel.customer

    GROUP BY title

The customer (male, female, or company) whose last name starts with the earliestletter, with regard to the code selected, is searched. If the initial letters of any given names are the same, the system compares the next characters in the strings.

Result

TITLE | MIN_NAME
Company | Datasoft
Mr | Brown
Mrs | Baker

See also: SQL Reference Manual, MAX/MIN

To ensure that data is correctly sorted in alphabetical order, in particular in the case of foreign characters such as umlauts, the MAPCHAR(x,n,i) function should be used.

The GREATEST/LEAST(x,y,...) functions enable the greatest or least value to be found in a list of specified values. You can also apply these functions to character strings. GREATEST('Mary','Mike','Martin') would return Mike as the result.

More Information

More examples for Data Query


Converting Values - SAP Documentation

Background documentation Converting Values

For different application cases, you may need to change how values are represented because the operator used can deal only with a specific representation of values.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

The following functions are described for this purpose in the SQL reference manual: CHR(a,n), NUM(a), UPPER/LOWER(x), ASCII(x), MAPCHAR(x,n,i), ALPHA(x,n), HEX(a), CHAR(a,t), SOUNDEX(x), VALUE(x,y,...),DECODE(x,y(i),...,z).

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

SELECT * FROM hotel.hotel

  WHERE CHR(hno) LIKE '1__'

Displaying the hotel entries whose numbers contain three digits and begin with 1. The hotel number is converted to character values for this purpose.

Result

HNO | NAME | ZIP | ADDRESS
100 | Beach | 32018 | 1980 34th St.
110 | Atlantik | 33441 | 111 78th St.
120 | Long Beach | 90804 | 35 Broadway
130 | Star | 90029 | 13 Beechwood Place
140 | River Boat | 70112 | 788 MAIN STREET
150 | Indian Horse | 92262 | 16 MAIN STREET

See also: SQL Reference Manual, CHR(a,n)

SELECT * FROM hotel.hotel

  WHERE UPPER(name) = 'STAR'

Displaying the hotel name (not case-sensitive)

Result

HNO | NAME | ZIP | ADDRESS
130 | Star | 90029 | 13 Beechwood Place

See also: SQL Reference Manual, UPPER/LOWER(x)

SELECT VALUE(firstname, 'Company') firstname, name

  FROM hotel.customer

    WHERE firstname IS NULL

Displaying the company name; the NULL value is to be replaced by the name Company

Result

FIRSTNAME | NAME
Company | Datasoft
Company | Toolware

See also: SQL Reference Manual, VALUE(x,y,...)

SELECT hno, price, DECODE(type, 'single', 1, 'double', 2, 'suite', 3) code

  FROM hotel.room

    WHERE hno < 60

Displaying the hotel rooms with another name for the room types

Result

HNO | PRICE | CODE
10 | 200 | 2
10 | 135 | 1
20 | 100 | 2
20 | 70 | 1
30 | 80 | 2
30 | 45 | 1
40 | 140 | 2
40 | 85 | 1
50 | 180 | 2
50 | 105 | 1
50 | 500 | 3

See also: SQL Reference Manual, DECODE(x,y(i),...,z)

More Information

More examples for Data Query


Changing Character Strings - SAP Documentation

Background documentation Changing Character Strings

A series of operations with character strings are available.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Concatenation

You can use the & operator to concatenate CHAR columns.

SELECT name & ', ' & firstname name, zip

  FROM hotel.customer

    WHERE cno < 3500

Last and first names are to be displayed together.

Result

NAME | ZIP
Porter, Jenny | 10580
Brown, Peter | 48226
? | 90019
Brian, Rose | 75243
Griffith, Mary | 20005

See also: SQL Reference Manual, CONCAT(x,y)

Removing and Inserting Characters

You can use the TRIM, LTRIM and RTRIM functions to remove and insert characters.

SELECT RTRIM(title,'any') title, name

  FROM hotel.customer

    WHERE title ='Company'

Specifying an abbreviated company title

Result

TITLE | NAME
Comp | Datasoft
Comp | TOOLware

See also: SQL Reference Manual, TRIM(x,y), LTRIM(x,y), RTRIM(x,y)

Abbreviating Values

SELECT title, SUBSTR(firstname,1,1)& '. '&name name

  FROM hotel.customer

    WHERE firstname IS NOT NULL

Specifying an abbreviated first name that is concatenated with the last name

Result

TITLE | NAME
Mrs | J. Porter
Mr | P. Brown
Mrs | R. Brian
Mrs | M. Griffith
Mr | M. Randolph
Mrs | S. Smith
Mr | M. Jackson
Mrs | R. Doe
Mr | G. Howe
Mr | F. Miller
Mrs | S. Baker
Mr | J. Peters
Mr | A. Jenkins

See also: SQL Reference Manual, SUBSTR(x,a,b)

Moving Values

You can use the LFILL or RFILL functions to fill values of the type CHAR for a specified length with any character.

SELECT LFILL(firstname,' ',10) firstname, name

  FROM hotel.customer

    WHERE firstname IS NOT NULL AND title = 'Mrs'

Specifying a first name that has been moved to the right; the first name and blank characters are to result in a total character string length of 10

Result

FIRSTNAME | NAME
Jenny | Porter
Rose | Brian
Mary | Griffith
Sally | Smith
Rita | Doe
Susan | Baker

See also: SQL Reference Manual, LFILL(x,n,a), RFILL(x,n,a)

EXPAND(x,n) expands a character string by a specified number of blank characters.

Replacements in Character Strings

You can use the REPLACE function to replace one character string with another in the specified column.

SELECT hno, zip, REPLACE(address,'St.','Street') address

  FROM hotel.hotel

    WHERE zip > '40000'

Specifying the address with Streetinstead of the abbreviation Str.

Result

HNO | ZIP | ADDRESS
10 | 20005 | 155 Beechwood Street
20 | 11788 | 1499 Grove Street
30 | 20037 | 477 17th Avenue
40 | 10019 | 112 8th Avenue
70 | 12203 | 65 Yellowstone Dr.
80 | 10019 | 12 Barnard Street
90 | 33575 | 200 Yellowstone Dr.
100 | 32018 | 1980 34th Street
110 | 33441 | 111 78th Street

You can use the TRANSLATE function to replace individual letters with other letters in the specified column. Each occurrence of the ith letter in the first character string is replaced by the ith letter in the second one.

SELECT name, TRANSLATE(name,'ae','xy') name_new

  FROM hotel.customer

    WHERE cno > 4000

The letters a and e are to be replaced by x and y.

Result

NAME | NAME_NEW
Baker | Bxkyr
Peters | Pytyrs
TOOLware | TOOLwxry
Jenkins | Jynkins

See also: SQL Reference Manual, REPLACE(x,y,z), TRANSLATE(x,y,z)

More Information

More examples for Data Query


Set Functions - SAP Documentation

Background documentation Set Functions

The database system contains functions that can be used column by column across several rows. These functions are known as set functions. The following set functions are possible: AVG, COUNT, MAX, MIN, STDDEV, SUM and VARIANCE.

Set functions operate across groups of numbers but return only one value. The result therefore comprises one row. If a set function is used in a data query, a similar function must also be applied to each of the other columns in the query. However, this does not apply to columns that were grouped using GROUP BY. In this case, the value of the set function can be defined for each group (see also: Creating Groups: GROUP BY, HAVING).

With the exception of the COUNT(*) function, no NULL values are included in the calculation of a set function.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

SELECT COUNT(*) number

  FROM hotel.customer

Number of customers

Result

NUMBER

15

SELECT COUNT(DISTINCT name) number_city

  FROM hotel.city

Number of different cities/places

Result

NUMBER_CITY

21

SELECT SUM(price) sum_price, MIN(price) min_price, FIXED(AVG(price),5,2) avg_price, MAX(price) max_price, COUNT(*) number_room

  FROM hotel.room

    WHERE type = 'single'

Evaluating the prices of single rooms: sum of all prices, minimal price, average price, maximum price, and number of single rooms

Result

SUM_PRICE | MIN_PRICE | AVG_PRICE | MAX_PRICE | NUMBER_ROOM
1450 | 45 | 96.67 | 160 | 15

More Information

SQL Reference Manual, Expression (expression)

SQL Reference Manual, Set Function (set_function_spec)

More examples for Data Query


Date and Time Calculations - SAP Documentation

Background documentation Date and Time Calculations

To facilitate the calculation of dates and times, a series of functions are available that can use values of these data types to perform calculations.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

SELECT arrival, ADDDATE (arrival,2) new_arrival, rno

  FROM hotel.reservation

    WHERE rno = 130

Postponing the reservation date by two days

Result

ARRIVAL | NEW_ARRIVAL | RNO
2005-02-01 | 2005-02-03 | 130

SELECT arrival, departure, DATEDIFF(departure, arrival) overnight_stays, rno

  FROM hotel.reservation

    WHERE rno = 130

Number of overnight stays

Result

ARRIVAL | DEPARTURE | OVERNIGHT_STAYS | RNO
2005-02-01 | 2005-02-03 | 2 | 130

More Information

SQL Reference Manual, Date Function (date_function), Time Function (time_function), Extraction (extraction_function)

A variety of date formats (EUR, INTERNAL, ISO, JIS and USA) are available for processing date values.

SQL Reference Manual, Date and Time Format (datetimeformat)

More examples for Data Query


Creating Groups: GROUP BY, HAVING - SAP Documentation

Background documentation Creating Groups: GROUP BY, HAVING

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Grouping of Values: GROUP BY

You can use the GROUP clause to group together the values in a given column and, if necessary, to perform additional calculations for each of these groups using the different column values. With the exception of the column to be grouped, you have to specify a set function for each additional column. You have to specify the GROUP clause after the FROM and WHERE clauses.

SELECT type, SUM(free)

  FROM hotel.room

    GROUP BY type

Number of rooms free, grouped by room type

The Set function used here is the SUM function that calculates the sum of the values.

Result

Since the second column in the results table does not contain any predefined names, the database system selects the column name EXPRESSION1.

TYPE | EXPRESSION1
Double | 1088
Single | 376
Suite | 336

SELECT type, MIN(price) min_price, FIXED(AVG(price),5,2) avg_price, MAX(price) max_price

  FROM hotel.room

    GROUP BY type

Calculating the price categories for the rooms, grouped by room type

The set functions used here are MIN (minimum value), AVG (average value) and MAX (maximum value).

Result

The columns in the results table are assigned the names MIN_PRICE, AVG_PRICE and MAX_PRICE.

TYPE | MIN_PRICE | AVG_PRICE | MAX_PRICE
Double | 80 | 160.67 | 270
Single | 45 | 96.67 | 160
Suite | 300 | 475 | 700

See also:

Additional Examples of Specifying Set Functions

SQL Reference Manual, GROUP Clause

Groups with Conditions: HAVING

You can use the GROUP clause to group together the values in a given column. You can then use the HAVING clause to exclude groups from the temporary results table. In contrast to using the WHERE clause for excluding values, a Set function that refers to an entire column in a temporary results table usually precedes the HAVING clause.

SELECT type, MIN(price) min_price, FIXED(AVG(price),5,2) avg_price, MAX(price) max_price

  FROM hotel.room

    GROUP BY type

    HAVING MIN(price) >= 70

Calculating the price categories for the rooms, grouped by room type; displaying only the room types with rooms at a price of at least 80 euro

Result

TYPE | MIN_PRICE | AVG_PRICE | MAX_PRICE
Double | 80 | 160.67 | 270
Suite | 300 | 475 | 700

See also: SQL Reference Manual, HAVING Clause

More Information

More examples for Data Query


Negative Conditions: NOT - SAP Documentation

Background documentation Negative Conditions: NOT

To obtain the opposite of a particular condition, you have to place the keyword NOT before the relevant expression. If you want to negate a compound expression, you have to place it in parentheses.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Negating an Expression

SELECT name, state

  FROM hotel.city

    WHERE NOT (state = 'CA' OR state = 'WA' OR state = 'IL' OR state = 'NY')

Selecting cities that are not in the states of CA, WA, IL or NY

Result

NAME | STATE
Silver Spring | MD
Daytona Beach | FL
Deerfield Beach | FL
Clearwater | FL
Cincinnati | OH
Detroit | MI
New Orleans | LA
Dallas | TX
Portland | OR

See also: SQL Reference Manual, Search Condition (search_condition)

When the BETWEEN, IN, LIKE and NULL predicates are used, you can place NOT before the predicate or immediately before the relevant keyword (BETWEEN, IN, LIKE, NULL).

NOT BETWEEN

SELECT name, state

  FROM hotel.city

    WHERE NOT (state BETWEEN 'CA' AND 'NY')

or

SELECT name, state

  FROM hotel.city

    WHERE state NOT BETWEEN 'CA' AND 'NY'

Selecting cities that are not in the states of CA, FL, IL, LA, MD, MI or NY

Result

NAME | STATE
Seattle | WA
Seattle | WA
Seattle | WA
Cincinnati | OH
Dallas | TX
Portland | OR

See also: SQL Reference Manual, BETWEEN Predicate (between_predicate)

NOT IN

SELECT name, state

  FROM hotel.city

    WHERE NOT (state IN ('CA','IL','NY'))

or

SELECT name, state

  FROM hotel.city

    WHERE state NOT IN ('CA','IL','NY')

Selecting cities that are not in the states of CA, IL or NY

Result

NAME | STATE
Seattle | WA
Seattle | WA
Seattle | WA
Silver Spring | MD
Daytona Beach | FL
Deerfield Beach | FL
Clearwater | FL
Cincinnati | OH
Detroit | MI
New Orleans | LA
Dallas | TX
Portland | OR

See also: SQL Reference Manual, IN Predicate (in_predicate)

NOT LIKE

SELECT firstname, name

  FROM hotel.customer

    WHERE NOT (firstname LIKE '%e%')

or

SELECT firstname, name

  FROM hotel.customer

    WHERE firstname NOT LIKE '%e%'

Selecting the customers whose first names do not contain e

Result

FIRSTNAME | NAME
Mary | Griffith
Martin | Randolph
Sally | Smith
Rita | Doe
Frank | Miller
Susan | Baker
Antony | Jenkins

See also: SQL Reference Manual, LIKE Predicate (like_predicate)

NOT NULL

SELECT firstname, name

  FROM hotel.customer

    WHERE NOT (firstname IS NULL)

or

SELECT firstname, name

  FROM hotel.customer

    WHERE firstname IS NOT NULL

Selecting the customers with a first name, that is, customers who are not companies

Result

FIRSTNAME | NAME
Jenny | Porter
Peter | Brown
Rose | Brian
Mary | Griffith
Martin | Randolph
Sally | Smith
Mike | Jackson
Rita | Doe
George | Howe
Frank | Miller
Susan | Baker
Joseph | Peters
Antony | Jenkins

See also: SQL Reference Manual, NULL Predicate (null_predicate), Predicate (predicate)

More Information

More examples for Data Query


Searching for Character Strings: LIKE - SAP Documentation

Background documentation Searching for Character Strings: LIKE

To select specific rows, you can use the WHERE clause. If not all the characters in a column value are known, you can also specify incomplete search values. The LIKE predicate is provided for this purpose.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

SELECT firstname, name

  FROM hotel.customer

    WHERE name LIKE 'P%'

Selecting the customers whose last names begin with P

Result

FIRSTNAME | NAME
Jenny | Porter
Joseph | Peters

SELECT firstname, name

  FROM hotel.customer

    WHERE name LIKE '%er'

Selecting the customers whose last names end in er

Result

FIRSTNAME | NAME
Jenny | Porter
Frank | Miller
Susan | Baker

SELECT firstname, name

  FROM hotel.customer

    WHERE firstname LIKE '_i__'

Selecting the customers whose first names are four characters long and that contain i as the second letter

Result

FIRSTNAME | NAME
Mike | Jackson
Rita | Doe

SELECT firstname, name

  FROM hotel.customer

    WHERE name LIKE '_%an%'

Selecting the customers whose last names contain an

Result

FIRSTNAME | NAME
Rose | Brian
Martin | Randolph

See also: SQL Reference Manual, LIKE Predicate (like_predicate)

More Information

More examples for Data Query


Conditions: Comparison, AND, OR, BETWEEN, IN - SAP Documentation

Background documentation Conditions: Comparison, AND, OR, BETWEEN, IN

To select specific rows, you can use the WHERE clause. In WHERE clauses, you can specify search conditions. Some of these conditions are presented below.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

SQL Reference Manual, Predicate (predicate)

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Comparison Conditions

SELECT title, name

  FROM hotel.customer

    WHERE title ='Company'

Selecting the customers that are companies

Result

TITLE | NAME
Company | Datasoft
Company | TOOLware

SELECT firstname, name, zip

  FROM hotel.customer

    WHERE name > 'Randolph'

Selecting the customers that, in alphabetical order, come after Randolph

Result

FIRSTNAME | NAME | ZIP
Sally | Smith | 75243
? | TOOLware | 20019

See also: SQL Reference Manual, Comparison Predicate (comparison_predicate)

Switches: AND, OR

If AND and OR are both used, make sure that AND has a higher priority than OR. You should use parentheses to illustrate the desired multiple conditions. You can also use multiple parentheses. The system then evaluates the data from the innermost to the outermost parentheses.

SELECT firstname, name, zip

  FROM hotel.customer

    WHERE (title ='Company') AND (name > 'Randolph')

Selecting the customers that, in alphabetical order, come after Randolph and that are companies

Result

FIRSTNAME | NAME | ZIP
? | TOOLware | 20019

See also: SQL Reference Manual, Search Condition (search_condition)

Values in a Range: BETWEEN x AND y

SELECT title, name, zip

  FROM hotel.customer

    WHERE zip BETWEEN '10000' AND '30000'

Selection of customers who live in towns with a post code between 10000 and 30000.

Result

TITLE | NAME | ZIP
Mrs | Porter | 10580
Mrs | Griffith | 20005
Company | TOOLware | 20019
Mr | Jenkins | 20903

See also: SQL Reference Manual, BETWEEN Predicate (between_predicate)

Values in a Set: IN (x,...)

You can specify the values in the parentheses in any order you desire, since this is a set of values from which a value is to be selected using the IN predicate.

SELECT title, firstname, name

  FROM hotel.customer

    WHERE title IN ('Mr','Mrs')

Selecting all customers who are natural persons (not companies)

Result

TITLE | FIRSTNAME | NAME
Mrs | Jenny | Porter
Mr | Peter | Brown
Mrs | Rose | Brian
Mrs | Mary | Griffith
Mr | Martin | Randolph
Mrs | Sally | Smith
Mr | Mike | Jackson
Mrs | Rita | Doe
Mr | George | Howe
Mr | Frank | Miller
Mrs | Susan | Baker
Mr | Joseph | Peters
Mr | Antony | Jenkins

See also: SQL Reference Manual, IN Predicate (in_predicate)

More Information

More examples for Data Query


Functions - SAP Documentation

Background documentation Functions

You can use expressions with functions. These functions can be applied to the data in the results table or specified in search conditions.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

Function Descriptions in the Reference Manual | Examples of this Function Group
Arithmetic Function (arithmetic_function) | TRUNC, SIGN, ABS
Trigonometric Function (trigonometric_function) | SIN, ATAN, DEGREES
String Function (string_function) | SUBSTR, UPPER, MAPCHAR
Date Function (date_function) | SUBDATE, DAYOFMONTH, DAYNAME
Time Function (time_function) | ADDTIME, TIMEDIFF, MAKETIME
Extraction (extraction_function) | DAY, TIMESTAMP, DATE
Special Function (special_function) | VALUE, LEAST, CASE functions
Conversion Function (conversion_function) | NUM, HEXTOROW, CHAR
Database Function Call (dbfunction_call) | Call of a database function defined using CREATE FUNCTION

See also: SQL Reference Manual, Function (function_spec)

Most of these functions are self-explanatory. For this reason, examples of just a few selected functions will be given here.

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

String Functions

You can use the string functions to change the display of character strings.

SELECT cno, name & ', ' & firstname name

  FROM hotel.customer

    WHERE cno = 3000

First and last names are linked to one another.

Result

CNO | NAME
3000 | Porter, Jenny

See also: SQL Reference Manual, CONCAT(x,y)

SELECT cno, SUBSTR(firstname,1,1) & '. ' & name name

  FROM hotel.customer

    WHERE cno = 3000

First and last names are linked to one another; the first name is displayed in initials only.

Result

CNO | NAME
3000 | J. Porter

See also: SQL Reference Manual, SUBSTR(x,a,b)

Date Functions

Date functions are applied to date and timestamp values or return a date or timestamp value as a result.

SELECT rno, arrival, DAYNAME(arrival) arrival_day

  FROM hotel.reservation

    WHERE rno < 150

Displaying the day of arrival

Result

RNO | ARRIVAL | ARRIVAL_DAY
100 | 2004-11-13 | Saturday
110 | 2004-12-24 | Friday
120 | 2004-11-14 | Sunday
130 | 2005-02-01 | Tuesday
140 | 2004-04-12 | Monday

See also: SQL Reference Manual, DAYNAME/MONTHNAME(t)

Extractions

You can use extraction functions to display parts of date, time, or timestamp values or to create date, time, or timestamp values.

SELECT name, 675456 number_of_days, DATE(675456) counted_date

  FROM hotel.city

    WHERE zip = '12203'

Displaying when 675456 days after 31.12.0000 have passed

Result

NAME | NUMBER_OF_DAYS | COUNTED_DATE
Albany | 675456 | 1850-05-03

See also: SQL Reference Manual, DATE(a)

General CASE Function

The general CASE function analyzes a sequence of search conditions and delivers a result for each search condition.

SELECT hno,

CASE

  WHEN price IS NULL THEN 'Not yet priced'

  WHEN price < 70 THEN 'Very cheap'

  WHEN price >= 70 AND price < 100 THEN 'Normal price'

    ELSE 'Expensive hotel'

END price_range

  FROM hotel.room

    WHERE hno < 100 AND type = 'single'

Estimating the price classes of single rooms in a selection of hotels

Result

HNO | PRICE_RANGE
10 | Expensive hotel
20 | Normal price
30 | Very cheap
40 | Normal price
50 | Expensive hotel
60 | Expensive hotel
70 | Expensive hotel
80 | Normal price
90 | Normal price

See also: SQL Reference Manual, General CASE Function (searched_case_function)

Simple CASE Function

The simple CASE function compares an expression with a sequence of simple expressions to determine in each case a result expression.

SELECT hno,

CASE price

  WHEN NULL THEN 'Not yet priced'

  WHEN 70 THEN 'Very cheap'

  WHEN 90 THEN 'Cheap'

  WHEN 100 THEN 'Normal hotel'

  WHEN 115 THEN 'Expensive hotel'

  WHEN 135 THEN 'Very expensive hotel'

    ELSE 'Not yet in price_range list'

END price_range

  FROM hotel.room

    WHERE hno < 100 AND type = 'single'

Comparing the prices of a selection of hotels with a rating scale for single room prices

Result

HNO | PRICE_RANGE
10 | Very expensive hotel
20 | Very cheap
30 | Not yet in price_range list
40 | Not yet in price_range list
50 | Not yet in price_range list
60 | Not yet in price_range list
70 | Expensive hotel
80 | Cheap
90 | Cheap

See also: SQL Reference Manual, Simple CASE Function (simple_case_function)

Database function

Before you can execute this example, you have to create the database function avgprice(zip), as described in Database Functions.

SELECT hno, avgprice(zip) avgprice

  FROM hotel.hotel

    WHERE hno = 40

Result

HNO | AVGPRICE
40 | 87.5

See also: SQL Reference Manual, Database Function Call (dbfunction_call)

More Information

More examples for Data Query


IMPORT DB - SAP Documentation

Background documentation IMPORT DB

You can use the IMPORT DB command to import all the data belonging to a database application. Only the owner of the schema may execute the IMPORT DB command.

Prerequisites

You can use the demo databases DEMODB and TESTDB. You have exported the required data using the EXPORT DB command. Start the Loader and log on to the database TESTDB as database system administrator DBADMIN with the password SECRET. Use the session mode: loadercli -d testdb -u dbadmin,secret.

Activities

Data is to be imported into the TESTDB database. You can make entries after the keyword CATALOG and/or DATA to select what is to be imported, the database catalog and/or the data belonging to the application.

Caution Caution

If you import a table, the Loader also creates all the objects and links (views, foreign key dependencies with other tables…) that are defined for the table. If the necessary objects are not present and the import therefore cannot be executed, the Loader notifies you of this fact. Typical error messages include -25451 and -25392. If these errors occur, the import is terminated at this point.

More informatione: Messages documentation

End of the caution.
Importing the Database Catalog

You can import the database catalog information for all database users belonging to the application of a database.

IMPORT DB

  CATALOG INSTREAM 'demodb_ddl.catalog'

The database catalog (CATALOG) is imported in the DDL (default value) format.

See also: Loader, Data Stream

Importing the Application Data

You can import the application data for all database users.

IMPORT DB

  DATA INSTREAM 'demodb_pages.data'

The application data (DATA) is imported in the PAGES format (default value).

IMPORT DB

  DATA INSTREAM 'demodb_records.data' RECORDS

The application data (DATA) is imported in the RECORDS format. A PAGES import uses a database format (based on a page) and does not write Log entries, so it is faster than an import that uses the RECORDS format of the Loader. However, the tables imported in the PAGES format are write-protected until you back up the data.

See also: Loader, PAGES, RECORDS

Importing the Database Catalog and the Application Data

You can import the data belonging to a database application

IMPORT DB

  CATALOG INSTREAM 'demodb_ddl.catalog'

  DATA INSTREAM 'demodb_pages.data'

Note the sequence of the syntax elements. Always enter the syntax element for the import of the database catalog first, and then the syntax element for the import of the application data.

Excluding Tables from the Import

By specifying a data stream after the keyword CONFIGURATION, you can exclude the application data of tables that are specified in this data stream. The tables must be identified in the data stream by specifying the schema and table name.

Test the Loader behavior for different tables. When you exclude tables, you must be careful not to violate any dependencies, such as by excluding the tables CITY or HOTEL. You want to exclude the EMPLOYEE table from the import. Create the employee.configuration file with the following contents:

HOTEL,EMPLOYEE

Specify the following import command in the Loader session mode. Note the sequence of the syntax elements. First, enter the syntax element that excludes the table from the import.

IMPORT DB

  CONFIGURATION INSTREAM 'employee.configuration'

  CATALOG INSTREAM 'demodb_ddl.catalog'

  DATA INSTREAM 'demodb_pages.data'

The database catalog entries of all tables are always imported, regardless of the restrictions made in employee.configuration.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL table are exported to the specified data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

IMPORT DB

  CATALOG INSTREAM 'demodb_ddl.catalog'

See also: Loader, Additional Log Functions (package_spec)

Complete Syntax of the IMPORT DB Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

IMPORT DB

  CONFIGURATION INSTREAM FILE 'employee.configuration' CSV ASCII

  CATALOG INSTREAM FILE 'demodb_ddl.catalog' DDL

  DATA INSTREAM FILE 'demodb_pages.data' PAGES

  PACKAGE OUTSTREAM FILE 'demodb_import.package' CSV

For a complete syntax description, see IMPORT DB command in the Loader documentation.

More Information

Other commands for Importing

Session Mode


IMPORT SCHEMA - SAP Documentation

Background documentation IMPORT SCHEMA

You can import schema data exported from a database using the EXPORT SCHEMA command into a database. Use the IMPORT SCHEMA command to do so. Only the owner of the schema may execute the IMPORT SCHEMA command.

Prerequisites

You can use the demo databases DEMODB and TESTDB. You have exported the required data from demo database DEMODB. In demo database TESTDB, create the data administrator MONA if you have not already done so. Start the Loader and log onto database TESTDB as database administrator MONA with the password RED.

Use the session mode: loadercli -d testdb -u mona,red

As database administrator MONA create the HOTEL schema if this does not already exist.

Activities

The data from the HOTEL schema is to be imported into the TESTDB database. You can make entries after the keyword CATALOG and/or DATA to select what is to be imported, the database catalog and/or the data belonging to the application.

Caution Caution

If you import a table, the Loader also creates all the objects and links (views, foreign key dependencies with other tables…) that are defined for the table. If the necessary objects are not present and the import therefore cannot be executed, the Loader notifies you of this fact. Typical error messages include -25451 and -25392. If these errors occur, the import is terminated at this point.

End of the caution.
Importing the Database Catalog of a Schema

You can import the database catalog information belonging to the application of the schema.

IMPORT SCHEMA hotel

  CATALOG INSTREAM 'hotel_ddl.catalog'

The database catalog (CATALOG) is imported in the DDL (default value) format.

See also: Loader, Data Stream

Importing the Application Data of a Schema

You can import the application data of the schema.

IMPORT SCHEMA hotel

  DATA INSTREAM 'hotel_pages.data'

The application data (DATA) is imported in the PAGES format (default value).

IMPORT SCHEMA hotel

  DATA INSTREAM 'hotel_records.data' RECORDS

The application data (DATA) is imported in the RECORDS format. A PAGES import uses a database format (based on a page) and does not write Log entries, so it is faster than an import that uses the RECORDS format of the Loader. However, the tables imported in the PAGES format are write-protected until you back up the data.

See also: Loader, PAGES, RECORDS

Importing the Database Catalog and the Application Data of a Schema

You can import the data belonging to the application of a schema.

IMPORT SCHEMA hotel

  CATALOG INSTREAM 'hotel_ddl.catalog'

  DATA INSTREAM 'hotel_pages.data'

Note the sequence of the syntax elements. Always enter the syntax element for the import of the database catalog first, and then the syntax element for the import of the application data.

Excluding Tables from the Import

By specifying a data stream after the keyword CONFIGURATION, you can exclude the application data of selected tables that are specified in this data stream. The tables must be identified in the data stream by specifying the schema and table name.

Test the Loader behavior for different tables. When you exclude tables, you must be careful not to violate any dependencies, such as by excluding the tables CITY or HOTEL. You want to exclude the EMPLOYEE table from the import. Create the employee.configuration file with the following contents:

HOTEL,EMPLOYEE

Specify the following import command in the Loader session mode. Note the sequence of the syntax elements. First, enter the syntax element that excludes the table from the import.

IMPORT SCHEMA hotel

  CONFIGURATION INSTREAM 'employee.configuration'

  CATALOG INSTREAM 'hotel_ddl.catalog'

  DATA INSTREAM 'hotel_pages.data'

The database catalog entries of all tables are always imported, regardless of the restrictions made in employee.configuration.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL are exported to this data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

IMPORT SCHEMA hotel

  CATALOG INSTREAM 'hotel_ddl.catalog'

  PACKAGE OUTSTREAM 'hotel_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Complete Syntax of the IMPORT SCHEMA Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

IMPORT SCHEMA hotel

  CONFIGURATION INSTREAM FILE 'employee.configuration' CSV ASCII

  CATALOG INSTREAM FILE 'hotel_ddl.catalog' DDL

  DATA INSTREAM FILE 'hotel_pages.data' PAGES

  PACKAGE OUTSTREAM FILE 'hotel_csv.package' CSV

For a complete syntax description, see IMPORT SCHEMA command in the Loader documentation.

More Information

Other commands for Importing

Session Mode


UPDATE COLUMNS - SAP Documentation

Background documentation UPDATE COLUMNS

You can use the UPDATE COLUMNS command to change individual column values of a table. The table specified must be available in the database.

Prerequisites

You can use all of the demo data in database DEMODB. Start the Loader and log onto demo database DEMODB as database administrator MONA with the password RED.

Use the session mode: loadercli -d demodb -u mona,red

Activities

The data of the CUSTOMER table in the HOTEL schema is to be changed. After the keyword TABLE you can specify the table and column description. The column definition of the target columns occurs after the keyword SET. You can make entries after the keyword DATA to control which new column values are to be set.

Updating Values in a Table Column

You can update the values of columns of a table.

UPDATE COLUMNS TABLE hotel.customer

    cno 1

    SET address 5

  DATA INSTREAM 'customer_csv.data'

The application data (DATA) is imported in CSV format (default value).

The CNO column is the qualification column. In the CUSTOMER table, rows for updating a column value are selected that are qualified by the CNO values specified in customer_csv.data. The ADDRESS values in each of these rows are replaced by the ADDRESS values specified in customer_csv.data.

UPDATE COLUMNS TABLE hotel.customer

    cno 1-5

    SET address 76-116

  DATA INSTREAM 'customer_fwv.data' FWV

The application data (DATA) is imported in FWV format.

UPDATE COLUMNS TABLE hotel.customer

    cno 1-5

    SET address 76-116

  DATA INSTREAM 'customer_fwvbinary.data' FWV BIMARY

The application data (DATA) is imported in FWV BINARY format.

See also: Loader, Data Stream, CSV, FWV, FWV BINARY

Updating Values in More than One Column of a Table

You can update the values of more than one column in a table.

UPDATE COLUMNS TABLE hotel.customer

    cno 1

    SET firstname 'Secret'

    SET address 5

  DATA INSTREAM 'customer_csv.data'

The CNO column is the qualification column. In the CUSTOMER table, rows for updating a column value are selected that are qualified by the CNO values specified in customer_csv.data. The FIRSTNAME values in each of these rows are replaced by the value Secret. The ADDRESS values in each of these rows are replaced by the ADDRESS values specified in customer_csv.data.

if_condition

You can select individual data records from the DATA data stream and then update these records only in the specified table. Note the sequence of the syntax elements. Enter the IF condition first.

UPDATE COLUMNS TABLE hotel.customer

  IF POS 1 > '4000'

    cno 1

    SET address 5

  DATA INSTREAM 'customer_csv.data'

The rows that have a value above 4000 in the CNO column are updated in the CUSTOMER table.

Handling LOB Values

The data of the HOTEL table in the HOTEL schema is to be updated. The HOTEL table has the LOB column INFO. Enter the LOB syntax element after the DATA syntax element.

UPDATE COLUMNS TABLE hotel.hotel

    hno 1

    SET name 2

    SET info 5

  DATA INSTREAM 'hotel_csv.data'

  LOB INSTREAM INFO 'hotel_info_csv.lob'

The NAME and INFO columns in the HOTEL table are updated. The LOB values are stored in the data stream hotel_info_csv.lob

See also: Loader, Exporting and Importing LOB Values

Complete Syntax of the UPDATE COLUMNS Command

Combining the syntax options can result in correspondingly complex commands.

UPDATE COLUMNS TABLE hotel.customer

  IF POS 1 > '4000'

    cno 1

    SET firstname 'Secret'

    SET address 5

  DATA INSTREAM FILE 'customer_csv.data' CSV

For a complete syntax description, see UPDATE COLUMNS Command in the Loader documentation.

More Information

Commands for Exporting

Commands for Importing

Session Mode


Transport - SAP Documentation

Background documentation Transport

The following are some examples of data transports (export with subsequent import) where the Loader CLI is in transport mode.

Prerequisites

You require the demo databases DEMODB and TESTDB.

Start the Loader in transport mode: loadercli -p.

You do not require and knowledge about the Loader syntax in transport mode. The generated Loader commands are, however, displayed on the console and in the Loader files, and can be used as templates for writing your own Loader commands.

Note Note

The transport mode is available for 32 bit platforms only.

End of the note.

Activities

Executing Transports

You want to transport the database catalog and the application data of the HOTEL schema for database user MONA between databases DEMODB and TESTDB.

loadercli -p

Package history: C:\Documents and Settings\anna\Application Data\sdb\loader\log\transport.log

Package path: c:\transport

Package name : 20060302090909

Step 1: Enter a package path

Package path: c:\transport

Step 2: Enter a package comment

Package comment: transport

Step 3: What do you want to do?

[1] Transport from a source database to a target database

[2] Export from a source database

[3] Import to a target database

Step 3: 1

Step 4: What do you want to do?

[1] Choose a transport package

[2] Create a transport package

Step 4:2

Step 5: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Step 6: Enter the target database connection

Database computer : genua

Database name : testdb

Database user : mona

Password : red

Step 7: Choose what you want to include in the package

[1] Complete user

[2] Complete user excluding some tables

[3] Complete schema

[4] Complete schema excluding some tables

[5] Schema tables

Step 7: 1

Step 8: Choose the transformation streams

[1] Catalog and data

[2] Catalog

[3] Data

Step 8: 1

Step 9: The package can be executed or generated now.

[1] Execute package to transport data now

[2] Generate package to execute it later

Step 9: 1

Transport package name : 20060302090909

Transport package comment : transport

Transport package creation : 20060302090909

Transport package execution : 20060302090909

Transport package path : c:\transport

Transport package status [-T]: EXECUTE

Transport direction [-t]: TRANSPORT

Transport package [-p]: USER

Transport part  [-P]: USER

Transport streams [-s]: CATALOG,DATA,PACKAGE

Transport format [-f]: RECORDS

Transport format [-F]: ROW

Transport encoding [-c]:

Transport lobcolumn [-l]: TABLE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Target database computer [-nTRC]: GENUA

Target database name [-dTRC]: TESTDB

Target database user [-uTRC]: MONA

Step 10: Continue

[1] OK

[2] CANCEL

Step 10: 1

EXPORT USER

CATALOG OUTSTREAM PIPE 'MONA.CATALOG' DDL

DATA  OUTSTREAM PIPE 'MONA.DATA' RECORDS

  ;

IMPORT USER UPDATE DUPLICATES

CATALOG STREAM PIPE 'MONA.CATALOG' DDL

DATA     INSTREAM PIPE 'MONA.DATA' RECORDS

  ;

Package execution time   : 11.625s

Package execution log : loader_20060302090909

Package name : 20060302090909

You can see the Loader commands that are processed when transport package 20060302090909 is executed in log file loader_20060302090909.log .

Repeating Transports

If you would like to repeat the transport you just executed in transport mode, specify the name of the transport package when you call the Loader CLI:

loadercli -p 20060302090909

Step 1: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Step 2: Enter the target database connection

Database computer : genua

Database name : testdb

Database user : mona

Password : red

Transport package name : 20060302090909

Transport package comment : transport

Transport package creation : 20060302090909

Transport package execution : 20060302101010

Transport package path : c:\transport

Transport package status [-T]: EXECUTE

Transport direction [-t]: TRANSPORT

Transport package [-p]: USER

Transport format [-f]: RECORDS

Transport format [-F]: ROW

Transport part  [-P]: USER

Transport streams [-s]: CATALOG,DATA,PACKAGE

Transport encoding [-c]:

Transport lobcolumn [-l]:

TABLE Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Target database computer [-nTRC]: GENUA

Target database name [-dTRC]: TESTDB

Target database user [-uTRC]: MONA

EXPORT USER

CATALOG OUTSTREAM PIPE 'MONA.CATALOG' DDL

DATA  OUTSTREAM PIPE 'MONA.DATA' RECORDS

  ;

IMPORT USER UPDATE DUPLICATES

CATALOG STREAM PIPE 'MONA.CATALOG' DDL

DATA     INSTREAM PIPE 'MONA.DATA' RECORDS

  ;

Package execution time   : 6.953s

Package execution log : loader_20060302101010

Package name : 20060302090909

You can see the Loader commands that are processed when transport package 20060302090909 is executed in log file loader_20060302101010.log .

Generating a Transport Package

If you want to generate a transport package without executing it, proceed as follows:

loadercli -p

Package history: C:\Documents and Settings\anna\Application Data\sdb\loader\log\transport.log

Package path: c:\transport

Package name : 20060302141414

Step 1: Enter a package path:

Package path:c:\transport

Step 2: Enter a package comment

Package comment: transport_generate

Step 3: What do you want to do?

[1] Transport from a source database to a target database

[2] Export from a source database

[3] Import to a target database

Step 3: 1

Step 4: What do you want to do?

[1] Choose a transport package

[2] Create a transport package

Step 4: 2

Step 5: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Step 6: Enter the target database connection

Database computer : genua

Database name : testdb

Database user : mona

Password : red

Step 7: Choose what you want to include in the package

[1] Complete user

[2] Complete user excluding some tables

[3] Complete schema

[4] Complete schema excluding some tables

[5] Schema tables

Step 7: 1

Step 8: Choose the transformation streams

[1] Catalog and data

[2] Catalog

[3] Data

Step 8: 1

Step 9: The package can be generated or executed now.

[1] Execute package to transport data now

[2] Generate package to execute it later

Step 9: 2

Transport package name : 20060302141414

Transport package comment : transport_generate

Transport package creation : 20060302141414

Transport package execution : 20060302141414

Transport package path : c:\transport

Transport package status [-T]: GENERATE

Transport direction [-t]: TRANSPORT

Transport package [-p]: USER

Transport part  [-P]: USER

Transport streams [-s]: CATALOG,DATA,PACKAGE

Transport format [-f]: RECORDS

Transport format [-F]: ROW

Transport encoding [-c]:

Transport lobcolumn [-l]:

TABLE Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Target database computer [-nTRC]: GENUA

Target database name [-dTRC]: TESTDB

Target database user [-uTRC]: MONA

Step 9: Continue

[1] OK

[2] CANCEL

Step 9: 1

EXPORT USER

CATALOG OUTSTREAM PIPE 'MONA.CATALOG' DDL

DATA  OUTSTREAM PIPE 'MONA.DATA' RECORDS

  ;

IMPORT USER UPDATE DUPLICATES

CATALOG STREAM PIPE 'MONA.CATALOG' DDL

DATA     INSTREAM PIPE 'MONA.DATA' RECORDS

  ;

Package execution time   : 8.484s

Package name : 20060302141414

Executing a Generated Transport Package

If you would like to execute the generated transport information in transport mode, specify the name of the transport package when you call the Loader CLI:

loadercli -p 20060302141414

Step 1: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Step 2: Enter the target database connection

Database computer : genua

Database name : testdb

Database user : mona

Password : red

Transport package name : 20060302141414

Transport package comment : transport_generate

Transport package creation : 20060302141414

Transport package execution : 20060302151515

Transport package path : c:\transport

Transport package status [-T]: EXECUTE

Transport direction [-t]: TRANSPORT

Transport package [-p]: USER

Transport part  [-P]: USER

Transport streams [-s]: CATALOG,DATA,PACKAGE

Transport format [-f]: RECORDS

Transport format [-F]: ROW

Transport encoding [-c]:

Transport lobcolumn [-l]:

TABLE Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Target database computer [-nTRC]: GENUA

Target database name [-dTRC]: TESTDB

Target database user [-uTRC]: MONA

EXPORT USER

CATALOG OUTSTREAM PIPE 'MONA.CATALOG' DDL

DATA  OUTSTREAM PIPE 'MONA.DATA' RECORDS

  ;

IMPORT USER UPDATE DUPLICATES

CATALOG STREAM PIPE 'MONA.CATALOG' DDL

DATA     INSTREAM PIPE 'MONA.DATA' RECORDS

  ;

Package execution time   : 6.781s

Package execution log : loader_20060302151515

Package name : 20060302141414

You can see the Loader commands that are processed when transport package 20060302141414 is executed in log file loader_20060302151515.log .

More Information

Transport Mode

Exporting

Importing

Command File Mode

Session Mode

Loader, Loader Log File


IMPORT TABLE - SAP Documentation

Background documentation IMPORT TABLE

You can import all data of a table exported from a database using the EXPORT TABLE command to a database. Use the IMPORT TABLE command to do so. It is not possible to select specific column values with the IMPORT TABLE command; you can only do this with the IMPORT COLUMNS command. Only the owner of the table may execute the IMPORT TABLE ...PAGE and IMPORT TABLE ...PAGES WITH ... commands. In all other cases you must have access authorization for the table you want to import the data to.

Prerequisites

You can use the demo databases DEMODB and TESTDB. You have exported the required data from demo database DEMODB. In demo database TESTDB, create the data administrator MONA if you have not already done so. Start the Loader and log onto database TESTDB as database administrator MONA with the password RED.

Use the session mode: loadercli -d testdb -u mona,red

Activities

The data from the selected table is to be imported into the TESTDB database. You can make entries after the keywords CATALOG and/or DATA to select what is to be imported, the database catalog and/or the application data.

Caution Caution

If you import a table, the Loader also creates all the objects and links (views, foreign key dependencies with other tables…) that are defined for the table. If the necessary objects are not present and the import therefore cannot be executed, the Loader notifies you of this fact. Typical error messages include -25451 and -25392. If these errors occur, the import is terminated at this point.

End of the caution.

Test the Loader behavior for different tables. If necessary, enter the required dependent objects into the TESTDB database. The ROOM table, for example, is dependent on the CITY and HOTEL tables.

Importing the Database Catalog of a Table

You can import all the database catalog information for a table.

IMPORT TABLE hotel.room

  CATALOG INSTREAM 'room_ddl.catalog'

The database catalog (CATALOG) is imported in the DDL format.

See also: Loader, Data Stream

Importing a Table’s Application Data

You can import all the application data of a table.

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_csv.data'

The application data (DATA) is imported in the CSV format (default value).

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_fwv.data' FWV

    type 6-11

    free 12-31

    price 32-51

The application data (DATA) is imported in the FWV format.

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_fwvbinary.data' FWV BINARY

    hno 1-5

    type 6-11

    free 12-31

    price 32-51

The application data (DATA) is imported in the FWV BINARY format.

See also: Loader, CSV, FWV, FWV BINARY

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_pages.data' PAGES

The application data (DATA) is imported in the PAGES format. A PAGES import uses a database format (based on a page) and does not write log entries, so it is faster than an import that uses one of the other formats. However, the tables imported in the PAGES format are write-protected until you back up the data.

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_records.data' RECORDS

The application data (DATA) is imported in the RECORDS format.

See also: Loader, PAGES, RECORDS

Performance Improvement

You can speed up an IMPORT TABLE process considerably even if you are using format CSV, FWV [BINARY] by importing page by page. In this case you should use the PAGE WITH ... option of the usage_spec syntax rule for the DATA INSTREAM data stream, which determines that the table data is imported page by page.

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_csv.data'

  PAGE WITH 80 % USAGE

The application data is imported into the blank table ROOM. The application data is read from the data stream in the CSV data format and imported into the ROOM table page by page with a fill level of 80%.

See also: Loader, Performance Improvement in the IMPORT TABLE

Importing the Database Catalog and all the Application Data of a Table

You can import all the data in the specified table.

IMPORT TABLE hotel.room

  CATALOG INSTREAM 'room_ddl.catalog'

  DATA INSTREAM 'room_csv.data'

Note the sequence of the syntax elements. Always enter the syntax element for the import of the database catalog first, and then the syntax element for the import of the application data.

if_condition

You can select individual data records from a DATA data stream in the formats CSV, FWV or RECORDS and then import only these records to the specified table. The IF condition is ignored if a data stream is imported in the PAGES format as the complete page is always imported. Note the sequence of the syntax elements. Enter the IF condition first.

IMPORT TABLE hotel.room

  IF POS 4 < '200'

  CATALOG INSTREAM 'room_ddl.catalog'

  DATA INSTREAM 'room_csv.data'

The rows that have a value below 200 in the PRICE column are imported to the ROOM table.

See also: Loader, Selecting Data Records

DUPLICATES Clause

Use the DUPLICATES clause to control the behavior if duplicate table rows occur. Note the sequence of the syntax elements. Enter the DUPLICATES clause after the IF condition.

IMPORT TABLE hotel.room

  UPDATE DUPLICATES

  CATALOG INSTREAM 'room_ddl.catalog'

  DATA INSTREAM 'room_csv.data'

The application data of table ROOM is imported and an existing row is overwritten with the imported data record.

See also: Loader, IMPORT TABLE command, Duplicates clause

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL table are exported to the specified data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

IMPORT TABLE hotel.room

  CATALOG INSTREAM 'room_ddl.catalog'

  PACKAGE OUTSTREAM 'room_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Handling LOB Values

If you use the CSV and FWV [BINARY] formats, extra data streams are created for the LOB data during export. The data of the HOTEL table in the HOTEL schema is to be imported. The HOTEL has the LOB column INFO, the contents of which were exported in a separate data stream. Enter the LOB syntax element after the DATA syntax element.

IMPORT TABLE hotel.hotel

  DATA INSTREAM 'hotel_csv.data'

  LOB INSTREAM INFO 'hotel_info_csv.lob'

All the columns in the HOTEL table are imported. The LOB values are stored in the data stream  hotel_info_csv.lob.

If you use the PAGES and RECORDS formats, all data from the table, including LOB data, is exported to a data stream during export. A LOB syntax element is therefore not necessary for the import.

IMPORT TABLE hotel.hotel

  INSTREAM 'hotel_records.data' RECORDS

All columns of the HOTEL table, including the LOB column INFO, are imported from the hotel_records.data data stream.

See also: Loader, Importing LOB Values

Complete Syntax of the IMPORT TABLE Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

IMPORT TABLE hotel.room

  IF POS 4 < '200'

  UPDATE DUPLICATES

  CATALOG INSTREAM FILE 'room_ddl.catalog' DDL

  DATA INSTREAM FILE 'room_csv.data' CSV

  PAGE WITH 80 % USAGE

  PACKAGE OUTSTREAM FILE 'room_csv.package' CSV

For a complete syntax description, see IMPORT TABLE Command in the Loader documentation.

If you want to import only selected column values instead of all the table data, select the IMPORT COLUMNS command.

More Information

Other commands for Importing

Session Mode


Explanation of the Tables in the HOTEL Demo Schema - SAP Documentation

Background documentation Explanation of the Tables in the HOTEL Demo Schema

After you execute the SQL statements for the HOTEL demo schema, the HOTEL demo schema contains the tables CITY, CUSTOMER, HOTEL, ROOM and RESERVATION. The tables have been filled with demo data by the INSERT statements.

CITY (City Table)

Every table row contains the following city information: zip code, city name and abbreviation of the name of the state in which the city is located.

CREATE TABLE city

(zip CHAR(5) PRIMARY KEY,

 name CHAR(30) NOT NULL,

 state CHAR(2) NOT NULL)

ZIP | NAME | STATE
12203 | Albany | NY
60601 | Chicago | IL
60615 | Chicago | IL
45211 | Cincinnati | OH
33575 | Clearwater | FL
75243 | Dallas | TX
32018 | Daytona Beach | FL
33441 | Deerfield Beach | FL
48226 | Detroit | MI
90029 | Hollywood | CA
92714 | Irvine | CA
90804 | Long Beach | CA
11788 | Long Island | NY
90018 | Los Angeles | CA
70112 | New Orleans | LA
10580 | New York | NY
10019 | New York | NY
92262 | Palm Springs | CA
97213 | Portland | OR
60018 | Rosemont | IL
95054 | Santa Clara | CA
20903 | Silver Spring | MD
20037 | Seattle | WA
20005 | Seattle | WA
20019 | Seattle | WA
CUSTOMER (Customer Table)

Every table row contains the following customer information: a number for uniquely identifying the customer, the title to be used in correspondence, the customer’s first and last names, and the customer address, consisting of the zip code, street, and house number.

CREATE TABLE customer

(cno FIXED(4) PRIMARY KEY,

 title CHAR(7),

 firstname CHAR(20),

 name CHAR(40) NOT NULL,

 zip CHAR(5),

 address CHAR(40) NOT NULL)

CNO | TITLE | FIRSTNAME | NAME | ZIP | ADDRESS
3000 | Mrs | Jenny | Porter | 10580 | 1340 N. Ash Street, #3
3100 | Mr | Peter | Brown | 48226 | 1001 34th St., APT.3
3200 | Company | ? | Datasoft | 90018 | 486 Maple St.
3300 | Mrs | Rose | Brian | 75243 | 500 Yellowstone Drive, #2
3400 | Mrs | Mary | Griffith | 20005 | 3401 Elder Lane
3500 | Mr | Martin | Randolph | 60615 | 340 MAIN STREET, #7
3600 | Mrs | Sally | Smith | 75243 | 250 Curtis Street
3700 | Mr | Mike | Jackson | 45211 | 133 BROADWAY APT. 1
3800 | Mrs | Rita | Doe | 97213 | 2000 Humboldt St., #6
3900 | Mr | George | Howe | 75243 | 111 B Parkway, #23
4000 | Mr | Frank | Miller | 95054 | 27 5th St., 76
4100 | Mrs | Susan | Baker | 90018 | 200 MAIN STREET, #94
4200 | Mr | Joseph | Peters | 92714 | 700 S. Ash St., APT.12
4300 | Company | ? | TOOLware | 20019 | 410 Mariposa St., #10
4400 | Mr | Antony | Jenkins | 20903 | 55 A Parkway, #15
HOTEL (Hotel Table)

Every table row contains the following hotel information: a number for uniquely identifying the hotel, the hotel name and hotel address, consisting of the zip code, street and house number.

CREATE TABLE hotel

(hno FIXED(4) PRIMARY KEY,

 name CHAR(50) NOT NULL,

 zip CHAR(5),

 address CHAR(40) NOT NULL)

HNO | NAME | ZIP | ADDRESS
10 | Congress | 20005 | 155 Beechwood St.
20 | Long Island | 11788 | 1499 Grove Street
30 | Regency | 20037 | 477 17th Avenue
40 | Eighth Avenue | 10019 | 112 8th Avenue
50 | Lake Michigan | 60601 | 354 OAK Terrace
60 | Airport | 60018 | 650 C Parkway
70 | Empire State | 12203 | 65 Yellowstone Dr.
80 | Midtown | 10019 | 12 Barnard St.
90 | Sunshine | 33575 | 200 Yellowstone Dr.
100 | Beach | 32018 | 1980 34th St.
110 | Atlantic | 33441 | 111 78th Street
120 | Long Beach | 90804 | 35 Broadway
130 | Star | 90029 | 13 Beechwood Place
140 | River Boat | 70112 | 788 MAIN STREET
150 | Indian Horse | 92262 | 16 MAIN STREET
ROOM (Room Table)

Every table row contains the following room information: a number for uniquely identifying the hotel in which the room is located, information about the room type (single room, double room, or suite), the number of rooms free and the price per room.

CREATE TABLE room

(hno FIXED(4),

 type CHAR(6) PRIMARY KEY (hno,type),

 free FIXED(3,0),

 price FIXED(6,2))

HNO | TYPE | FREE | PRICE
10 | double | 45 | 200.00
10 | single | 20 | 135.00
20 | double | 13 | 100.00
20 | single | 10 | 70.00
30 | double | 15 | 80.00
30 | single | 12 | 45.00
40 | double | 35 | 140.00
40 | single | 20 | 85.00
50 | double | 230 | 180.00
50 | single | 50 | 105.00
50 | suite | 12 | 500.00
60 | double | 39 | 200.00
60 | single | 10 | 120.00
60 | suite | 20 | 500.00
70 | double | 11 | 180.00
70 | single | 4 | 115.00
80 | double | 19 | 150.00
80 | single | 15 | 90.00
80 | suite | 5 | 400.00
90 | double | 145 | 150.00
90 | single | 45 | 90.00
90 | suite | 60 | 300.00
100 | double | 24 | 100.00
100 | single | 11 | 60.00
110 | double | 10 | 130.00
110 | single | 2 | 70.00
120 | double | 78 | 140.00
120 | single | 34 | 80.00
120 | suite | 55 | 350.00
130 | double | 300 | 270.00
130 | single | 89 | 160.00
130 | suite | 100 | 700.00
140 | double | 9 | 200.00
140 | single | 10 | 125.00
140 | suite | 78 | 600.00
150 | double | 115 | 190.00
150 | single | 44 | 100.00
150 | suite | 6 | 450.00
RESERVATION (Reservation Table)

Every table row contains the following reservation information: a number for uniquely identifying the reservation, a number for uniquely identifying the customer, a number for uniquely identifying the hotel, information about the room type (single room, double room, suite), and date of arrival and departure.

CREATE TABLE reservation

(rno FIXED(4) PRIMARY KEY,

 cno FIXED(4),

 hno FIXED(4),

 type CHAR(6),

 arrival DATE NOT NULL,

 departure DATE NOT NULL)

RNO | CNO | HNO | TYPE | ARRIVAL | DEPARTURE
100 | 3000 | 80 | Single | 2004-11-13 | 2004-11-15
110 | 3000 | 100 | Double | 2004-12-24 | 2005-01-06
120 | 3200 | 50 | Suite | 2004-11-14 | 2004-11-18
130 | 3900 | 110 | Single | 2005-02-01 | 2005-02-03
140 | 4300 | 80 | Double | 2005-03-14 | 2005-03-24
150 | 3600 | 70 | Double | 2004-04-12 | 2004-04-30
160 | 4100 | 70 | Single | 2004-04-12 | 2004-04-15
170 | 4400 | 150 | Suite | 2004-09-01 | 2004-09-03
180 | 3100 | 120 | Double | 2004-12-23 | 2005-01-08
190 | 4300 | 140 | Double | 2004-11-14 | 2004-11-17

Note Note

If you load the complete set of demo data with the Installation Manager or the Database Studio, the tables are created with much more extensive definitions and a larger number of data records and additional objects (such as views, indexes, and so on). You can also use this demo data to test the SQL statements. However, the result set specified for an example in this SQL tutorial may differ from the result set you receive for the complete set of demo data.

End of the note.

More Information

DEMO Data for the SQL Tutorial

Concepts of the Database System, Demo Database, Objects in the HOTEL Schema


Transport Mode - SAP Documentation

Background documentation Transport Mode

In transport mode the user is requested, via an interactive process, to input data so that application data can be exported from one database and, where appropriate, imported to a different database. The input parameters and the Loader configuration file can be used to generate the syntax of the Loader commands and to execute the required transformation (transport, export, import).

Prerequisites

You require the demo databases DEMODB and TESTDB.

Start the Loader in transport mode: loadercli -p.

You do not require and knowledge about the Loader syntax in transport mode. The generated Loader commands are, however, displayed on the console and in the Loader files, and can be used as templates for writing your own Loader commands.

Note Note

The transport mode is available for 32 bit platforms only.

End of the note.

Activities

Some examples of the different uses of the Loader CLI in transport mode are introduced below using examples.

  • Examples for transport

  • Examples for export

  • Examples for import

More Information

Loader, Transport Mode, Transformation

Command File Mode

Session Mode


Export - SAP Documentation

Background documentation Export

The following are some examples of data exporting with Loader CLI in transport mode.

Prerequisites

You require the demo databases DEMODB and TESTDB.

Start the Loader in transport mode: loadercli -p.

You do not require and knowledge about the Loader syntax in transport mode. The generated Loader commands are, however, displayed on the console and in the Loader files, and can be used as templates for writing your own Loader commands.

Note Note

The transport mode is available for 32 bit platforms only.

End of the note.

Activities

Executing the Export

You want to export table HOTEL of schema HOTEL of database user MONA from database DEMODB. The application data is to be exported as files in CSV format. The values of the column INFO of data type LOB of table HOTEL are to be exported to a separate file for each data record.

loadercli -p

Package history: C:\Documents and Settings\anna\Application Data\sdb\loader\log\transport.log

Package path: c:\transport

Package name : 20060312161616

Step 1: Enter a package path

Package path: c:\transport

Step 2: Enter a package comment

Package comment: export

Step 3: What do you want to do?

[1] Transport from a source database to a target database

[2] Export from a source database

[3] Import to a target database

Step 3: 2

Step 4: What do you want to do?

[1] Choose an export package

[2] Create an export package

Step 4: 2

Step 5: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Step 6: Choose what you want to include in the package

[1] Complete user; one file per user

[2] Complete user; one file per user, excluding some tables

[3] Complete user; one file per table

[4] Complete user; one file per table, excluding some tables

[5] Complete schema; one file per schema

[6] Complete schema; one file per schema, excluding some tables

[7] Complete schema; one file per table

[8] Complete schema; one file per table, excluding some tables

[9] Schema tables; one file per table

Step 6: 9

Step 7: Enter the source database connection

Database schema : hotel

Step 8: Enter the table names you want to include in the package

[1]hotel

[2]

Step 9: Choose the transformation streams

[1] Catalog and data

[2] Catalog

[3] Data

Step 9: 1

Step 10: Do you want to specify the datastream format?

[1] Yes

[2] No

Step 10: 1

Step 11: How do you want to export the datastream?

[1] Comma separated values; one file per lob column

[2] Comma separated values; one file per lob value

[3] Fixed width values; one file per lob column

[4] Fixed width values; one file per lob value

[5] Platform independent loader records format (with logging)

[6] Platform independent database page format (without logging, backup necessary)

Step 11: 2

Step 12: How do you want to import the data?

[1] Row by row (with logging)

[2] Row by page (without logging, backup necessary)

Step 12: 1

Step 13: The package can be executed or generated now.

[1] Execute package to transport data now

[2] Generate package to transport data later

Step 13: 1

Export package name : 20060312161616

Export package comment : export

Export package creation : 20060312161616

Export package execution : 20060312161616

Export package path : c:\transport

Export package status [-T]: EXECUTE

Export direction [-t]: EXPORT

Export package [-p]: TABLE

Export part [-P]: TABLE

Export streams [-s]: CATALOG,DATA,PACKAGE

Export format [-f]: CSV

Export format [-F]: ROW

Export encoding [-c]:

Export lobcolumn [-l]: COLUMNVALUE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Source database table : "HOTEL"."HOTEL"

Step 14: Continue

[1] OK

[2] CANCEL

Step 14: 1

EXPORT TABLE "HOTEL"

CATALOG OUTSTREAM FILE 'HOTEL.CATALOG' DDL

DATA OUTSTREAM FILE 'HOTEL.DATA' CSV

Start 1 MAXROWS

LOB OUTSTREAM FILE "INFO" 'HOTEL_INFO.DATA###'

  ;

Package execution time   : 10.039s

Package execution log : loader_20060312161616.log

Package name : 20060312161616

You can see the Loader commands that are processed when export package 20060312161616 is executed in log file loader_20060312161616.log.

Repeating the Export

If you would like to repeat the export you just executed, specify the name of the export package when you call the Loader CLI:

loadercli -p 20060312161616

Step 1: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Export package name : 20060312161616

Export package comment : export

Export package creation : 20060312161616

Export package execution : 20060312171717

Export package path : c:\transport

Export package status [-T]: EXECUTE

Export direction [-t]: EXPORT

Export package [-p]: 20060312161616

Export part [-P]: TABLE

Export streams [-s]: CATALOG,DATA,PACKAGE

Export format [-f]: CSV

Export format [-F]: ROW

Export encoding [-c]:

Export lobcolumn [-l]: COLUMNVALUE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Source database table : "HOTEL"."HOTEL"

EXPORT TABLE "HOTEL

CATALOG OUTSTREAM FILE 'HOTEL.CATALOG' DDL

DATA OUTSTREAM FILE 'HOTEL.DATA' CSV

Start 1 MAXROWS

LOB OUTSTREAM FILE "INFO" 'HOTEL_INFO.DATA###'

  ;

Package execution time   : 2.152s

Package execution log : loader_20060312171717.log

Package name : 20060312161616

In log file loader_20060312171717.log, you can see the Loader commands that are processed when export package 20060312161616 is executed.

Generating an Export Package

If you want to generate an export package without executing it, proceed as follows:

loadercli -p

Package history: C:\Documents and Settings\anna\Application Data\sdb\loader\log\transport.log

Package path: c:\transport

Package name : 20060322101010

Step 1: Enter a package path

Package path: c:\transport

Step 2: Enter a package comment

Package comment: export_generate

Step 3: What do you want to do?

[1] Transport from a source database to a target database

[2] Export from a source database

[3] Import to a target database

Step 3: 2

Step 4: What do you want to do?

[1] Choose an export package (updates data)

[2] Create an export package

Step 4: 2

Step 5: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Step 6: Choose what you want to include in the package

[1] Complete user; one file per user

[2] Complete user; one file per user, excluding some tables

[3] Complete user; one file per table

[4] Complete user; one file per table, excluding some tables

[5] Complete schema; one file per schema

[6] Complete schema; one file per schema, excluding some tables

[7] Complete schema; one file per table

[8] Complete schema; one file per table, excluding some tables

[9] Schema tables; one file per table

Step 6:9

Step 7: Enter the source database connection

Database schema : hotel

Step 8: Enter the table names you want to include in the package

[1]hotel

[2]

Step 9: Choose the transformation streams

[1] Catalog and data

[2] Catalog

[3] Data

Step 9: 1

Step 10: Do you want to specify the datastream format?

[1] Yes

[2] No

Step 10: 1

Step 11: How do you want to export the datastream?

[1] Comma separated values; one file per lob column

[2] Comma separated values; one file per lob value

[3] Fixed width values; one file per lob column

[4] Fixed width values; one file per lob value

[5] Platform independent loader records format (with logging)

[6] Platform independent database page format (without logging, backup necessary)

Step 11: 2

Step 12: How do you want to import the data?

[1] Row by row (with logging)

[2] Row by page (without logging, backup necessary)

Step 12: 1

Step 13: The package can be executed or generated now.

[1] Execute package to transport data now

[2] Generate package to transport data later

Step 13: 2

Export package name : 20060322101010

Export package comment : export_generate

Export package creation : 20060322101010

Export package execution : 20060322101010

Export package path : c:\transport

Export package status [-T]: EXECUTE

Export direction [-t]: GENERATE

Export package [-p]: TABLE

Export part [-P]: TABLE

Export streams [-s]: CATALOG,DATA,PACKAGE

Export format [-f]: CSV

Export format [-F]: ROW

Export encoding [-c]:

Export lobcolumn [-l]: COLUMNVALUE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Source database table : "HOTEL"."HOTEL"

Step 14: Continue

[1] OK

[2] CANCEL

Step 14: 1

EXPORT TABLE "HOTEL"

CATALOG OUTSTREAM FILE 'HOTEL.CATALOG' DDL

DATA OUTSTREAM FILE 'HOTEL.DATA' CSV

Start 1 MAXROWS

LOB OUTSTREAM FILE "INFO" 'HOTEL_INFO.DATA###'

  ;

Package execution time   : 11.195s

Package name : 20060322101010

Executing a Generated Export Package

If you would like to execute an export package you have generated, specify the name of the export package when you call Loader CLI:

loadercli -p 20060322101010

Step 1: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Export package name : 20060322101010

Export package comment : export_generate

Export package creation : 20060322101010

Export package execution : 20060322121212

Export package path : c:\transport

Export package status [-T]: EXECUTE

Export direction [-t]: EXPORT

Export package [-p]: 20060322101010

Export part [-P]: TABLE

Export streams [-s]: CATALOG,DATA,PACKAGE

Export format [-f]: CSV

Export format [-F]: ROW

Export encoding [-c]:

Export lobcolumn [-l]: COLUMNVALUE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Source database table : "HOTEL"."HOTEL"

EXPORT TABLE "HOTEL"

CATALOG OUTSTREAM FILE 'HOTEL.CATALOG' DDL

DATA OUTSTREAM FILE 'HOTEL.DATA' CSV

Start 1 MAXROWS

LOB OUTSTREAM FILE "INFO" 'HOTEL_INFO.DATA###'

  ;

Package execution time   : 2.058s

Package execution log : loader_20060322121212.log

Package name : 20060322101010

In log file loader_20060322121212.log, you can see the Loader commands that are processed when export package 20060322101010 is executed.

More Information

Transport Mode

Importing

Transporting

Command File Mode

Session Mode

Loader, Loader Log File


Session Mode - SAP Documentation

Background documentation Session Mode

The following shows how to transport, export or import data when Loader CLI is in session mode.

Prerequisites

You require the demo databases DEMODB and TESTDB. Start the Loader in session mode: loadercli [<options>]. Enter the necessary Loader commands and SQL statements. To end the session mode, enter release or exit.

Activities

Calling the Loader CLI in Session Mode

Example Example

loadercli -d demodb -u mona,red -s hotel

End of the example.

The Loader establishes a connection to the demo database DEMODB for the database user MONA in the schema HOTEL. The Loader then waits for the commands and SQL statements in the command line, and processes them.

Example Example

loadercli -d demodb -u mona,red -cs ;

End of the example.

The Loader establishes a connection to the database DEMODB for the database user MONA. The Loader waits for the commands and SQL statements in the command line. These must each be completed with a semicolon for Loader to process them.

Creating a Command in Transport Mode and Executing it in Session Mode

You have already executed an export with the Loader in transport mode. The package directory <loader_user_data>\packages\export\GENUA\DEMODB\20060322101010 contains the command file 20060322101010.EXPORT.

You can execute the commands contained in the command file in session mode. To do this, proceed as follows:

  1. Start the Loader in session mode:

    loadercli -d demodb -u mona,red -s hotel -E 10 -cs //

  2. Copy the required commands from command file 20060322101010.EXPORT into the console input to describe the export. Note that you may have to remove or alter information about the users. Each command line must be completed with // for Loader to process it.

  3. Exit the session mode.

More Information

Transport Mode

Command File Mode

Loader, Loader Log File


Importing - SAP Documentation

Background documentation Importing

For a complete syntax description of the Loader commands for importing, see Importing: Loader Commands in the Loader manual. The following are some examples of key import commands.

Prerequisites

You can use the demo databases DEMODB and TESTDB. You have exported the required data from demo database DEMODB (Exporting).

Example

In the demo database TESTDB create the database administrator MONA, if he/she does not exist yet. Start the Loader and log on to the demo database TESTDB as database administrator MONA with the password RED. Use the session mode: loadercli -d testdb -u mona,red.

Create the schema TESTDB in the demo database HOTEL. Import the database catalog data you exported from the demo database DEMODB into the schema HOTEL of the demo database TESTDB.

IMPORT TABLE hotel.city

  CATALOG INSTREAM 'city_ddl.catalog'

This means:

  1. Import (IMPORT)

  2. a table (TABLE)

  3. called CITY (hotel.city)

  4. Import the database catalog data (CATALOG)

  5. from the input file (INSTREAM)

  6. called city_ddl.catalog

All objects (such as view tables, indexes) dependent on the CITY table that are listed in city_ddl.catalog are imported. If additional objects are necessary for the creation of a dependent object (for example, additional tables for creating a view table), the dependent objects are only imported if the additional objects are available.

More Information

IMPORT DB

IMPORT USER

IMPORT SCHEMA

IMPORT TABLE

IMPORT COLUMNS

Session Mode


-R: Installation Directory of the Database Software - SAP Documentation

Background documentation -R: Installation Directory of the Database Software

Several versions of the database system software can be installed on a database computer.

When creating a new database, or executing a DBM command that does not refer to a particular database and thus does not refer to a particular software version, use this option to specify the software version to which the subsequent DBM command is to refer.

When the session is set up, the system checks whether the specified software version on the computer is recorded in the list of registered versions. If this is not the case, the session is refused.

Note Note

When calling Database Manager CLI using the option -R, the specified database version can only be connected if this version has been correctly registered beforehand. (See: inst_reg).

If you specify the option -d and the name of a database in addition to the option -R, the option -R is ignored. In this case, Database Manager CLI uses the database software version assigned to the specified database.

End of the note.

To display the registered versions of your database software and the installation paths, use the DBM command dbm_version INSTROOT (see dbm_version).

Structure

-R <dependent_path>

Options
Option | Description
<installation_path> | Directory, which contains the database version-dependent server software

Example

Creating a New Database

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, create the database DEMODB with the software version stored under the path C:\Program Files\sdb\7600 on the remote computer GENUA, and identify yourself as the operating system user ANNA with the password MAY:

>dbmcli -R C:\Program Files\sdb\7600 -n GENUA db_create DEMODB OLEG,MONDAY ANNA,MAY

OK

Displaying All Available Databases of a Particular Software Version

Call Database Manager CLI using the option –R and the installation path for the software version 7.6, execute the DBM command for displaying a list of all the databases registered for the specified version on the local computer:

>dbmcli -R "C:\Program Files\sdb\DEMODB" db_enum

OK

DEMODB C:\Program Files\SDB\DEMODB 7.6.00.16 slow offline

DEMODB C:\Program Files\SDB\DEMODB 7.6.00.16 fast running


-c: Indicating as DBM Command - SAP Documentation

Background documentation -c: Indicating as DBM Command

If you use a DBM option with optional parameters, separate these parameters logically from the subsequent DBM command. For this purpose, insert the DBM option -c. Database Manager CLI interprets all entries following -c as a DBM command.

Structure

-c <dbm_command>

Options
Option | Description
<dbm_command> | DBM Command

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and start the backup operation using the backup template DemoDataCompl.

Open the utility session with the operator data of the first DBM operator. Therefore, enter the option for opening the utility session without parameters.

  • If you do not specify -c between the optional parameters of the DBM option and the DBM command, the DBM command is interpreted as a user name/password combination for the DBM option -uUTL. The system displays an error message:

    >dbmcli -u OLEG,MONDAY -d DEMODB -uUTL backup_start DemoDataCompl

    ERR

    -24996,ERR_PARAM: Wrong parameters

    -24753,ERR_MISSDBUSRPWD: Missing database, user or password

  • If you mark the beginning of the DBM command with the option -c, the DBM command is executed successfully:

    >dbmcli -u OLEG,MONDAY -d DEMODB -uUTL -c backup_start DemoDataCompl

    OK

    Returncode 0

    Date 20060418

    Time 00131245

    Server GENUA

    Database DE

    Kernel Version Kernel 7.6.00 Build 016-123-109-428

    ...

    ...


-ud: Deleting XUSER Entries - SAP Documentation

Background documentation -ud: Deleting XUSER Entries

Use the DBM option -ud to delete a database user's data and the corresponding XUSER entry in the XUSER program.

For that purpose, log on to the XUSER program either with the data of the database user to be deleted, or with the user data registered under the DEFAULT key.

To identify the user whose data is to be deleted, specify either a combination of the database name and the database computer name, or a user key.

Recommendation Recommendation

We recommend that you use the XUSER tool directly instead of using this DBM option.

End of the recommendation.

Note Note

Unlike user names and passwords, Database Manager treats user keys as case-sensitive.

End of the note.

Structure

-ud

Example

Specifying the Database User to be Deleted and the Database Name and Computer Name

>dbmcli -u <user_name>,<password> -ud -d <database_name> [-n <database_computer>]

with example data:

Call Database Manager CLI, log on as the user DAVID with the password BLUE, which is to be deleted in the XUSER program.

To identify the user entry to be deleted, enter the database name DEMODB and the database computer name GENUA:

>dbmcli -u DAVID,BLUE -ud -d DEMODB -n GENUA

Specifying the User under the DEFAULT Key and the Database Name and Computer Name

>dbmcli -ux <default_user>,<password> -ud -d <database_name> [-n <database_computer>]

with example data:

Call Database Manager CLI, log on to the XUSER program with the user name BORIS and the password PINK, which has been stored under the user key DEFAULT.

To identify the user entry to be deleted, enter the database name DEMODB and the database computer name GENUA:

>dbmcli -ux BORIS,PINK -ud -d DEMODB -n GENUA

Specifying the Database User to be Deleted and a User Key

>dbmcli-u <user_name>,<password> -ud -uk <user_key>

with example data:

Call Database Manager CLI, log on as the user DAVID with the password BLUE, which is to be deleted in the XUSER program.

To identify the user entry to be deleted, enter the user key DAKEY:

>dbmcli -u DAVID,BLUE -ud -uk DAKEY

Specifying the User under the DEFAULT Key and a User Key

>dbmcli-ux <default_user>,<password> -ud -uk <user_key>

with example data:

Call Database Manager CLI, log on to the XUSER program with the user name BORIS and the password PINK, which has been stored under the user key DEFAULT.

To identify the user entry to be deleted, enter the user key DAKEY:

>dbmcli -ux BORIS,PINK -ud -uk DAKEY

More Information

Utilities, XUSER


-ux: Logging on to the XUSER Program - SAP Documentation

Background documentation -ux: Logging on to the XUSER Program

In Database Manager CLI, use the DBM option -ux to log on to the XUSER program with the data stored under the DEFAULT user key.

You can use this DBM option together with the DBM options for changing (-us) or deleting (-ud) XUSER entries, and to display the user data stored in the XUSER program (-ul).

Recommendation Recommendation

We recommend that you use the XUSER tool directly instead of using this DBM option.

End of the recommendation.

Prerequisites

You have stored the user name and password of a valid database user under the DEFAULT user key.

Structure

-ux <default_user_name>,<default_user_password>

Options
Option | Description
<default_user_name> | Name of the user stored under the DEFAULT user key
<default_user_password> | Password of the user stored under the DEFAULT user key

Example

Changing an Existing XUSER Entry

>dbmcli -ux <default_user_name>,<default_user_password> -uk <user_key> -us <new_user_name>,<new_user_password> [options]

Call Database Manager CLI, log on as the user BORIS with the password PINK (stored under the DEFAULT user key), specify the XUSER entry to be changed with the user key DAKEY, specify the new user name MONA and password RED:

>dbmcli -ux BORIS,PINK -uk DAKEY -us MONA,RED

Deleting an Existing XUSER Entry

>dbmcli -ux <default_user_name>,<default_user_password> -uk <user_key> -ud

Call Database Manager CLI, log on as the user BORIS with the password PINK (stored under the DEFAULT user key), specify the XUSER entry to be deleted with the user key DAKEY, specify the DBM option –ud to delete this entry:

>dbmcli -ux BORIS,PINK -uk DAKEY -ud

More Information

Utilities, XUSER


DBStop: Stopping the Database - SAP Documentation

Background documentation DBStop: Stopping the Database

Operators, who have been assigned the DBStop server permission, can execute the following DBM commands:

DBM Command | Description
db_admin | Transferring the database to the ADMIN operational state
db_clear | Deleting the runtime information after a database error
db_cons | Using the XCONS tool (database console)
db_offline | Transferring the database to the OFFLINE operational state
db_restart | Restarting the database
db_stop | Ending a process of the database


ExecLoad: Running the Loader Program - SAP Documentation

Background documentation ExecLoad: Running the Loader Program

Operators, who have been assigned the ExecLoad server permission, can execute the following DBM commands:

DBM Command | Description
auto_load_systab | Updating the system tables automatically
load_lcapps | Loading the application libraries
load_r3tab | Loading the SAP-specific tables
load_systab | Loading the system tables
load_tutorial | Loading the SQL tutorial files


InstallMgm: Managing the Installations - SAP Documentation

Background documentation InstallMgm: Managing the Installations

Operators, who have been assigned the InstallMgm server permission, can execute the following DBM commands:

DBM Command | Description
db_drop | Deleting the current database
db_reg | Updating the registration of a database
db_unreg | De-registering a database
dbm_configget | Displaying a configuration parameter of Database Manager
dbm_configset | Changing a configuration parameter of Database Manager
dbm_stop | Ending the DBM server process
hss_addstandby | Defining a standby database
hss_copyfile | Copying the database files within a cluster
hss_enable | Defining a database as the master database
hss_removestandby | Deleting a standby database
param_copy | Copying a database parameter file
param_init | Initializing the database parameters for a new database
param_rmfile | Deleting the database parameter file


LoadSysTab: Loading the System Tables - SAP Documentation

Background documentation LoadSysTab: Loading the System Tables

Operators, who have been assigned the LoadSysTab server permission, can execute the following DBM commands:

DBM Command | Description
auto_load_systab | Updating the system tables automatically
load_lcapps | Loading the application libraries
load_r3tab | Loading the SAP-specific tables
load_systab | Loading the system tables
load_tutorial | Loading the SQL tutorial files


Controlling Databases - SAP Documentation

Syntax documentation Controlling Databases

Standard Commands
DBM Command | Description
db_admin | Transferring the database to the ADMIN operating status
db_offline | Transferring the database to the OFFLINE operational state
db_online | Transferring the database to the ONLINE operational state
db_restart | Restarting the database
db_state | Displaying the operational state of the database
db_stop | Ending a database process
info | Displaying the status information of the database

Other Commands for Controlling Databases


SystemCmd: Executing Operating System Commands - SAP Documentation

Background documentation SystemCmd: Executing Operating System Commands

Operators, who have been assigned the SystemCmd server permission, can execute the following DBM commands:

DBM Command | Description
event_dispatcher | Managing the event dispatcher function
exec_lcinit | Executing the liveCache initialization script
exec_nipingsrv | DBM command used only by SAP applications


UserMgm: Managing Database Manager Operators - SAP Documentation

Background documentation UserMgm: Managing Database Manager Operators

Operators, who have been assigned the UserMgm server permission, can execute the following DBM commands:

DBM Command | Description
user_create | Creating DBM operators
user_delete | Deleting DBM operators
user_put | Changing the DBM operator properties
user_rename | Changing the name of a DBM operator
user_sap | Storing special users
user_sysdba | Transferring the data of the database system administrator to the Database Manager


Import - SAP Documentation

Background documentation Import

The following are some examples of data importing with Loader CLI in transport mode.

Prerequisites

You require the demo databases DEMODB and TESTDB.

Start the Loader in transport mode: loadercli -p.

You do not require and knowledge about the Loader syntax in transport mode. The generated Loader commands are, however, displayed on the console and in the Loader files, and can be used as templates for writing your own Loader commands.

Note Note

The transport mode is available for 32 bit platforms only.

End of the note.

Activities

Executing the Import

You want to import table HOTEL of schema HOTEL of database user MONA to database TESTDB. The application data is to be imported as files in CSV format. The values of the column INFO of data type LOB of table HOTEL are to be exported from a separate file for each data record.

loadercli -p

Package history: C:\Documents and Settings\anna\Application Data\sdb\loader\log\transport.log

Package path: c:\transport

Package name : 20060322131313

Step 1: Enter a package path

Package path: c:\transport

Step 2: Enter a package comment

Package comment: import

Step 3: What do you want to do?

[1] Transport from a source database to a target database

[2] Export from a source database

[3] Import to a target database

Step 3: 3

Step 4: Enter the source database of the export package

Database computer :genua

Database name : demodb

Step 5: Choose an export package

Export package path : c:\transport

Source database computer [-nSRC]: genua

Source database name [-dSRC]: demodb

[1]:

Export package name : 20060322101010

Export package comment : export_generate

[2]:

Export package name : 20060312161616

Export package comment : export

Step 5: 2

Step 6: Enter the target database of the export package

Database computer : genua

Database name : testdb

Database user : mona

Password : red

Step 7: Enter the target database schema

Database schema: hotel

Import package name : 20060322131313

Import package comment : import

Import package creation : 20060322131313

Import package execution  : 20060322131313

Import package path : c:\transport

Import package status [-T]: EXECUTE

Import direction [-t]: IMPORT

Import package [-p]: 20060312161616

Import part [-P]: TABLE

Import streams [-s]: CATALOG,DATA,PACKAGE

Import format [-f]: CSV

Import format [-F]: ROW

Import encoding [-c]:

Import lobcolumn [-l]: COLUMNVALUE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Target database computer [-nTRG]: GENUA

Target database name [-dTRG]: TESTDB

Target database user [-uTRG]: MONA

Source database table : "HOTEL"."HOTEL"

Step 10: Continue

[1] OK

[2] CANCEL

Step 10: 1

IMPORT TABLE "HOTEL" UPDATE DUPLICATES

CATALOG INSTREAM FILE 'HOTEL.CATALOG' DDL

DATA    INSTREAM FILE 'HOTEL.DATA'    CSV

Start 1 MAXROWS

"HNO" 1 CHAR

"NAME" 1 CHAR

"ZIP" 1 CHAR DEFAULT NULL

"ADDRESS" 1 CHAR

"INFO" 1 CHAR DEFAULT NULL

RECORDS USAGE

  ;

Package execution time   : 25.817s

Package execution log : loader_20060322131313.log

Package name : 20060322131313

In log file loader_20060322131313.log, you can see the Loader commands that are processed when import package 20060322131313 is executed.

Repeating the Import

If you would like to repeat the import you just executed, specify the name of the import package when you call Loader CLI :

loadercli -p 20060322131313

Step 1: Enter the source database connection

Database computer : genua

Database name : demodb

Database user : mona

Password : red

Import package name : 2006032213131

Import package creation : 20060322131313

Import package execution  : 20060322151515

Import package path : c:\transport

Import package status [-T]: EXECUTE

Import direction [-t]: IMPORT

Import package [-p]: 20060312161616

Import part [-P]: TABLE

Import streams [-s]: CATALOG,DATA,PACKAGE

Import format [-f]: CSV

Import format [-F]: ROW

Import encoding [-c]:

Import lobcolumn [-l]: COLUMNVALUE

Source database computer [-nSRC]: GENUA

Source database name [-dSRC]: DEMODB

Source database user [-uSRC]: MONA

Target database computer [-nTRG]: GENUA

Target database name [-dTRG]: TESTDB

Target database user [-uTRG]: MONA

Source database table : "HOTEL"."HOTEL"

IMPORT TABLE "HOTEL" UPDATE DUPLICATES

CATALOG INSTREAM FILE 'HOTEL.CATALOG' DDL

DATA    INSTREAM FILE 'HOTEL.DATA'    CSV

Start 1 MAXROWS

"HNO" 1 CHAR

"NAME" 1 CHAR

"ZIP" 1 CHAR DEFAULT NULL

"ADDRESS" 1 CHAR

"INFO" 1 CHAR DEFAULT NULL

RECORDS USAGE

  ;

Package execution time   : 8.025s

Package execution log : loader_20060322151515.log

Package name : 20060322131313

In log file loader_20060322151515.log, you can see the Loader commands that are processed when import package 20060322131313 is executed.

More Information

Transport Mode

Exporting

Transporting

Command File Mode

Session Mode

Loader, Loader Log File


AccessUtility: Accessing a Utility Session - SAP Documentation

Background documentation AccessUtility: Accessing a Utility Session

Operators, who have been assigned the AccessUtility server permission, can execute the following DBM commands:

DBM Command | Description
auto_extend | Extending the data area automatically
db_activate | Initializing a database
db_activate_req | DBM command used only by DBM client programs
db_addvolume | Adding volumes
db_connect | Opening a database session
db_deletevolume | Deleting a data volume
db_execute | Executing an administration command or an SQL statement (displaying the complete result list)
db_executenice | Executing an administration command or an SQL statement (displaying the result record-by-record)
db_fetch | Scrolling through the results of an administration command or an SQL statement (displaying the complete result list)
db_fetchnice | Scrolling through the results of an administration command or an SQL statement (displaying the result record-by-record)
db_migratecatalog | DBM command used only by SAP applications
db_reinstall | Resetting the database
db_release | Ending a database session
scheduler_deactivate_job | Deactivating a scheduler job


DBFileRead: Accessing the Database Files - SAP Documentation

Background documentation DBFileRead: Accessing the Database Files

Operators, who have been assigned the DBFileRead server permission, can execute the following DBM commands:

DBM Command | Description
diag_histlist | Displaying the diagnosis history
diag_pack | Packing the database files
file_backup | Backing up a database file
file_getfirst | Opening a database file
file_getlist | Displaying a list of database files
file_getnext | Scrolling through a database file
file_operation | Editing the log files of a database
file_restore | Restoring a database file
trace_clear | Deleting the contents of the database trace
trace_flush | Creating the binary file of the database trace
trace_off | Deactivating the database trace
trace_on | Activating the database trace
trace_prot | Creating the text version of the database trace
trace_protopt | Displaying the command options for creating the text version of the database trace
trace_show | Displaying the logged activities of the database trace


DBInfoRead: Displaying Status Information - SAP Documentation

Background documentation DBInfoRead: Displaying Status Information

Operators, who have been assigned the DBInfoRead server permission, can execute the following DBM commands:

DBM Command | Description
auto_dbanalyzer | Automatically starting and stopping Database Analyzer
autolog_show | Displaying the automatic log backup function
backup_ext_ids_forget | Releasing the memory occupied by external backup IDs
backup_ext_ids_get | Retrieving the external backup IDs
backup_ext_ids_getfromtool | Retrieving the backup information stored in the backup tool
backup_ext_ids_list | Displaying the external backup IDs
backup_ext_ids_listnext | Scrolling through the external backup IDs
backup_history_close | Closing the backup history
backup_history_date | Displaying the change date for the backup history
backup_history_list | Displaying the backup history
backup_history_listnext | Scrolling through the backup history
backup_history_open | Retrieving the backup history
db_speed | Displaying the database kernel variant
db_state | Displaying the operational state of the database
dban_delete | Deleting the Database Analyzer log files
dban_start | Calling Database Analyzer
dban_state | Displaying the function of Database Analyzer
dban_stop | Exiting Database Analyzer
dbm_trace | Starting and stopping the DBM server trace function
event_available | Displaying whether any events were triggered
event_delete | Deactivating the event
event_list | Displaying a list of active events
event_list_categories | Displaying event categories and their properties
event_receive | Displaying a triggered event
event_release | Ending an event session
event_set | Defining and activating an event
event_wait | Waiting for an event
hss_getnodes | Displaying hot standby parameters
info | Displaying the status information of the database
info_next | Scrolling through the status information of the database
medium_date | Displaying the change date of the template definition file
medium_get | Displaying the data of the backup template
medium_getall | Displaying a list of all defined backup templates
medium_migrate | Adopting an existing template definition
show | Displaying information about the database
show_list | Displaying the keywords for information about the database
show_next | Scrolling through information about the database
sql_connect | Opening an SQL Session
sql_release | Ending an SQL session
trace_clear | Deleting the contents of the database trace
trace_flush | Creating the binary file of the database trace
trace_off | Deactivating the database trace
trace_on | Activating the database trace
trace_prot | Creating the text version of the database trace
trace_protopt | Displaying the command options for creating the text version of the database trace
trace_show | Displaying the logged activities of the database trace
user_get | Displaying the DBM operator properties
user_getall | Displaying a list of Database Manager operators
user_getrights | Displaying the server permissions


Calling Database Manager CLI - SAP Documentation

Function documentation Calling Database Manager CLI

Database Manager CLI is part of the SAP MaxDB Software installation package. On Windows you find dbmcli.exe in the pgm directory of an installation. On Unix and Linux you find dbmcli.exe in the bin directory of an installation.

To call Database Manager CLI, open a command prompt and change into the respective directory. Make sure that you navigate to the executable of that installation you want to administer.

When you call Database Manager CLI, you can enter DBM options and a maximum of one DBM command.

You can enter additional parameters for DBM options. The parameters are explained in the description of the respective DBM option.

If you use DBM options with parameters, mark the beginning of the subsequent DBM command with the option –c (see: -c: Indicating as DBM command). By doing so, you prevent the Database Manager program from interpreting the beginning of the DBM command as a parameter of the previous DBM option.

You can also enter additional command options for the DBM command. These command options are explained in the description of the respective DBM command.

You can call Database Manager in three different operating modes (See: Operating Modes in Database Manager CLI).

Input help is provided for long DBM commands.

For information about the format of the return values for DBM commands, see Reply Format.

Syntax

>dbmcli [<dbm_options>] [<dbm_command> [command_options]]

Example

Entering DBM Options with Parameters and a DBM Command

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the database DEMODB on the remote computer PARMA, and display the operational state of the database:

>dbmcli -u OLEG,MONDAY -d DEMODB -n PARMA db_state

OK

State

ONLINE

Entering a DBM Option without Parameters and a DBM Command

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on the local computer and start the backup operation using the backup template DemoDataCompl.

Open the utility session with the operator data of the first DMB operator. For that purpose, enter the option for opening the utility session without parameters. Mark the beginning of the DBM command for starting the backup operation with –c:

>dbmcli -u OLEG,MONDAY -d DEMODB -uUTL -c backup_start DemoDataCompl

OK

Returncode 0

Date 20060418

Time 00131245

Server GENUA

Database DE

Kernel Version Kernel 7.6.00 Build 016-123-109-428


Backup: Carrying Out Backups - SAP Documentation

Background documentation Backup: Carrying Out Backups

Operators, who have been assigned the Backup server permission, can execute the following DBM commands:

DBM Command | Description
archive_stage | Creating a single archive of backup files (only for log backups)
archive_stage_repeat | Creating multiple archives of backup files (only for log backups)
autolog_cancel | Exiting an automatic log backup which has been interrupted
autolog_off | Deactivating the automatic log backup function
autolog_on | Activating the automatic log backup function
autolog_show | Displaying the automatic log backup function
backup_cancel | Canceling an interrupted backup
backup_cancel_req | DBM command used only by DBM client programs
backup_ext_ids_forget | Releasing the memory occupied by external backup IDs
backup_ext_ids_get | Retrieving external backup IDs
backup_ext_ids_getfromtool | Retrieving the backup information stored in the backup tool
backup_ext_ids_list | Displaying the external backup IDs
backup_ext_ids_listnext | Scrolling through the external backup IDs
backup_history_append | Internal system command
backup_history_close | Closing the backup history
backup_history_date | Displaying the change date for the backup history
backup_history_list | Displaying the backup history
backup_history_listnext | Scrolling through the backup history
backup_history_open | Retrieving the backup history
backup_ignore | Continuing the backup without the data carrier last reported as full
backup_ignore_req | DBM command used only by DBM client programs
backup_replace | Specifying the succeeding data carrier for a backup action
backup_replace_req | DBM command used only by DBM client programs
backup_reply_available | DBM command used only by DBM client programs
backup_reply_receive | DBM command used only by DBM client programs
backup_req | DBM command used only by DBM client programs
backup_start | Backing up the database
backup_state | Displaying the current backup status
db_connect | Opening a database session
db_release | Ending a database session
medium_date | Displaying the change date of the template definition file
medium_delete | Deleting a backup template
medium_delete_nodistribute | Internal system command with hot standby configurations
medium_get | Displaying the data of the backup template
medium_getall | Displaying a list of all defined backup templates
medium_label | Displaying the backup information in the ONLINE or ADMIN operational state
medium_labeloffline | Displaying the backup information in the OFFLINE operational state
medium_migrate | Adopting an existing template definition
medium_put | Defining or changing a backup template
medium_put_nodistribute | Internal system command with hot standby configurations
recover_check | Checking a backup
recover_check_req | DBM command used only by DBM client programs
recover_ignore | Continuing a parallel restore or a backup check
recover_ignore_req | DBM command used only by DBM client programs
recover_replace | DBM command used only by DBM client programs
recover_replace_req | DBM command used only by DBM client programs
recover_state_check | Displaying the current status of a backup check
service_connect | Opening a service session
service_release | Closing a service session


DBStart: Starting the Database - SAP Documentation

Background documentation DBStart: Starting the Database

Operators, who have been assigned the DBStart server permission, can execute the following DBM commands:

DBM Command | Description
db_online | Transferring the database to the ONLINE operational state
db_standby | Transferring the database to the STANDBY operational state


Recovery: Restoring Backups - SAP Documentation

Background documentation Recovery: Restoring Backups

Operators, who have been assigned the Recovery server permission, can execute all the DBM commands listed under the Backup server permission.

In addition, they can execute the following DBM commands:

DBM Command | Description
autorecover | Restoring the database automatically
db_restartinfo | Displaying the restart information after importing a backup
recover_cancel | Canceling an interrupted restore or a backup check
recover_cancel_req | DBM command used only by DBM client programs
recover_config | Restoring the parameter file from a data backup
recover_req | DBM command used only by DBM client programs
recover_start | Restoring the database
recover_state | Displaying the current status of a restore action
recover_volume | Restoring a damaged volume


ParamCheckWrite: Accessing the Database Parameters - SAP Documentation

Background documentation ParamCheckWrite: Accessing the Database Parameters

Operators, who have been assigned the ParamCheckWrite server permission, can execute all the DBM commands listed under the ParamRead server permision.

In addition, they can execute the following DBM commands:

DBM Command | Description
param_abortsession | Ending a parameter session
param_addvolume | Changing volume parameters
param_checkall | Checking all database parameters
param_commitsession | Confirming changes to the database parameter file
param_delvolume | Deleting volume parameters
param_extget | Displaying the individual data of a database parameter
param_extgetall | Displaying the data of all database parameters
param_extgetallnext | Scrolling through all database parameter data
param_getdefault | Displaying the system default (default value)
param_getexplain | Displaying the stored explanatory text
param_getfull | Displaying all the data of a database parameter
param_gethelp | Displaying the stored help text
param_gethistory | Opening the database parameter history
param_gethistorynext | Scrolling through the database parameter history
param_getproperties | Displaying all the properties of a database parameter
param_gettype | Displaying the data type of a database parameter
param_getvalue | Displaying the current value of a database parameter
param_getvolsall | Displaying the data of all volume parameters
param_getvolume | Displaying the data of an individual volume
param_put | Changing the values of database parameters
param_restore | Resetting the parameter file to a previous version
param_startsession | Opening a parameter session
param_versions | Displaying a list of parameter files


ParamFull: Accessing the Database Parameters - SAP Documentation

Background documentation ParamFull: Accessing the Database Parameters

Operators, who have been assigned the ParamFull server permission, can execute all DBM commands listed under the ParamRead and ParamCheckWrite server permissions.

In addition, they can execute the following DBM commands:

DBM Command | Description
auto_extend | Extending the data area automatically
db_addvolume | Adding volumes
db_deletevolume | Deleting a data volume
param_abortsession | Ending a parameter session
param_addvolume | Changing volume parameters
param_checkall | Checking all database parameters
param_commitsession | Confirming changes to the database parameter file
param_delvolume | Deleting volume parameters
param_directdel | Deleting a database parameter
param_directget | Displaying a parameter value from the database parameter file
param_directgetall | Displaying all parameter values in the current database parameter file
param_directgetallnext | Scrolling through the parameters in the database parameter file
param_directput | Changing a value directly in the database parameter file
param_extget | Displaying the individual data of a database parameter
param_extgetall | Displaying the data of all database parameters
param_extgetallnext | Scrolling through all database parameter data
param_getdefault | Displaying the system default (default value)
param_getexplain | Displaying the stored explanatory text
param_getfull | Displaying all the data of a database parameter
param_gethelp | Displaying the stored help text
param_gethistory | Opening the database parameter history
param_gethistorynext | Scrolling through the database parameter history
param_getproperties | Displaying all the properties of a database parameter
param_gettype | Displaying the data type of a database parameter
param_getvalue | Displaying the current value of a database parameter
param_getvolsall | Displaying the data of all volume parameters
param_getvolume | Displaying the data of an individual volume
param_put | Changing the values of database parameters
param_restore | Resetting the parameter file to a previous version
param_startsession | Opening a parameter session
param_versions | Displaying a list of parameter files


SchedulerMgm: Managing the Scheduler - SAP Documentation

Background documentation SchedulerMgm: Managing the Scheduler

Operators. who have been assigned the SchedulerMgm server permission, can execute the following DBM commands:

DBM Command | Description
scheduler_activate_job | Activating a scheduler job
scheduler_create_job | Creating a scheduler job
scheduler_deactivate_job | Deactivating a scheduler job
scheduler_delete_job | Deleting a scheduler job
scheduler_list_jobs | Displaying a list of all scheduler jobs
scheduler_start | Starting the scheduler function
scheduler_state | Displaying the scheduler function
scheduler_stop | Stopping the scheduler function


ParamRead: Accessing the Database Parameters - SAP Documentation

Background documentation ParamRead: Accessing the Database Parameters

Operators, who have been assigned the ParamRead server permission, can execute the following DBM commands:

DBM Command | Description
param_abortsession | Ending a parameter session
param_directget | Displaying the value of a parameter in the database parameter file
param_directgetall | Displaying the value of all parameters in the database parameter file
param_directgetallnext | Scrolling through the parameter values in the database parameter file
param_extget | Displaying the individual data of a database parameter
param_extgetall | Displaying the data of all database parameters
param_extgetallnext | Scrolling through all database parameter data
param_getdefault | Displaying the system default value
param_getexplain | Displaying the stored explanatory text
param_getfull | Displaying all the data of a database parameter
param_gethelp | Displaying the stored help text
param_gethistory | Opening the database parameter history
param_gethistorynext | Scrolling through the database parameter history
param_getproperties | Displaying all the properties of a database parameter
param_gettype | Displaying the data type of a database parameter
param_getvalue | Displaying the current value of a database parameter
param_getvolsall | Displaying the data of all volume parameters
param_getvolume | Displaying the data of an individual volume
param_startsession | Opening a parameter session
param_versions | Displaying a list of parameter files


Scheduling: Scheduling DBM Commands - SAP Documentation

Background documentation Scheduling: Scheduling DBM Commands

Operators, who have been assigned the Scheduling server permission, can execute the following DBM commands:

DBM Command | Description
scheduler_activate_job | Activating a scheduler job
scheduler_create_job | Creating a scheduler job
scheduler_deactivate_job | Deactivating a scheduler job
scheduler_delete_job | Deleting a scheduler job
scheduler_list_jobs | Displaying a list of all scheduler jobs
scheduler_state | Displaying the scheduler function


backup_ignore_req - SAP Documentation

Background documentation backup_ignore_req

This Database Manager command is only used by DBM client programs.

There is no documentation for this at present.


backup_state - SAP Documentation

Background documentation backup_state

With this command you can display the current status of the backup operation.

You can execute this command while a backup operation is in progress. To do this, open a second command prompt and log on there again to the database on which the backup operation is running.

Prerequisites

  • You have the server permission Backup.

  • You have started a backup (see: backup_start).

Structure

backup_state

Result

OK

...

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Database Administration, Backing Up Data, Backing Up Log Entries


backup_history_open - SAP Documentation

Background documentation backup_history_open

Use this command to fetch the current backup history into the main memory. If you specify the option –e, current information about the backup tools used is added to the backup history.

To display the contents, you then execute the DBM command backup_history_list.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

backup_history_open [-e]

Options
Option | Description
-e | The availability status of each backup is determined in the backup tool.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Log Files


backup_replace_req - SAP Documentation

Background documentation backup_replace_req

This Database Manager command is only used by DBM client programs.

There is no documentation for this at present.


backup_reply_available - SAP Documentation

Background documentation backup_reply_available

This Database Manager command is only used by DBM client programs.

There is no documentation for this at present.


backup_reply_receive - SAP Documentation

Background documentation backup_reply_receive

This Database Manager command is only used by DBM client programs.

There is no documentation for this at present.


backup_req - SAP Documentation

Background documentation backup_req

This Database Manager command is only used by DBM client programs.

There is no documentation for this at present.


db_admin - SAP Documentation

Background documentation db_admin

Use this command to transfer the database to the ADMIN operational state.

If the database is in the ONLINE operational state, it is first transferred to the OFFLINE operational state and then to the ADMIN operational state.

Prerequisites

You have the server permission DBStop.

Structure

db_admin [<option>]

<option> :: = -f | -s | -t

Options
Option | Description
-f | -fast | When you transfer the database from the OFFLINE to the ADMIN operational state, the kernel variant fast is started.
-s | -slow | When you transfer the database from the OFFLINE to the ADMIN operational state, the kernel variant slow is started.
-t | -test | When you transfer the database from the OFFLINE to the ADMIN operational state, the kernel variant test is started.
Database Operational States
Icon | Operational State | Description
 | ONLINE | The database is running. Database users can log on and execute SQL statements. The database system administrator and DBM operators can perform administrative tasks.
- | STANDBY | For standby databases in hot standby systems only Note that you cannot connect to a standby database. It is in a constant restart state.
 | ADMIN | The database is only available for administration tasks.
 | OFFLINE | The database is not running.

Result

OK

In the event of errors, see Reply Format.


db_clear - SAP Documentation

Background documentation db_clear

If runtime information is still present in the operating system after a database error, it is not possible to restart the database.

Use this DBM command to delete runtime information from the operating system and thereby enable a restart of the database.

Prerequisites

You have the server permission DBStop.

Structure

db_clear

Result

OK

In the event of errors, see Reply Format.


db_activate RECOVER - SAP Documentation

Background documentation db_activate RECOVER

Use this command to initialize the data and log volumes of the current database, and import the data backed up in a complete data backup into the database. All the data previously contained in the current database is overwritten.

This command is also used to create a copy of a database, such as is required for the creation of a standby database.

Unlike the DBM command for recovering the database (see: recover_start) the db_activate RECOVER command deletes all catalog information and application data, as well as all entries in the log area of the database. The complete data backup is then imported and the database state it contains is recreated.

When you import the backup, all the original database user data of the target database are overwritten with the data of the source database. This is particularly significant if the source database from which the backup was created is different from the target database into which the backup is imported. To continue working with the target database, and in particular to load the system tables after importing the backup, you require the user data of the database system administrator of the source database. Only with this user data can you completely restore the data in the target database.

The DBM operator data of the target database is retained.

If you used another provider’s backup tool to carry out the backups which are to be imported, use that tool to recover the database with initialization.

Once db_activate RECOVER has been executed, information on the recovery is displayed. This only happens when the backup has been completely imported or the process was interrupted. For this reason, the response to this DBM command can take a long time.

Note Note

If the automatic log backup function was active before the recovery was started, it is not re-activated automatically after the recovery. To re-activate the automatic log backup function, execute the DBM command autolog_on.

End of the note.

Prerequisites

  • You have the server permission Recovery.

  • The database is in the ADMIN operational state.

  • You have opened a database session (see: db_connect).

Structure

db_activate RECOVER <medium_name> DATA [ExternalBackupID <external_backup_ID>] [AUTOIGNORE]

Options
Option | Description
<medium_name> | Name of the backup template, which refers to the data carrier or the group of parallel data carriers the backup is to be imported from.
DATA | Type of backup to be imported is DATA (complete data backup) You only need to specify an entry here if you want to import a data backup in whose backup template the backup type was not specified.
ExternalBackupID <external_backup_ID> | To restore a backup created with a backup tool, enter the backup ID name known to this tool.
AUTOIGNORE | If you specify this option, the system automatically continues the operation for restoring multiple parallel data carriers when it has finished importing the data from one of these data carriers.

Result

OK

...

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together
Reply in the Event of an Error

If an error occurs while you are using a backup tool, you will receive a reply in the following format:

ERR<NL> <errcode>, <err_description><NL> [<extended_description><NL>]

Reply in the Event of an Error
Value | Description
<errcode> | Error Message Number See: Messages documentation
<err_description> | Description of the error
<extended_description> | Cause of error

The following errors may occur:

Messages
Error Message Number | Error message text | Explanation
-24927 | ERR_TOOLCHK: the external backup tool was not found | The backup tool could not be found or has been installed incorrectly.
-24926 | ERR_MEDIUMCHK: the medium cannot be used with this external backup tool | The backup template specified cannot be used with this backup tool.
-24925 | ERR_PREPARE: prepare of the backup operation failed | The preparations required to use the backup tool could not be completed correctly.
-24924 | ERR_DBREQ: cannot start database kernel request | The database was unable to start the backup.
-24923 | ERR_TOOLREQ: cannot start external backup tool correctly | The backup tool could not be started correctly.
-24922 | ERR_OPCHK: cannot check state of backup operation | Unable to check the status of the database or the backup tool.
-24921 | ERR_POSTOP: cannot finish backup operation correctly | Although the backup was successful, the required post-processing steps could not be performed.
-24920 | ERR_BACKUPOP: backup operation was unsuccessful | The backup failed due to a problem with the database or with the backup tool.
-24919 | ERR_CLEANUP: cannot clean up correctly after backup operation | Although the backup was successful, the system resources used during the check could not be released.

More Information

Database Administration,

  • Restoring Databases

  • Database Copy

  • Standby Database


db_activate_req - SAP Documentation

Background documentation db_activate_req

This Database Manager command is only used by DBM client programs.

There is no documentation for this at present.


db_connect - SAP Documentation

Background documentation db_connect

Use this command to open a session with the database. You can use this session to execute administrative commands and to transfer SQL statements to the database.

You can log on with the user name and password of a database user, or with a user type. If you do not specify a database user, the data of the first DBM operator registered on the database computer is used to log on.

The database session is linked with a user task of the database. You can configure the maximum number of simultaneous database sessions possible specifying the value of the general database parameter MaxUserTasks.

Prerequisites

  • You have the server permission AccessSQL or AccessUtility.

  • You have the user permissions required to execute SQL statements in the database.

  • The database is in the ONLINE or ADMIN operational state.

  • You are working in the script mode or the session mode of Database Manager CLI.

Structure

db_connect <user_identification>

<user_identification> :: = <user_spec> | <user_type>

<user_spec> :: = <database_user>,<database_user_password>

<user_type> :: = user-type=<value>

Options
Option | Description
<database_user> | Name of the database user
<database_user_password> | Password of the database user
user-type=<value> | User type, possible values for <value> are: DBM: DBM operator DBA: database system administrator SAP: database user of the SAP application

Result

In the event of errors, see Reply Format.

More Information

Glossary, Database Session


db_cons - SAP Documentation

Background documentation db_cons

Use the XCONS tool (database console) to analyze and control the runtime behavior of the database.

Use XCONS only when told to do so by technical support.

Prerequisites

  • You have the server permission DBStop.

  • The database is in the ADMIN or ONLINE operational state.

Structure

db_cons <cons_cmd> [<cons_param>]

Options
Option | Description
<cons_cmd> | XCONS command
<cons_param> | XCONS parameter

Result

OK

<cons_output>

Values for the Reply Fields
Value | Description
<cons_output> | Output from XCONS program.

In the event of errors, see Reply Format.

More Information

Utilities, XCONS


db_create - SAP Documentation

Background documentation db_create

With this command you can create a new database on a local or remote computer, and create the first DBM operator with all permissions for managing this database. This DBM operator can carry out administrative tasks for the database and create further DBM operators and database users.

At the same time you define the database system administrator.

You can enter options to define, which of the database software versions available on the database computer should be used to create this database, and to determine further properties of this database.

After the new database has been created, the first DBM operator and the database system administrator are initially the only users who can access the database.

You need to complete further steps before you can start working with the newly created database.

Prerequisites

  • You are logged on as the operating system user to the computer, on which the database is being created (see: user_system).

  • To create a database on Unix/Linux, you need to be logged on as the operating system user root, or as a member of the sdba operating system user group (see: Special Operating System Users and User Groups (Unix/Linux)).

  • To create a database on a remote computer on Microsoft Windows, you need to have additional administration rights for the database computer as well as the log on as batch job right.

    For information about administering operating system users, see your operating system documentation.

  • The X Server program has been started.

    On Microsoft Windows, the system sets the startup type for X Server to Automatic so that the system starts it automatically when the computer is started.

    For Unix systems, start X Server of the remote database computer explicitly to be able to manage a database on this computer (see: Utilities: Starting the Global Listener and/or Installation-Specific X Servers).

Structure

db_create [-a|-auto] [-g <group>] [-u] <database_name> <dbm_user>,<dbm_user_password> [<os_user>,<os_user_password>]

Options
Option | Description
-a | -auto | In Microsoft Windows, the service entry Start-up-type for the database service in the control panel is set to automatic. In the Unix operating system this parameter is ignored.
-g <group> | For Unix only: You assign your database files to an operating system user group other than the standard group and can thus protect the files from unauthorized access.
-u | For Microsoft Windows only: Operating system user specification with option -u The service for starting the database kernel should run under the operating system user specified at the end of the DBM command.
<os_user> | Name of the operating system user for the remote computer To create a database on a remote computer, also specify the operating system user for this computer. If the logon to the operating system fails, the database cannot be installed.
<os_user_password> | Password of the operating system user
<database_name> | Name of the database Note Note The database system automatically converts the database name into upper-case letters. See also: Conventions for User Names and Passwords. End of the note.
<dbm_operator> | Database Manager operator (DBM operator) Note Note Pay attention to the conventions for user names and passwords. The database system automatically converts the user name into upper-case letters. End of the note.
<dbm_operator_password> | Password of the DBM operator The database system automatically converts the password into upper-case letters.

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, create the local database DEMODB and define the first DBM operator with the user name DBM and the password DBM.

>dbmcli db_create DEMODB DBM,DBM

OK

>

Call Database Manager CLI, create a local database with the name MAXDB using the software stored under C:\Program Files\SDB\7600, define the DBM operator DBM with the password DBM:

>dbmcli -R "C:\Program Files\SDB\7600" db_create MAXDB DBM,DBM

OK

>

Log on to Database Manager CLI, create a database with the name TESTDB on the remote copmuter GENUA, define the DBM operator DBM with the password DBM, log on as the operating system user ANNA with the password BLACK to the remote computer: >dbmcli –n GENUA db_create TESTDB DBM,DBM ANNA,BLACK

OK

>

More Information

Database Administration, Creating Databases


db_activate - SAP Documentation

Background documentation db_activate

Use this DBM command when you start a new database for the first time, and thereby create the database system administrator.

We recommend that you use upper-case letters for the user name and password.

Note Note

Do not enter the character string SYSDBA as the user name because this is a reserved SQL keyword (see: Conventions for User Names and Passwords).

End of the note.

Also use this command to initialize a database. This deletes the catalog information and the application data in the database. The database parameters remain unaffected by this.

Prerequisites

  • You have the server permission AccessUtility.

  • The database is in the ADMIN operational state.

Structure

db_activate <sysdba_user>,<sysdba_user_password>

Options
Option | Description
<sysdba_user> | Name of the database system administrator
<sysdba_user_password> | Password of the database system administrator

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Creating Databases


db_enum - SAP Documentation

Background documentation db_enum

Use this command to display a list of all the databases registered on the database computer.

The display is in tabular form. The individual columns are separated by tabs.

Prerequisites

You do not need to log on to Database Manager to execute this DBM command.

You do not require a server permission either.

Structure

db_enum [<option>]

<option> :: = ALL | SYSTEM

Options
Option | Description
ALL | Display all databases (also the system-internal databases are listed).
SYSTEM | Only display the system-internal databases.

Result

OK

<database_name><TAB><dependent_path><TAB><database_version><TAB><kernel_version><TAB><operational_state>

<database_name><TAB><dependent_path><TAB><database_version><TAB><kernel_version><TAB><operational_state>

...

Values for the Reply Fields
Value | Description
<database_name> | Name of the database
<dependent_path> | Directory, which contains the database version-dependent server software
<database_version> | Version of the database software
<kernel_version> | Kernel variant
<operational_state> | Operational state of the database

Example

Call Database Manager CLI, display the list of all databases registered on the computer GENUA:

>dbmcli -n GENUA db_enum

OK

DEMODB C:\Program Files\sdb\DEMODB 7.6.00.10 fast running

DEMODB C:\Program Files\sdb\DEMODB 7.6.00.10 slow offline


db_executenice - SAP Documentation

Background documentation db_executenice

With this DBM command you send an administration command or SQL statement to the database. However, for SQL statements in particular it is intended to be used via a programming interface.

Unlike when you use the DBM command db_execute, you want the reply to display one data record after another.

When you execute this command, the system implicitly opens a session with the database and then ends the session once the command has been executed. This database session is opened in AUTOCOMMIT mode. If you specify an SQL statement, it is automatically completed with a COMMIT statement.

After you execute the administration command or the SQL statement, the system returns an OK message or displays the first data record of the reply. To display the next data record, use the db_fetchnice DBM command.

For more information about SQL statements, see the SQL Reference Manual and SQL Tutorial.

Prerequisites

  • You are working in the session mode of Database Manager CLI.

  • If you want to execute administration commands, you need the AccessUtility server permission.

  • If you want to execute SQL statements, you need the AccessSQL server permission.

Structure

db_executenice [<user_type>] <statement>

Options
Option | Description
<user_type> | User type, possible values are: DBM: the first DBM operator DBA: the database administrator SAP: a special database user in connection with SAP applications
<statement> | Administration command or SQL statement

Result

OK

[END | CONTINUE]

[<record>]

Values for the Reply Fields
Value | Description
END | The complete reply was output.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<record> | A data record of the result of the SQL statement The fields in a data record are separated by semicolons. Character strings are output in single quotation marks.

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI in session mode as the operator OLEG with the password MONDAY, connect to the database DEMODB, display the columns of the USERS table one-by-one with comments:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>db_executenice SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'

OK

CONTINUE

COLUMNNAME = 'OWNER'

COMMENT = (LOB)

---

Display the next data record:

dbmcli on DEMODB>db_fetchnice

OK

CONTINUE

COLUMNNAME = 'GROUPNAME'

COMMENT = (LOB)

---

Display the next data record:

dbmcli on DEMODB>db_fetchnice

...

...

More Information

Concepts of the Database System, SQL


db_fetch - SAP Documentation

Background documentation db_fetch

After having executed the db_executenice command with an SQL statement, use this command to display the next reply package containing more data of the result set.

Prerequisites

  • You have the server permission AccessSQL.

  • You have executed an administration command or an SQL statement (see: db_execute). The keyword CONTINUE in the reply shows that the data has not yet been completely retrieved.

Structure

db_fetch

Result

OK

[END|CONTINUE]

[<record>

<record>

...]

In the event of errors, see Reply Format.

Values for the Reply Fields
Value | Description
END | The reply was transferred in full.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<record> | Result data of an SQL statement The fields in a data record are separated by semicolons. Character strings are output in single quotation marks.


db_fetchnice - SAP Documentation

Background documentation db_fetchnice

After having executed the db_executenice command with an SQL statement, use this command to display the next individual data record of the result set.

Prerequisites

  • You have the server permission AccessSQL.

  • You have executed an SQL statement (see: db_executenice). The keyword CONTINUE in the reply shows that the data has not yet been completely retrieved.

Structure

db_fetchnice

Result

OK

[END | CONTINUE]

[<column>=<value>]

[<column>=<value>]

[...]

Values for the Reply Fields
Value | Description
END | The reply was transferred in full.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<column> | Name of column
<value> | Column value

Example

Log on to Database Manager CLI in session mode as the operator OLEG with the password MONDAY, and connect to the DEMODB database:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>

Open a database session:

dbmcli on DEMODB>db_connect

OK

Display the columns of the USERS table with comments record by record:

dbmcli on DEMODB>db_executenice SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'

OK

CONTINUE

COLUMNNAME = 'OWNER'

COMMENT = (LOB)

---

dbmcli on demodb>db_fetchnice

OK

CONTINUE

COLUMNNAME = 'GROUPNAME'

COMMENT = (LOB)

---

dbmcli on DEMODB>db_fetchnice

...

...


db_offline - SAP Documentation

Background documentation db_offline

Use this command to transfer the database to the OFFLINE operational state.

Prerequisites

You have the server permission DBStop.

Syntax

Structure

db_offline [<option>]

<option> :: = -d | -dump

Options
Option | Description
-d | -dump | A dump is generated when transferring the databases from the ONLINE or ADMIN operational state to the OFFLINE operational state.

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Operational State


db_online - SAP Documentation

Background documentation db_online

With this command you transfer the database to the ONLINE operational state.

Also use this DBM command when the database was not stopped correctly because the computer was shut down by a power outage. If the volumes of the database are undamaged, the system uses the information still available within the system to repeat completed transactions and roll back incomplete transactions.

If you enter a point in time in the DBM command, only the transactions completed up to that time are repeated.

You can also configure a database so that it starts automatically when the database computer is started.

Prerequisites

You have the server permissionn DBStart.

Structure

db_online [<option>]

<option> :: = -f | -s | -t | -u

Options
Option | Description
-f | -fast | The kernel variant fast is started.
-s | -slow | The kernel variant slow is started.
-t | -test | The kernel variant test is started.
[-u | -until] <date> <time> <date> ::= <yyyymmdd> <time> ::= <hhmmss> | Time (year, month, day, hour, minutes, seconds) up to which the log entries still available in the database are to be imported.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Activating Automatic Database Start


db_drop - SAP Documentation

Background documentation db_drop

With this command you delete the current database. All DBM server connections to the specified database are closed, except the one you use to execute this command.

As per the system default, the command for deleting the database is only successful if the commands that are still being executed within the database, are ended within 2 minutes. If these commands take longer, the system does not close the DBM server connections to the database, and the command for deleting the database fails.

New commands are still accepted at this time, but are no longer executed.

You can enter an option in the command to force the system to close the DBM server connection/s. Instead of waiting until current DBM commands have been terminated, the system stops the DBM server/s immediately.

You can enter an option in the command to specify that the database files should be retained in the Database Manager program after the database has been deleted.

Prerequisites

  • The database is in the OFFLINE operational state.

  • You have the server permission InstallMgm.

  • The Scheduler is inactive (see: scheduler_stop).

Structure

db_drop [-f] [WITHOUTFILES]

Options

Option

Description

-f

If you specify this option, all DBM server connections to the database are closed immediately, even if DBM commands are still being executed using the connections. The command line windows in question then no longer function. As soon as you enter another DBM command, an error message is displayed.

If you do not specify the -f option and DBM commands are still being executed in the database, the command db_drop fails.

WITHOUTFILES

If you specify this option, the database service is deleted, but the database files (volumes, log files, and so on) remain in the file system. You can only access these files using operating system tools; you can no longer access them using database tools.

If you do not specify this option, all the database files will also be deleted.

Result

OK

In the event of errors, see Reply Format.


db_deletevolume - SAP Documentation

Background documentation db_deletevolume

When you execeute this comannd, the data from the specified data volume is distributed to the remaining data volumes. The then empty data volume is deleted and the resources that were previously used by the data volume are released. Data volumes of the FILE type are deleted from the file system.

You can delete data volumes as long as there are several data volumes available. However, the last data volume of a database cannot be deleted.

The system does not support the deletion of log volumes.

Prerequisites

  • You have the server permission ParamFull or AccessUtility.

  • The database is in the ONLINE operational state.

Structure

db_deletevolume [DATA] [<vol_description>]

<vol_description>:: = NAME <device_name> | [ID] <vol_no>

Options
Option | Description
DATA | The data volume with the highest number is deleted.
NAME <device_name> | Device or file name
[ID] <vol_no> | Sequence number assigned by the system to the volume The specification of the keyword ID is optional.

Result

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, Volumes (Permanent Storage)


Demo Databases DEMODB and TESTDB - SAP Documentation

Procedure documentation Demo Databases DEMODB and TESTDB

To work through the examples in this Loader Tutorial, you require the demo databases DEMODB and TESTDB plus all demo data in the DEMODB database. The DEMODB database should be used mainly to demonstrate the EXPORT commands, and the TESTDB database to demonstrate the IMPORT commands.

Prerequisites

Install the database software and tools. For more information, see Glossary, Installation.

Procedure

Create a demo database with the name DEMODB, and one with the name TESTDB. Load all demo data into the DEMODB when you create the DEMODB database. When creating the TESTDB database, do not load the demo data into the TESTDB.

To create a database, and where required to load the complete demo data, you can use Database Studio, Database Manager, or Installation Manager (See also: Glossary, Installation Manager).

  • Database Administration, Creating Databases

    Choose Load Tutorial... in the context menu of the database DEMODB if you want to load the demo data into the DEMODB.

If you do not load all data when you create the DEMODB database, you can load this into the DEMODB database at a later stage. You can use the Database Studio or Database Manager to load all demo data.

  • Database Studio: Loading Demo Data

  • Database Manager CLI: load_tutorial

Result

The demo databases DEMODB and TESTDB have been created.

DEMODB

The database user MONA has been created in the DEMODB database as a database administrator (DBA) with the password RED. The database administrator MONA can open several database sessions at once (NOT EXCLUSIVE).

The HOTEL demo schema has also been created. The HOTEL demo schema represents a very basic hotel administration system with information on the hotels' guests, location, vacancies, room prices, and so on. This information is stored in a series of simply-structured tables. These tables are filled with demo data. Other objects such as view tables and indexes have also been created.

Note Note

You can change the demo data to suit your needs. However, your results may then differ from the example results stated in this tutorial.

The HOTEL demo schema was developed for practice and testing purposes and contains predefined demo data. Do not use the demo data in a production system.

End of the note.
TESTDB

The TESTDB database does not contain any demo data. Some examples require the database user MONA. In such cases, you can create the database user MONA as follows:

  1. Log on to the database TESTDB as database administrator. If you transferred the default values when creating the database TESTDB, the database system administrator will contain the following user data: User name: DBADMIN, password: SECRET

  2. Create the database user MONA with the following SQL statement:

    CREATE USER mona PASSWORD red DBA NOT EXCLUSIVE

Some examples require the HOTEL demo schema. In such cases you can create the HOTEL schema as follows:

  1. Log on to the database DEMODB as user MONA with the password RED:

  2. Create the HOTEL schema with the following SQL statement:

    CREATE SCHEMA hotel

More Information

Concepts of the Database System, Demo Database, Objects in the HOTEL Schema

Database Studio, Logging On to a Database, Working with SQL Statements: Overview


db_reinstall - SAP Documentation

Background documentation db_reinstall

With this command you can reset the database on the basis of its current configuration. All the data stored in the database is deleted.

You can, for example, use this command to return a test database to its original empty status in order to test different scenarios on the basis of the same database configuration.

When the system executes this DBM command, it performs the following steps:

  1. Transferring the database to the ADMIN operational state

  2. Initializing the database

  3. Loading the system tables

Caution Caution

If you still require the data, make sure you can obtain it using current backups of the dataset. As soon as you execute this DBM command, all the data stored in the database is deleted permanently. Therefore, use this command with extreme caution.

End of the caution.

Prerequisites

You have the server permission AccessUtility.

Structure

db_reinstall

Result

OK

In the event of errors, see Reply Format.


Evaluating System Tables (Examples) - SAP Documentation

Background documentation Evaluating System Tables (Examples)

There are example evaluations for some system tables:

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Example

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

ACTIVECONFIGURATION

CACHESTATISTICS

COLUMNS

CONSTRAINTS

DATASTATISTICS

‎DATAVOLUMES

DBPROCEDURES

DBPROCPARAMS

DOMAINCONSTRAINTS

DOMAINS

FOREIGNKEYCOLUMNS

FOREIGNKEYS

FUNCTIONS

INDEXCOLUMNS

INDEXES

INSTANCE

LOCKS

LOGQUEUESTATISTICS

LOGSTATISTICS

MAPCHARSETS

ROLEPRIVILEGES

ROLES

SEQUENCES

SESSION_ROLES

SESSIONS

SYNONYMS

TABLEPRIVILEGES

TABLES

TRIGGERS

USERS

VERSION

VIEWCOLUMNS

VIEWDEFS

VIEWS

More Information

Database Terms

Definitions of the System Tables

System Tables


db_speed - SAP Documentation

Background documentation db_speed

Use this command to display the database kernel variant of the current database.

When you execute this comannd, the database must not be in the OFFLINE operational state. Otherwise you receive an error message as a response to this command.

Prerequisites

  • You have the DBInfoRead server permission.

  • The database is in the ONLINE or ADMIN operational state.

Structure

db_speed

Result

OK

Speed

(FAST | SLOW | TEST | UNKNOWN)

Values for the Reply Fields
Value | Description
FAST | The FAST variant of the database kernel is active.
SLOW | The SLOW variant of the database kernel is active.
TEST | The TEST variant of the database kernel is active.
UNKNOWN | The kernel variant could not be determined.
Kernel Variants
Kernel Variant | Description
fast | System default Fastest kernel variant, with minimum logging and runtime checks
slow | Kernel variant with extensive logging and runtime checks Do not use this kernel variant during production operation of the database.
test | Kernel variant which was developed especially for test purposes Do not use this kernel variant during production operation of the database.

In the event of errors, see Reply Format.


db_reg - SAP Documentation

Background documentation db_reg

Use this command to update the registration information of a database.

You can update the existing registration information, either completely or partially.

You can also use this command to make registration information known to the system again after it was deleted using db_unreg, provided that the existing database files still exist.

In Microsoft Windows the relevant entry in the registry, and in Unix the file databases.ini in the directory <global_data_path>/config, are updated.

Note Note

You can use this command only when the new version of the database software does not require the database to be migrated .

End of the note.

Prerequisites

  • You have the server permission InstallMgm.

  • The database is in the OFFLINE operational state.

Structure

db_reg <change_definition> | <re-registration_definition>

<change_definition> :: = [ROOT <installation_path>] [AUTO | AUTO OFF] [GROUP <user_group>] [USER OFF | USER <user_definition>

<user_definition> :: = <os_user>,<os_user_password>]

<re-registration_definition> :: = DB <database_name> <first_dbm_operator>,<first_dbm_password>]

Options
Option | Description
ROOT <installation_path> | Location of the database-version-dependent server software Note Note If you have performed an upgrade and thus changed the version of the database software, use this option to provide the system the path of the new software version. Since this also changes the Database Manager CLI version, it is necessary to close all open sessions with Database Manager CLI (or with Database Studio if appropriate) before you execute the command. If you execute the command in session mode, explicitly end Database Manager CLI afterwards. In this way, the next time you access the current database, you will use the new versions of the database software and the Database Manager CLI program. End of the note.
AUTO [OFF] | For Microsoft Windows only: You can define the service entry Start-up-type in the Control Panel. Possible options are: AUTO | AUTO OFF. AUTO: The Start-up-type is set to automatic. AUTO OFF: The Start-up-type is set to manual. Under the Unix operating system this parameter is ignored.
GROUP <user_group> | For Unix only: Use this option to assign your database files to an operating system user group other than the standard group and thus protect the files from unauthorized access.
USER <os_user>,<os_user_password> | For Microsoft Windows only: Operating system user specification The service for starting the database kernel should run under the specified operating system user. <os_user>: Name of the operating system user <os_user_password>: Password of the operating system user
DB <database_name> <dbm_operator_name>,<dbm_operator_password> | Data of the database that is supposed to be registered again. Specify the database name, as well as the name and the password of the first DBM operator.

Result

OK

In the event of errors, see Reply Format.

Example

Changing the Software Version in Command Mode

Call Database Manager CLI, log on as the user DBM with the password DBM, connect to the databaseDEMODB, change the current software version to version 7.7, which is stored in C:\Program Files\sdb\77:

>dbmcli -u DBM,DBM -d DEMODB db_reg ROOT "C:\Program Files\sdb\77"

OK

Changing the Software Version in Session Mode

Call Database Manager CLI, log on as the operator DBM with the password DBM, connect to the database DEMODB:

>dbmcli -u DBM,DBM -d DEMODB

dbmcli on DEMODB>

Change the software version to version 7.7, which is stored in C:\Program Files\sdb\77:

dbmcli on DEMODB>db_reg ROOT "C:\Program Files\sdb\77"

Exit Database Manager CLI:

dbmcli on DEMODB>exit

OK


db_restartinfo - SAP Documentation

Background documentation db_restartinfo

With this command you display the restart information of the database.

You can thus determine which data pages are in the log area and whether a restart of the database is possible. You need this information, for example, when you want to restart a database.

Prerequisites

  • You have the server permission Recovery.

  • The database is in the ONLINE or ADMIN operational state.

Structure

db_restartinfo

Result

OK

Used LOG Page <page_no>

First LOG Page <page_no>

Restartable (1|0)

Id Restart Record <database_ID>

Id LOG Info <database_ID>

Consistent (1|0)

Log Volume Enabled (1|0)

Log Auto Overwrite (1|0)

Master Servernode <computer_name>

Converter Version <converter_version_no>

Oldest Compatible Version <software_version_no>

Queue Count <log_queue_no>

Repository Imports <NO | YES>

Values for the Reply Fields
Value | Description
Used LOG Page | Next log page to be used by the system after the restart
First LOG Page | Oldest available log page
Restartable | Restartability 1: The database can be restarted. 0: The database cannot be restarted.
Id Restart Record | Database ID stored in the data area
Id LOG Info | Database ID stored in the log area
Consistent | Consistency of the database, that is, restartability without importing log entries 1: can be started without importing log entries 0: cannot be started without importing log entries
Log Volume Enabled | 1: The database system writes redo-log entries (default value). 0: The database system does not write any redo-log entries.
Log Auto Overwrite | Overwrite Mode for the Log Area 1: switched on 0: switched off
Master Servernode | Only relevant for hot standby systems: Name of the host on which the master instance is running
Converter Version | Converter version
Oldest Compatible Version | Oldest compatible version of the database software
Queue Count | Number of log queues
Repository Imports | One or more shared repositories have been imported, other database/s required for restart Possible values are: NO | YES YES: dabase can be restartet NO: database requires other database/s for restart

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the database DEMODB on computer PARMA, and display the restart information:

>dbmcli -u OLEG,MONDAY -d DEMODB db_restartinfo

OK

Used LOG Page 710

First LOG Page 2147483647

Restartable 1

Id Restart Record PARMA:DEMODB_20060202_141737

Id LOG Info PARMA:DEMODB_20060202_141737

Consistent 1

Log Volume Enabled 1

Log Auto Overwrite 1

Master Servernode PARMA

Converter Version 13

Oldest Compatible Version 7.6.00.22

Queue Count 1

More Information

Concepts of the Database System, Example: Restart


Technical System Landscape - SAP Documentation

Background documentation Technical System Landscape

Database Tools

You can use different database tools to manage a database or change data in a database. For more information, see Database Tools and Architecture of the Database Tools.

This graphic is explained in the accompanying text.

Database Tool

Applications

Applications use databases to store data and use interfaces to access databases. For more information, see Interfaces.

This graphic is explained in the accompanying text.

Application with an Interface to an SAP MaxDB Database

Interfaces Between SAP Systems and SAP MaxDB
SAP System | SQL Interface to SAP MaxDB
SAP NetWeaver AS | SAP MaxDB SQLDBC
SAP NetWeaver BW | SAP MaxDB SQLDBC
SAP NetWeaver EP | SAP MaxDB JDBC
SAP NetWeaver MI (Clients) | SAP MaxDB JDBC
SAP NetWeaver MDM | SAP MaxDB JDBC
SAP NetWeaver XI | SAP MaxDB JDBC

This graphic is explained in the accompanying text.

Interfaces Between an SAP AS System and SAP MaxDB Databases

Global Listener and X Servers (Communication Servers)

Database tools and applications can be located on other computers than the database. They can only access a database that is located on a remote computer if a dedicated SAP MaxDB X server (communication server) is running on that remote computer. Note that the JDBC interface (and therefore Database Studio) needs an X server even if it is installed on the same computer as the database. For more information, see Network Communication and Global Listener and X Servers.

In SAP systems, you can encrypt the data transfer between database tools/interfaces and the global listener/X servers using SSL. For more information, see Database Administration, Encryption.

This graphic is explained in the accompanying text.

How an SAP MaxDB Database is Accessed from Remote Computers

Example

There are two SAP MaxDB databases on two different computers in the LAN 2 network. There is (at least) one X server running on each of the two database computers. Using these X servers, SAP systems from the networks LAN 1 and LAN 3 access the databases in LAN 2.

From LAN 1, an SAP NetWeaver AS system accesses a database in LAN 2:

  • For SQL statements, the AS system uses the SAP MaxDB SQLDBC interface.

  • For administration commands, the AS system uses the SAP RFC library and the SAP MaxDB DBM RFC server.

From LAN 3, an SAP NetWeaver EP system accesses a database in LAN 2:

  • For SQL statements, the EP system uses the SAP MaxDB JDBC interface.

  • For administration commands, the EP system uses the SAP RFC library and the SAP MaxDB DBM RFC server.

This graphic is explained in the accompanying text.

SAP System Landscape with SAP MaxDB Databases (Example)

More Information

SAP MaxDB Security Guide


db_release - SAP Documentation

Background documentation db_release

With this comman you end the active database session. All resources assigned to this database session are released.

Prerequisites

You have the server permission AccessUtility, AccessSQL, or DBInfoRead.

Structure

db_release

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Database Session


db_restart - SAP Documentation

Background documentation db_restart

When you execute this command, the system transfers the database from the ADMIN or ONLINE operational state into the OFFLINE operational state and then into the ONLINE operational state.

Prerequisites

You have the server permission DBStop.

Structure

db_restart [-f | -s | -t | -d | -u <until>]

Options
Option | Description
-f | -fast | The kernel variant fast is started.
-s | -slow | The kernel variant slow is started.
-t | -test | The kernel variant test is started.
-d | -dump | A dump is generated on transferring the database from the ADMIN or ONLINE operational state to the OFFLINE operational state.
[-u | -until] <date> <time> <date> ::= <yyyymmdd> <time> ::= <hhmmss> | Time (year, month, day, hour, minutes, seconds) up to which the log entries still available in the database are to be imported.

Result

OK

In the event of errors, see Reply Format.


dbm_shm_unlock - SAP Documentation

Background documentation dbm_shm_unlock

With this command you unlock the shared memory.

This DBM command is only to be used for handling errors.

Caution Caution

Only use this DBM command if you are instructed to do so by technical support since s it could lead to inconsistencies in the database system.

End of the caution.

Prerequisites

You have the server permission SharedMemoryAdmin.

Structure

dbm_shm_unlock

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Shared Memory


dbm_version - SAP Documentation

Background documentation dbm_version

With this command you can display the version information of Database Manager. By specifying options, you can determine to which DBM server the DBM client should connect. And you can limit the version information displayed.

Since the version of the DBM server and therefore the Database Manager program are always the same as the version of the database software, you can also determine the version of the database software in this way.

Prerequisites

You do not need to log on to Database Manager to execute this DBM command.

Nor do you require any server permission.

Structure

dbm_version [<option>]

<option> :: = -s | <version> | <build> | <os> | <instroot> | <logon> | <code> | <swap> | <unicode> | <instance> | <sysname> | <masking> | <replytreatment>

Options
Option | Description
-s | Forces the DBMCLI client to connect to the DBM server of this installation. If you do not specify the -s option, the DBMCLI client connects to the DBM server of the highest available server installation on this computer. The information displayed then refers to this DBM server.
<version> | Version number of Database Manager
<build> | Identification number of Database Manager
<os> | Name of the operating system
<instroot> | Installation directory of the version-dependent database software, can only be determined by the system if you are connected to a database
<logon> | Indication whether an operating system logon has taken place
<code> | Character set used in Database Manager
<swap> | Swap type used in Database Manager
<unicode> | Query whether the Unicode character set is used by the database catalog
<instance> | Database type
<sysname> | Name of the operating system
<masking> | Queries whether the masking of special characters within a DBM command is supported
<replytreatment> | List of treatments applied to the current reply package

Result

OK

VERSION = <version_number>

BUILD = <build_number>

OS = <os>

INSTROOT = <dependent_path>

LOGON = <TRUE|FALSE>

CODE = <ASCII|UTF8>

SWAP = <swap>

UNICODE = (YES|NO)

INSTANCE = (OLTP|LVC|unknown)

MASKING =

REPLYTREATMENT =

Values for the Reply Fields
Value | Description
VERSION = <version> | Version number of Database Manager
BUILD = <build_number> | Identification number of Database Manager
<os> | Name of the platform
INSTROOT = <dependent_path> | Installation directory of the version-dependent software
LOGON = <TRUE|FALSE> | Indication whether an operating system logon has taken place TRUE: Logged on FALSE: Not logged on
CODE = <ASCII|UTF8> | Character set used in Database Manager
SWAP = <NO|FULL|HALF> | Swap type used in Database Manager (internal representation of numeric values) NO: hihi-hilo-lohi-lolo FULL: lolo-lohi-hilo-hihi HALF: lohi-lolo-hihi-hilo
UNICODE = <YES | NO> | Character set used by the database catalog YES: UNICODE NO: ASCII
INSTANCE = <OLTP|LVC|UNKNOWN> | Database type OLTP: SAP MaxDB LVC: SAP liveCache Technology unknown: The database type cannot be determined.
SYSNAME = <os> | Name of the operating system
MASKING | Masking of special characters within a DBM command Possible values are: YES | NO YES: Masking is supported NO: Masking is not supported
REPLYTREATMENT | Comma-separated list of treatments, which are applied to the current reply package

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the version information of Database Manager:

>dbmcli -u dbadmin,secret -d demodb dbm_version

OK

VERSION = 7.7.06

BUILD = DBMServer 7.7.06 Build 001-113-186-093

OS = WIN32

INSTROOT = C:\Program Files\sdb\Demodb

LOGON = True

CODE = UTF8

SWAP = full

UNICODE = YES

INSTANCE = OLTP

SYSNAME = Windows XP

MASKING = YES

REPLYTREATMENT = none,zlib,auto

More Information

Glossary, Version


dbmevtdisp_internal_add - SAP Documentation

Background documentation dbmevtdisp_internal_add

This DBM command is an internal system command.

There is no documentation for this at present.


dbmevtdisp_internal_communication - SAP Documentation

Background documentation dbmevtdisp_internal_communication

This DBM command is an internal system command.

There is no documentation for this at present.


dbmevtdisp_internal_delete - SAP Documentation

Background documentation dbmevtdisp_internal_delete

This DBM command is an internal system command.

There is no documentation for this at present.


Managing Users - SAP Documentation

Background documentation Managing Users

Before you can work with the database, you must log on using a database tool or via an interface. When you log on, you identify yourself with a user name and authenticate your identity with the corresponding password (authentication). After authentication, you can, within the scope of the authorizations assigned to you, access and work with data in the database.

The database system differentiates between the following types of users:

  • The database system administrator

  • DBM operators who can manage databases

  • Database users who can change data in the database

This graphic is explained in the accompanying text.

Overview of the Users of the Database System

When creating a database you create the database system administrator, the first DBM operator and, depending on the system, further standard users. You can add further users later.

Some naming restrictions apply. More information: Conventions for User Names and Passwords

Standard Users
SAP MaxDB Standard Users
Default Name | Default Password(s) | Description
DBADMIN DBA (up to and including version 7.5) | SECRET DBA (up to and including version 7.5) | Database system administrator
DBM | SECRET DBM | First DBM operator with all DBM server authorizations
SAP Standard Users for Databases
Name | Description
SUPERDBA | Database system administrator
CONTROL | DBM operator with all server authorizations
SAPR3 | In older SAP systems: Database administrator (database user of class DBA)
SAP<SAPSID> | In newer SAP systems, in particular in MCOD systems (Multiple Components One Database): Database administrator for the SAP system with the ID <SAPSID> (database user of class DBA)
SAP<SAPSID>DB | In Java EE systems: Database administrator for the SAP system with the ID <SAPSID> (database user of class DBA)
Simplified Logon Process Using XUSER

To simplify the logon process to databases with command line tools, you can save the logon data (user name and password, database name) in a user key using the XUSER program. The data can only be accessed by the operating system user who owns the data.

When you want to connect to the database, you only need to specify your user key.

SAP systems use XUSER for the authorization of work processes. Exception: SAP liveCache systems that use central authorization.

More information:

  • XUSER documentation

  • SAP note 39439

Where Are the Users Stored?

The database system administrator and the DBM operators are stored in the (user profile container).

More information: Configuration Files

Special Operating System Users

To protect database resources from direct access using operating system commands, special operating system users and groups are available.

More information: Special Operating System Users and Groups


dban_delete - SAP Documentation

Background documentation dban_delete

Use this command to delete old log directories in the Database Analyzer program.

Prerequisites

You have the DBInfoRead server permission.

Structure

dban_delete <date>

Options
Option | Description
<date> | Date All log files with this date or an older one are deleted. Time format: <yyyymmdd> (year, month, day)

Result

The Database Analyzer output is displayed.

Example

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the DEMODB database, and delete all log files in Database Analyzer before and including 2005/12/31:

>dbmcli –u OLEG,MONDAY –d DEMODB dban_delete 20051231

OK

0,OK: everything works fine

0,"C:\Program Files\sdb\programs\bin\dbanalyzer" -d DEMODB -u *,* -delete 20051231

MaxDB Database Analyzer, The Performance Analysis Tool, Version 7.7.06.01

Copyright 2000-2008 by SAP AG

Using log directory: C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer

Using configuration file: C:\Program Files\sdb\programs\env\dbanalyzer77.cfg

More Information

Database Analyzer documentation


Example: Restart - SAP Documentation

Background documentation Example: Restart

A power outage has occurred and you have to restart the database. During the restart, the database system restores the database starting from the time of the last savepoint.

This graphic is explained in the accompanying text.

Status of the Transactions at the Time of System Failure

How the Database System Handles Transactions During a Restart
Transaction | What Does the Database System Do?
T1 | Nothing The changes by transaction T1 were completely written to the data area by the last savepoint before the system failure.
T2, T3 | The database system rolls back the changes made before the savepoint. To do this, it evaluates the corresponding undo log files.
T5 | Nothing The database system had already rolled back the changes by T5 before the system failure (ROLLBACK). These changes were never written to the data area through a savepoint.
T4, T6 | The database system imports the required redo log entries for these transactions and repeats the transactions (ROLL FORWARD).

More Information

  • How Databases Log Data Changes

  • Savepoint

  • Transactions


Operating System Functions and Resources Used by Databases - SAP Documentation

Background documentation Operating System Functions and Resources Used by Databases

When a database is running, it uses operating system functions and resources, among others:

  • Services

  • Processes

  • Threads

  • Tasks


db_standby - SAP Documentation

Background documentation db_standby

A standby database is transferred to the STANDBY operational state and added to the hot standby system. During this process, an exact copy of the configuration of the master database is imported into the standby database.

Prerequisites

  • The hot standby system is in the ONLINE operational state.

  • All the data paths and files (run directory, volumes, trace files, and so on) are the same in the master database and the standby database.

  • You have the server permission DBStart.

Structure

db_standby <hs_node_nnn>

Options

hs_node_nnn

Computer name/address of standby database nnn.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Hot Standby


db_state - SAP Documentation

Background documentation db_state

Use this command to display the operational state of the database.

Prerequisites

You have the DBInfoRead server permission.

Structure

db_state [-v]

Option | Description
-v | The fill level of the log area and the data area is displayed.

Result

OK

<operational_state>

Log Full = <value>

Database Full = <value>

Values for the Reply Fields
Value | Description
<operational_state> | Operational state of the database Apart from the regular operational database states described below, transient operational states are possible which are generated by the operating system. ONLINE: The database is ready for operation. ADMIN: The database has been shut down. Only special administrative work can be done. OFFLINE: The database is not ready for operation. STANDBY: The database is in a constant restart state (in hot standby systems only). STOPPED INCORRECTLY: Only with a UNIX operating system: The database stopped after an error. UNKNOWN: The system cannot determine the operational state.
Log Full = <value> | Fill level of the log area Possible values are: YES | NO YES: The log area is full. NO: The log area is not full.
Database Full = <value> | Fill level of the data area Possible values are: YES | NO YES: The data area is full. NO: The data area is not full.
Database Operational States
Icon | Operational State | Description
 | ONLINE | The database is running. Database users can log on and execute SQL statements. The database system administrator and DBM operators can perform administrative tasks.
- | STANDBY | For standby databases in hot standby systems only Note that you cannot connect to a standby database. It is in a constant restart state.
 | ADMIN | The database is only available for administration tasks.
 | OFFLINE | The database is not running.


db_stop - SAP Documentation

Background documentation db_stop

Use this command to transfer the database to the OFFLINE operational state.

Unlike the db_offline command, this immediately ends the database process. Therefore, only use the db_stop command if the db_offline command has not been successful.

Prerequisites

You have the server permission DBStop.

Structure

db_stop [<option>]

<option> :: = -d | -dump

Options

-d | -dump

A dump is generated on transferring from the ONLINE or ADMIN operational state to the OFFLINE operational state.

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Operational State


event_set - SAP Documentation

Background documentation event_set

With this command you can specify that the database system should trigger an event as soon as a defined situation occurs. You can execute this DBM command in any operational state of the database, and the event is active immediately. To set an event inactive, execute the event_release command. An event also becomes inactive when you stop the relevant DBM server process.

For all available event categories, there are one or more property definitions (default values) that trigger an event of that category. For event categories ThrowDBFillingAboveLimitEvent, ThrowDBFillingBelowLimitEvent and ThrowLogAboveLimitEvent, you can specify additional property definitions that trigger an event of the corresponding category. For that purpose, use the event_set command.

Using the Event Dispatcher, you can handle the events triggered by the database system and thus, for example, automate periodic administration tasks. To do this, create an event definition in Event Dispatcher. In the event definition specify that the triggered event is to be handled by the database system and how this should be done.

Prerequisites

You have the DBInfoRead server permission.

Structure

event_set <event_category> <priority> <value>

<priority> :: = LOW | MEDIUM | HIGH

Options

Option

Description

<event_category>

Event category; possible values are:

ThrowDBFillingAboveLimitEvent | ThrowDBFillingBelowLimitEvent | ThrowLogAboveLimitEvent

ThrowDBFillingAboveLimitEvent:

The system triggers events of this category when the fill level of the data area exceeds the predefined value.

Default system values are events with the fill levels of 90%, 95%, 96%, 97%, 98% and 99% (HIGH priority), with the fill levels of 80%, 85% (MEDIUM priority) and with the fill level of 70% (LOW priority)

ThrowDBFillingBelowLimitEvent:

The system triggers events of this category when the fill level of the data area falls below the predefined value.

Default system values are events with the fill levels of 70%, 80%, 85%, 90% and 95% (LOW priority).

ThrowDBFillingAboveLimitEvent:

The system triggers events of this category when the fill level of the data area exceeds the predefined values.

Default system values are events with the fill levels of 96%, 97%, 99% and 99% (HIGH priority), with the fill levels of 90% and 95% (MEDIUM priority) and with the fill levels of 50% and 75% (LOW priority)

<priority>

Priority of an event

Possible values are: LOW | MEDIUM | HIGH

For events that belong to a category that is changeable, you can override the default values in the database system.

<value>

Numerical value whose meaning depends on the event

DBFILLINGABOVELIMIT:

For any fill level between 0% and 99% exceeding the defined value, you can define an event (value range 0 ≤ n ≤ 99) as well as a priority for that event.

DBFILLINGBELOWLIMIT:

For any fill level between 0% and 100% falling short behind the defined value, you can define an event (value range 1 ≤ n ≤ 100) as well as a priority for that event.

LOGABOVELIMIT

For any fill level between 0% and 100% exceeding the defined value, you can define an event (value range 0 ≤ n ≤ 100) as well as a priority for that event.

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, define an event of category ThrowDBFillingAboveLimitEvent with priority LOW and value 50.

>dbmcli -u OLEG,MONDAY -d DEMODB event_set ThrowDBFillingAboveLimitEvent LOW 50

OK

More Information

Using Database Events

Glossary, Event


event_wait - SAP Documentation

Background documentation event_wait

While working in session mode of Database Manager use this command to fetch a message about the occurrence of an event as well as its data. This is then deleted.

The first time you execute one of the DBM commands event_wait, event_receive or event_available, an event session is generated within the Database Manager session. Events triggered from this time on are collected and can be dealt with within this session.

The events are fetched in the chronological order in which they were triggered, the oldest events are fetched first.

If the data about an event has been fetched, evaluate it, enter the command again, and wait for the next notification from Database Manager about the occurrence of an event.

You do not receive a reply to this DBM command until an event occurs.

To finish fetching messages, you need to terminate the event session explicitly (see: event_release)

Recommendation Recommendation

Use this DBM command via one of the programming interfaces of Database Manager.

End of the recommendation.

Prerequisites

  • You have the DBInfoRead server permission.

  • The FloatingServiceTasks and PreservedEventTasks database parameters are configured large enough (see: Database Administration, Support Database Parameters).

Structure

event_wait

Result

OK

NAME=<event_category>

PRIORITY=<priority>

VALUE1=<value1>

VALUE2=<value2>

DATE=<yyyymmdd>

TIME=<HHmmss>

COUNT=<count>

TEXT=[<text>]

Values for the Reply Fields

Values for the Reply Fields
Value | Description
<event_category> | Event category
<priority> | Priority of the event Possible values are: LOW | MEDIUM | HIGH
<value1> | Numerical value 1, the meaning of which depends on the event For events of the categories DBFILLINGABOVELIMIT, DBFILLINGBELOWLIMIT and LOGABOVELIMIT: number of pages used
<value2> | Numerical value 2, the meaning of which depends on the event For events of the categories DBFILLINGABOVELIMIT, DBFILLINGBELOWLIMIT and LOGABOVELIMIT: percentage of pages used
<date> | Day on which event was triggered Time format: <yyyymmdd> (year month day)
<time> | Time at which event was triggered Time format: <HHMMSS> (hours minutes seconds)
<count> | Sequence number of the event The system starts numbering at the moment in which the database is transferred to the ONLINE operational state.
<text> | Text, the meaning of which depends on the event

In the event of errors, see Reply Format.

Example

  1. Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB:

    >dbmcli -u OLEG,MONDAY -d DEMODB

    dbmcli on DEMODB>

  2. Execute the DBM command for waiting for an event:

    dbmcli on DEMODB>event_wait

    OK

    NAME=DBFILLINGABOVELIMIT

    PRIORITY=LOW

    DATE=20050615

    TIME=150344

    VALUE1=6998

    VALUE2=70

    COUNT=8

    TEXT=

More Information

Glossary, Event, Event Dispatcher


exec_nipingsrv - SAP Documentation

Background documentation exec_nipingsrv

This DBM command is used only by SAP applications.

There is no documentation for this at present.


exec_lcinit - SAP Documentation

Background documentation exec_lcinit

Note Note

This command is only relevant in connection with SAP applications.

End of the note.

Use this command to start the liveCache initialization script, which is stored on the database computer, from Database Manager. You can specify an option with this DBM command that is passed to the liveCache initialization script by Database Manager.

The output from the liveCache initialization script is displayed by Database Manager CLI.

Prerequisites

You have the server permission SystemCmd.

Structure

exec_lcinit [<option>]

<option> :: = init | register | restart | slow | stop | shutdown

Options
Option | Description
init | Initializes the liveCache database
register | The liveCache libraries are reloaded. If necessary, the liveCache database is transferred to the ONLINE operational state first.
restart | System default if you do not specify an option The liveCache database is restarted.
slow | The kernel variant slow is started.
stop | The DBM command db_stop is executed.
shutdown | The DBM command db_offline is executed.

Result

OK

<return_code>,<description>)

<pgm_code>,<command>

<command_output_lines>

Values for the Reply Fields
Value | Description
<return_code> | Return code of Database Manager If the value is 0, the DBM command has been executed successfully. For any other value, see Messages.
<description> | Message short text
<pgm_code> | Return value of the liveCache initialization script
<command> | Executed command line
<command_output_lines> | Output text of the program

More Information

Glossary, liveCache (SAP liveCache Technology)


dbm_configset - SAP Documentation

Background documentation dbm_configset

Use this command t define or delete a configuration parameter of Database Manager in the specified configuration file.

Parameters for Database Manager are defined in the following three configuration files:

  • A database-specific configuration file

  • A software version-specific configuration file

  • A database computer-specific configuration file

The parameter values in the database-specific configuration file override the values in the software version-specific configuration file. The values in the software version-specific configuration file override the values in the database computer-specific configuration file.

Prerequisites

You have the server permission InstallMgm.

Structure

dbm_configset [<config_file>] <parameter_name> [<value>]

Options
Option | Description
<config_file> | Configuration file into which the parameter value is to be entered or from which it is to be deleted Possible values are: INSTANCE | INSTALLATION | GLOBAL INSTANCE: the database-specific configuration file INSTALLATION: the software version-specific configuration file GLOBAL: the database computer-specific configuration file If you do not specify a file, the system uses the database-specific configuration file (default).
<parameter_name> | Name of the configuration parameter
<value> | Value of the configuration parameter If you do not specify a value, the parameter will be deleted from the specified configuration file.

Result

OK

In the event of errors, see Reply Format.


dbm_execute_serverprocess - SAP Documentation

Background documentation dbm_execute_serverprocess

This DBM command is an internal system command.

There is no documentation for this at present.


dbm_getpath - SAP Documentation

Background documentation dbm_getpath

Use this command to display the software directories of SAP MaxDB on the database computer.

Prerequisites

You do not need to log on to Database Manager to execute this DBM command. Nor do you require any server permission.

Structure

dbm_getpath [-s][<path_ID>]

<path_ID>:: = ClientProgPath | GlobalProgPath | InstallationPath | DataPath | GlobalDataPath

Options

Option

Description

-s

Forces the DBMCLI client to connect to the DBM server of this installation.

If you do not specify the -s option, the DBMCLI client connects to the DBM server of the highest available server installation on this computer. The information displayed then refers to this DBM server.

<path_ID>

ID of the path to be displayed

If you do not specify a <path_ID>, all installation paths are displayed.

Possible values are:

ClientProgPath | GlobalProgPath | InstallationPath | DataPath | GlobalDataPath

ClientProgPath: path where the client programs are stored (SQLCLI, DBMCLI and others), corresponds to the Installation Path in isolated installations (from version 7.8)

GlobalProgPath: path where the installation tools are stored

InstallationPath: path where the database server software and client software of an installation are stored

DataPath: data path actually used by the installation (If a private data path was defined during installation, it corresponds to the PrivateDataPath, otherwise to the GlobalDataPath.)

GlobalDataPath: parameter and log files of the SAP MaxDB installations

Result

OK

ClientProgPath=...

GlobalProgPath=...

InstallationPath=...

DataPath=...

GlobalDataPath=...

Example

Call Database Manager CLI, display the global data path where the parameter and log files of the SAP MaxDB installations are stored:

>dbmcli dbm_getpath globaldatapath

OK

C:\sdb\data

More Information

Glossary, Directory


dban_start - SAP Documentation

Background documentation dban_start

Use this command to call the Database Analyzer program in Database Manager. You can also specify options for Database Analyzer.

While executing this command, Database Manager implicitly transfers the data of the database system administrator to the Database Analyzer program.

In case Database Analyzer is already active, only its status is displayed.

Prerequisites

You have the DBInfoRead server permission.

Structure

dban_start [<option_list>]

<option_list> : = <option> | <option> <option> ...

Database Analyzer: Call Options

Option

Description

-c <level>

Displays debugging information

You can specify a value between 1 (low) and 4 (high).

-d <database_name>

Database name

-delete <date>

Deletes all analysis data and log files of Database Analyzer up to and including <date>

Enter <date> in the format YYYYMMDD.

-f <configfile>

Name of the configuration file

If you do not specify a configuration file, Database Analyzer uses the dbanalyzer<version>.cfg file in the <installation_path>\env directory.

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

-i

Deletes any existing log files for the current day

-keep <days>

Database Analyzer automatically deletes all Database Analyzer files and directories that are older than <days>.

-n <database_computer>

Name of the computer on which the database is running

If you specify the computer name, you must also use the –o option to specify the directory for the log files.

-noenv

Suppresses logging and output of the environment variables from the configuration file

-nologo

Suppresses the logo

-o <outputdir>

Directory for the log files

If you start Database Analyzer on the computer on which the database is installed, you do not need to specify –o.

If you do not specify -o, Database Analyzer uses the analyzer subdirectory in the run directory of the database.

More information: Database Administration, Log Files

-state

Displays information about the running Database Analyzer

-stop

Stops Database Analyzer

-t <interval>[,<number>]

Time interval <number> between two analyses (in seconds) and the chosen number <interval> of analyses

The system default for <interval> is 900 seconds.

If you specify a value for <number>, Database Analyzer stops after this number of analyses.

-trace <treshold>

If the system needs longer than <threshold> milliseconds to calculate a Database Analyzer object (SQL statement, parameter, array, or monitor), it is logged in the

<outputdir>/<date>/DBAN.trc trace file.

-u <database_user>,<database_user_password>

Name and password of the database user

-V

Displays the version of Database Analyzer

-?

Displays the Database Analyzer help

Result

The output of the Database Analyzer program is displayed.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and call Database Analyzer.

Simultaneously change the time interval between two analyses to 300 seconds and limit the number of analyses to 4:

>dbmcli -u OLEG,MONDAY -d DEMODB dban_start –t 300,4

OK

0,OK: everything works fine

0,"C:\Program Files\sdb\programs\bin\dbanalyzer" -d DEMODB -u *,* -state

MaxDB Database Analyzer, The Performance Analysis Tool, Version 7.7.06.01

Copyright 2000-2008 by SAP AG

Using log directory: C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer

INFO 13: Database Analyzer active in directory "C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer".

Database = DEMODB

Node =

Rundirectory = C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB

Configfile = C:\Program Files\sdb\programs\env\dbanalyzer77.cfg

Protocoldirectory = C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer

Interval = 300

Reconnect = false

ProcessID = 4180

SessionID = 404

Driver = MaxDB

Started = 2008–09–30 13:13:50

More Information

Database Analyzer documentation


dban_stop - SAP Documentation

Background documentation dban_stop

Use this command to end the Database Analyzer program from Database Manager.

If Database Analyzer is inactive, only its status is displayed.

Prerequisites

You have the DBInfoRead server permission.

Structure

dban_stop

Result

The Database Analyzer output is displayed.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and end Database Analyzer:

>dbmcli -u OLEG,MONDAY -d DEMODB dban_stop

OK

0,OK: everything works fine

0,"C:\Program Files\sdb\programs\bin\dbanalyzer" -d DEMODB -u *,* -stop

MaxDB Database Analyzer, The Performance Analysis Tool, Version 7.7.06.01

Copyright 2000-2008 by SAP AG

Using log directory: C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer

More Information

Database Analyzer documentation


diag_pack - SAP Documentation

Background documentation diag_pack

To be able to comprehensively diagnose a database problem, technical support requires a significant number of database log files. Use this command, together with WinRAR and WinZIP, to compress all necessary log files into an archive file.

In the DBM command, you can limit which data is packed. To do this, specify the file class(es) whose files you want to be packed into the archive.

For the hist file class, you can only specify files from a specific directory. To do this, specify the time stamp of the relevant directory.

Prerequisites

You have the server permission DBFileRead.

Structure

diag_pack [file=<archive>] [class_definition]

class_definition:: = <non_hist_class_definition> | <hist_class_definition>

<non_hist_class_definition> :: = class=<class_list>

<hist_class_definition>:: = class=hist[,<class_list>] date=<timestamp>

<class_list>:: = <class_spec> | <class_spec>,<class_spec>,...

Options
Option | Description
<archive> | Name and path of the archive file you want to create, to which the system adds the extension .tgz Take this into account, if you specify an archive name of your own choosing. The default values are: File name:diagpack.tgz File ID: DIAGTGZ Directory: Run directory of the database
<class_spec> | Class the files of which you want to include in the package For possible values, see: Glossary, File Class The default value is protocol. Separate multiple classes with commas.
<timestamp> | Time stamp of the diagnosis file This is an additional parameter for the hist file class You determine the time stamp by displaying the list of available diagnosis files (see: diag_histlist)

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Log Files


DBM Commands - SAP Documentation

Background documentation DBM Commands

DBM commands are the commands, which can be executed in Database Manager CLI for managing databases.

All DBM commands executed during a Database Manager session refer to the database whose name was specified with the option -d when logging on to Database Manager CLI.

Prerequisites

The right to execute a DBM command can be subject to three prerequisites:

  • Logging on to Database Manager (see: user_logon)

  • Server Permissions

  • Logging on to the operating system (see: user_system)

You can find out which of these prerequisites need to be fulfilled for executing a specific DBM command by looking at its description.

Structure

<dbm_command> [<dbm_option_list>]

<dbm_command> :: = <command_name> [<cmd_option_list>]

<cmd_option_list> :: = <command_option> | <command_option> <command_option> ...

<dbm_option_list> :: = <dbm_option> | <dbm_option> <dbm_option> ...

Options
Option | Description
<command_name> | DBM command name
<command_option> | Command option (see description of the respective DBM command)
<dbm_option> | DBM Option

More Information

Calling Database Manager CLI

help (Command for displaying all the available DBM commands)

Overview of All DBM Commands


event_available - SAP Documentation

Background documentation event_available

Use this DBM command to display whether events were triggered and can be fetched with event_receive or event_wait.

The first time you execute one of the DBM commands event_wait, event_receive or event_available, an event session is generated within the Database Manager session. Events that are triggered from this time on are collected and can be dealt with within the event session.

You get an OK message if events were triggered.

Prerequisites

  • You have the DBInfoRead server permission.

  • The FloatingServiceTasks and PreservedEventTasks database parameters are configured large enough (see: Database Administration, Support Database Parameters).

Structure

event_available

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Event, Event Dispatcher


event_delete - SAP Documentation

Background documentation event_delete

With this command you specify that an event should cease to be active so that it is no longer triggered by the database system.

You can execute this DBM command in any operational state of the database.

For an overview of the event categories that you can activate and deactivate, see: Glossary, Event

Prerequisites

You have the DBInfoRead server permission.

Structure

event_delete <event_category> [<value>]

Options
Option | Description
<event_category> | Event category
<value> | Numerical value the meaning of which depends on the event

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, deactivate the event DBFILLINGABOVELIMIT with value 50:

>dbmcli -u OLEG,MONDAY -d DEMODB event_delete DBFILLINGABOVELIMIT 50

OK

More Information

Glossary, Event, Event Dispatcher


event_list - SAP Documentation

Background documentation event_list

Use this command to display the list of all active events.

Prerequisites

You have the DBInfoRead server permission.

Structure

event_list

Result

OK

Name Priority Value Description

<event_category> <priority> <value> <description>

<event_category> <priority> <value> <description>

<event_category> <priority> <value> <description>

...

Values for the Reply Fields
Value | Description
<event_category> | Event category
<priority> | Priority of the event Possible values are: LOW | MEDIUM | HIGH
<value> | Additional value whose meaning depends on the event
<description> | Description of the event

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the database DEMODB, display the list of all active events:

>dbmcli -u OLEG,MONDAY -d DEMODB event_list

OK

Name Priority Value Description

DBFILLINGABOVELIMIT LOW 70 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT MEDIUM 80 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT MEDIUM 85 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT HIGH 90 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT HIGH 95 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT HIGH 96 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT HIGH 97 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT HIGH 98 Filling of the database exceeds the given percentage

DBFILLINGABOVELIMIT HIGH 99 Filling of the database exceeds the given percentage

DBFILLINGBELOWLIMIT LOW 70 Filling of the database has fallen short of the given percentage

DBFILLINGBELOWLIMIT LOW 80 Filling of the database has fallen short of the given percentage

DBFILLINGBELOWLIMIT LOW 85 Filling of the database has fallen short of the given percentage

...

...

More Information

Glossary, Event, Event Dispatcher


event_list_categories - SAP Documentation

Background documentation event_list_categories

Use this command to display a list of all event categories for which events can be set.

If you specify a category as an option, a help text will be displayed for the specified category.

Prerequisites

You have the DBInfoRead server permission.

Structure

event_list_categories [<event_category>]

Result

OK

<event_category>

<event_category>

<event_category>

...

Values for the Reply Fields
Value | Description
<event_category> | Event category If you have specified a certain category as an option in the command, an explanatory text is displayed for this category.

In the event of errors, see Reply Format.

More Information

Glossary, Event


event_receive - SAP Documentation

Background documentation event_receive

Use this DBM command to fetch an event that has been triggered.

Repeat this DBM command to fetch additional events. The events are fetched in the chronological order in which they were triggered, the oldest events are fetched first.

The first time you execute one of the DBM commands event_wait, event_receive or event_available, an event session is generated within the Database Manager session. Events that are triggered from this time on are collected and can be dealt with within the event session.

If no event was triggered, you get an error message for the DBM command event_receive.

Prerequisites

  • You have the DBInfoRead server permission.

  • The FloatingServiceTasks and PreservedEventTasks database parameters are configured large enough (see: Database Administration, Support Database Parameters).

Structure

event_receive

Result

OK

NAME=<event_category>

PRIORITY=<priority>

VALUE1=<value1>

VALUE2=<value2>

DATE=<yyyymmdd>

TIME=<HHmmss>

COUNT=<count>

TEXT=[<text>]

Values for the Reply Fields
Value | Description
<event_category> | Event category
<priority> | Priority of the event Possible values are: LOW | MEDIUM | HIGH
<value1> | Numerical value 1, the meaning of which depends on the event For events of the categories DBFILLINGABOVELIMIT, DBFILLINGBELOWLIMIT and LOGABOVELIMIT: number of pages used
<value2> | Numerical value 2, the meaning of which depends on the event For events of the categories DBFILLINGABOVELIMIT, DBFILLINGBELOWLIMIT and LOGABOVELIMIT: percentage of pages used
<date> | Day on which event was triggered Time format: <yyyymmdd> (year month day)
<time> | Time at which event was triggered Time format: <HHMMSS> (hours minutes seconds)
<count> | Sequence number of the event The system starts numbering at the moment in which the database is transferred to the ONLINE operational state.
<text> | Text, the meaning of which depends on the event

In the event of errors, see Reply Format.

More Information

Glossary, Event, Event Dispatcher


event_release - SAP Documentation

Background documentation event_release

An event session is created implicitly while you are waiting for an event (see: event_wait).

Use this DBM command to end the event session.

Prerequisites

You have the DBInfoRead server permission.

Structure

event_release

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Event, Event Dispatcher


dbm_listmemoryerror - SAP Documentation

Background documentation dbm_listmemoryerror

This DBM command is an internal system command.

There is no documentation for this at present.


dbm_next - SAP Documentation

Background documentation dbm_next

This DBM command is an internal system command.

There is no documentation for this at present.


dbm_shm_info - SAP Documentation

Background documentation dbm_shm_info

Use this command to display information about the shared memory of Database Manager.

Prerequisites

You have the server permission SharedMemoryAdmin.

Structure

dbm_shm_info

Result

OK

VERSION

Required <version_no>

Found <version_no>

LOCKING

Lock <status>

Reserve lock <status>

Locking process <pid>

PROCESSES

<pid> <state>

<pid> <state>

<pid> <state>

...

[PERSISTENCE

<error_message>]

Values for the Reply Fields
Value | Description
Required <version_no> | The shared memory version expected by the system
Found <version_no> | Actual version of the shared memory
Lock <status> Reserve lock <status> | Lock status Possible values are: LOCKED | UNLOCKED
Locking process <pid> | ID of the locking process
<state> | Status of the process Possible values are: ALIVE | DEAD | UNKNOWN ALIVE: the process is working DEAD: the process is not in the operating system's process list UNKNOWN:the status of the process could not be determined
<error_message> | Message text

More Information

Glossary, Shared Memory


dbm_shm_reset - SAP Documentation

Background documentation dbm_shm_reset

Use this command to reset the contents of the shared memory by deleting the relevant file from the file system.

This DBM command is only to be used for handling errors.

Caution Caution

Only use this DBM command if you are instructed to do so by technical support since it could lead to inconsistencies in the database system.

End of the caution.

Prerequisites

You have the server permissionSharedMemoryAdmin.

Structure

dbm_shm_reset

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Shared Memory


dbm_getpid - SAP Documentation

Background documentation dbm_getpid

This DBM command is an internal system command.

There is no documentation for this at present.


FOREIGNKEYS - SAP Documentation

Object documentation FOREIGNKEYS

The system table DOMAIN.FOREIGNKEYS contains all the referential CONSTRAINT definitions for which the current user has privileges.

Structure

FOREIGNKEYS
SCHEMANAME | CHAR(32) | Name of the schema of the table
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
FKEYNAME | CHAR(32) | Name of the referential CONSTRAINT definition
RULE | CHAR(18) | Rules for deleting the table
CREATEDATE | DATE | Creation date of the referential CONSTRAINT definition
CREATETIME | TIME | Creation time of the referential CONSTRAINT definition
COMMENT | CLOB | Comment on the referential CONSTRAINT definition

More Information

Evaluating System Tables, FOREIGNKEYS

SQL Reference Manual, Name of a Referential Constraint (referential_constraint_name)


DOMAINCONSTRAINTS - SAP Documentation

Object documentation DOMAINCONSTRAINTS

The system table DOMAIN.DOMAINCONSTRAINTS describes domains and their definitions.

Structure

DOMAINCONSTRAINTS
OWNER | CHAR(32) | Name of the owner of the domain
DOMAINNAME | CHAR(32) | Name of the domain
CONSTRAINTNAME | CHAR(32) | Name of the CONSTRAINT definition
DEFINITION | CLOB | Text of the CONSTRAINT definition

More Information

Evaluating System Tables, DOMAINCONSTRAINTS

SQL Reference Manual, CONSTRAINT Definition (constraint_definition)


DOMAINS - SAP Documentation

Object documentation DOMAINS

The system table DOMAIN.DOMAINS contains information about all domains.

Structure

DOMAINS
OWNER | CHAR(32) | Name of the owner of the domain
DOMAINNAME | CHAR(32) | Name of the domain
DATATYPE | CHAR(10) | Data type of the domain (BOOLEAN | CHAR | DATE | FIXED | FLOAT | INTEGER | CLOB | BLOB | SMALLINT | TIME | TIMESTAMP)
CODETYPE | CHAR(8) | Code attribute of domain (ASCII | BYTE | UNICODE)
LEN | FIXED(4) | Length or precision of the domain
DEC | FIXED(3) | Number of decimal places in domains of data type FIXED
DEFAULT | CHAR(254) | Default value (DEFAULT) for domain
DEFAULTFUNCTION | CHAR(12) | Name, if the DEFAULT value is one of the following value specifications: NULL | USER | USERGROUP | SYSDBA | UID | DATE | TIME | TIMESTAMP | UTCDATE | TIMEZONE | UTCDIFF | TRUE | FALSE | TRANSACTION Otherwise NULL value
DEFINITION | CLOB | Domain definition text
CREATEDATE | DATE | Creation date of the domain
CREATETIME | TIME | Creation time of the domain
COMMENT | CLOB | Comment on the domain

More Information

Evaluating System Tables, DOMAINS

SQL Reference Manual, Data Type (data_type),

Specifying Values (extended_value_spec)


FOREIGNKEYCOLUMNS - SAP Documentation

Object documentation FOREIGNKEYCOLUMNS

The system table DOMAIN.FOREIGNKEYCOLUMNS contains the columns of all the referential CONSTRAINT definitions for which the current user has privileges.

Structure

FOREIGNKEYCOLUMNS
SCHEMANAME | CHAR(32) | Name of the schema of the table
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
COLUMNNAME | CHAR(32) | Name of the column
FKEYNAME | CHAR(32) | Name of the referential CONSTRAINT definition
REFSCHEMANAME | CHAR(32) | Name of the schema of the referenced table
REFOWNER | CHAR(32) | Name of the owner of the referenced table
REFTABLENAME | CHAR(32) | Name of the referenced table
REFCOLUMNNAME | CHAR(32) | Name of the column of the referenced table
RULE | CHAR(18) | Rules for deleting the table
CREATEDATE | DATE | Creation date of the referential CONSTRAINT definition
CREATETIME | TIME | Creation time of the referential CONSTRAINT definition
COMMENT | CLOB | Comment on the referential CONSTRAINT definition

More Information

Evaluating System Tables, FOREIGNKEYCOLUMNS

SQL Reference Manual, Name of a Referential Constraint (referential_constraint_name)


DBPROCPARAMS - SAP Documentation

Object documentation DBPROCPARAMS

The system table DOMAIN.DBPROCPARAMS contains all the parameters of a database procedure for which the current user has privileges.

Structure

DBPROCPARAMS
SCHEMANAME | CHAR(32) | Name of the schema of the database procedure
DBPROCNAME | CHAR(32) | Name of the database procedure
OWNER | CHAR(32) | Name of the owner of the database procedure
PARAMETERNAME | CHAR(32) | Parameter name
POS | FIXED(4) | Original position of the parameter in the database procedure
IN/OUT TYPE | CHAR(6) | Type of parameter (IN | OUT)
DATATYPE | CHAR(10) | Data type of the parameter (BOOLEAN | CHAR | DATE | FIXED | FLOAT | TIME | TIMESTAMP)
CODETYPE | CHAR(8) | Code attribute of the parameter (ASCII | BYTE | UNICODE)
LEN | FIXED(4) | Length or precision of the parameter
DEC | FIXED(3) | Number of decimal places of the parameter with data type FIXED
CREATEDATE | DATE | Creation date of the database procedure
CREATETIME | TIME | Creation time of the database procedure

More Information

Evaluating System Tables, DBPROCPARAMS

SQL Reference Manual, Name of a Database Procedure (dbproc_name),

Data Type (data_type)


INDEXES - SAP Documentation

Object documentation INDEXES

The system table DOMAIN.INDEXES contains all the indexes for which the current user has privileges.

Structure

INDEXES
SCHEMANAME | CHAR(32) | Name of the table schema
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
INDEXNAME | CHAR(32) | Name of the index
FILEID | CHAR(8) BYTE | Identification of the index file
FUNCTIONSCHEMANAME | CHAR(32) | Name of the schema of the database function used for the function index
FUNCTIONNAME | CHAR(32) | Name of the database function used for the function index
TYPE | CHAR(6) | Index type (UNIQUE | NULL)
CREATEDATE | DATE | Creation date of the index
CREATETIME | TIME | Creation time of the index
INDEX_USED | FIXED(10) | Frequency of use in search operations
INDEXUSEDRESETDATE | DATE | Date on which ALTER INDEX INIT USAGE was last executed
INDEXUSEDRESETTIME | TIME | Time at which ALTER INDEX INIT USAGE was last executed
FILESTATE | CHAR(20) | Status of the index (OK | BAD | MISSING)
DISABLED | CHAR(3) | Index not active for search operations (YES | NO)
COMMENT | CLOB | Comment on the index

If the INDEXES system table is called by the database system administrator, information from all database users indexes is displayed.

More Information

Evaluating System Tables, INDEXES

SQL Reference Manual, Index Name (index_name)


USERS - SAP Documentation

Object documentation USERS

The system table DOMAIN.USERS contains all database users.

Structure

USERS
OWNER | CHAR(32) | Name of the owner of the database user
GROUPNAME | CHAR(32) | Name of the group
USERNAME | CHAR(32) | Name of the database user
USERMODE | CHAR(8) | Class of the database user (SYSDBA | DBA | RESOURCE | STANDARD)
CONNECTMODE | CHAR(8) | Type of connection (MULTIPLE | SINGLE)
MAXTIMEOUT | FIXED(10) | TIMEOUT value
COSTWARNING | FIXED(10) | COSTWARNING value
COSTLIMIT | FIXED(10) | COSTLIMIT value
DEFAULTCODE | CHAR(7) | Default value for code attribute
CREATEDATE | DATE | Date on which the database user was created
CREATETIME | TIME | Time at which the database user was created
ALTERDATE | DATE | Date on which the database user was changed
ALTERTIME | TIME | Time at which the database user was changed
PWCREADATE | DATE | Creation date of the password
PWCREATIME | TIME | Creation time of the password
SERVERDB | CHAR(18) | Database name
SERVERNODE | CHAR(64) | Name of the database computer
USER_ID | FIXED(10) | ID of the database user
ISREPLICATIONUSER | CHAR(3) | Indicates whether the database user can control and monitor database replication (YES | NO)
COMMENT | CLOB | Comment on the database user

More Information

Evaluating System Tables, USERS

Database Administration, Database Users

SQL Reference Manual, User Name (user_name)


INDEXCOLUMNS - SAP Documentation

Object documentation INDEXCOLUMNS

The system table DOMAIN.INDEXCOLUMNS contains detailed information about the indexes for which the current database user has privileges.

Structure

INDEXCOLUMNS
SCHEMANAME | CHAR(32) | Name of the table schema
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
INDEXNAME | CHAR(32) | Name of the index
FILEID | CHAR(8) BYTE | ID of the index file
TYPE | CHAR(6) | Index type (UNIQUE | NULL)
COLUMNNAME | CHAR(32) | Name of the column
SORT | CHAR(4) | Sort sequence for the column (ASC | DESC)
COLUMNNO | FIXED(4) | Number of the column in the index
DATATYPE | CHAR(10) | Data type of the column (BOOLEAN | CHAR | DATE | FIXED | FLOAT | INTEGER | SMALLINT | TIME | TIMESTAMP)
LEN | FIXED(4) | Length or accuracy of column definition
CREATEDATE | DATE | Creation date of the index
CREATETIME | TIME | Creation time of the index
INDEX_USED | FIXED(10) | Frequency of use in search operations
FILESTATE | CHAR(20) | Status of the index (OK | BAD | MISSING)
DISABLED | CHAR(3) | Index not active for search operations (YES | NO)
COMMENT | CLOB | Comment on the index

More Information

Evaluating System Tables, INDEXCOLUMNS

SQL Reference Manual, Index Name (index_name)


VIEWDEFS - SAP Documentation

Object documentation VIEWDEFS

The system table DOMAIN.VIEWDEFS contains the definitions of the view tables for which the current user has privileges.

Structure

VIEWDEFS
SCHEMANAME | CHAR(32) | Name of the schema of the view table
OWNER | CHAR(32) | Name of the owner of the view table
VIEWNAME | CHAR(32) | Name of the view table
LEN | FIXED(5) | Length of the view table definition
DEFINITION | CLOB | SQL statement text in the view table definition

More Information

VIEWCOLUMNS, VIEWS, VIEWTABLES

Evaluating System Tables, VIEWDEFS

SQL Reference Manual, CREATE VIEW Statement (create_view_statement)


ACTIVECONFIGURATION - SAP Documentation

Object documentation ACTIVECONFIGURATION

The system table SYSINFO.ACTIVECONFIGURATION contains the names and values of the database parameters that are currently active.

Structure

ACTIVECONFIGURATION
PARAMETERNAME | CHAR(32) | Name of the database parameter
PERMANENT | CHAR(3) | Indicates whether the value of the database parameter is reset when the system switches to operational state OFFLINE (YES | NO)
CHANGEABLE | CHAR(10) | Indicates whether the value of the database parameter can be changed in operational state ONLINE and whether the change takes effect immediately (YES | NO)
DEPRECATED | CHAR(3) | Indicates whether the database parameter remains YES: No further database parameter under this name from the next minor version onwards. NO: Database parameter remains.
VALUE | CHAR(256) | Value of the database parameter

More Information

Evaluating System Tables, ACTIVECONFIGURATION

Database Administration, Database Parameters


CACHESTATISTICS - SAP Documentation

Object documentation CACHESTATISTICS

The system table SYSINFO.CACHESTATISTICS contains information on accesses to caches since the last time the database instance was started.

Structure

CACHESTATISTICS
SESSIONID | FIXED(10) | ID of the database session if the corresponding cache is session-specific; otherwise NULL.
NAME | CHAR(20) | Cache name
ACCESSCOUNT | FIXED(20) | Number of accesses to the cache
SUCCESSFULACCESSCOUNT | FIXED(20) | Number of successful accesses to the cache
UNSUCCESSFULACCESSCOUNT | FIXED(20) | Number of unsuccessful accesses to the cache
HITRATE | FIXED(3) | Percentage of successful accesses to the cache (%)

More Information

Evaluating System Tables, CACHESTATISTICS


LOCKS - SAP Documentation

Object documentation LOCKS

The system table DOMAIN.LOCKS describes the current lock entries and entries for lock requests.

Structure

LOCKS
SESSION | FIXED(10) | Identification of the database session
TRANSCOUNT | CHAR(20) | Identification of the transaction in the database session
PROCESS | FIXED(10) | Identification of the process in the database
USERNAME | CHAR(32) | Name of the user
DATE | DATE | Start date of database session that holds the lock
TIME | TIME | Start time of database session that holds the lock
TERMID | CHAR(18) | Identification of the user
LASTWRITE | CHAR(10) | Elapsed time since the last SQL statement for data manipulation
LOCKMODE | CHAR(14) | Type of lock (NULL value | SHARE | EXCLUSIVE)
LOCKSTATE | CHAR(10) | Status of lock
APPLPROCESS | FIXED(10) | Identification of the process on the client hardware
APPLNODE | CHAR(64) | Identification of the client hardware
SCHEMANAME | CHAR(32) | Name of the table schema
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
TABLEID | CHAR(8) BYTE | Identification of the table
ROWIDLENGTH | FIXED(4) | Length of the key of the locked row
ROWIDHEX | CHAR(64) BYTE | Start (prefix) of the key of the locked row in hexadecimal notation
ROWID | CHAR(128) | Start (prefix) of the key of the locked row

More Information

LOCK_WAITS

Evaluating System Tables, LOCKS

Concepts of the Database System, Locks


VIEWCOLUMNS - SAP Documentation

Object documentation VIEWCOLUMNS

The system table DOMAIN.VIEWCOLUMNS contains all the columns of the view tables for which the current user has privileges.

Structure

VIEWCOLUMNS
SCHEMANAME | CHAR(32) | Name of the schema of the view table
OWNER | CHAR(32) | Name of the owner of the view table
VIEWNAME | CHAR(32) | Name of the view table
VIEWCOLUMNNAME | CHAR(32) | Name of the column of the view table
TABLESCHEMANAME | CHAR(32) | Name of the schema of the table to which the used column belongs
TABLEOWNER | CHAR(32) | Name of the owner of the table to which the used column belongs
TABLENAME | CHAR(32) | Name of the table to which the used column belongs
COLUMNNAME | CHAR(32) | Name that the column originally had in the table
CREATEDATE | DATE(10) | Creation date of the view table
CREATETIME | TIME(8) | Creation time of the view table

More Information

VIEWDEFS, VIEWS, VIEWTABLES

Evaluating System Tables, VIEWCOLUMNS

SQL Reference Manual, CREATE VIEW Statement (create_view_statement)


ROLES - SAP Documentation

Object documentation ROLES

The system table DOMAIN.ROLES describes the roles for which the current user has privileges.

Structure

ROLES
OWNER | CHAR(32) | Name of the owner of the role
ROLE | CHAR(32) | Name of the role
PASSWORD_REQUIRED | CHAR(3) | Password required for activating role (YES | NO)
GRANTED | CHAR(3) | Role was granted to current user (YES | NO)
DEFAULTROLE | CHAR(3) | Role is the default role for the current user (YES | NO)
CREATEDATE | DATE(10) | Creation date of the role
CREATETIME | TIME(8) | Creation time of the role

More Information

Evaluating System Tables, ROLES

SQL Reference Manual,, Role Name (role_name), Privileges: Overview


MAPCHARSETS - SAP Documentation

Object documentation MAPCHARSETS

The system table DOMAIN.MAPCHARSETS contains all the mapchar sets.

Structure

MAPCHARSETS
MAPCHARSETNAME | CHAR(32) | Name of the mapchar set
CODE | CHAR(8) | Code attribute for which the mapchar set was defined (ASCII | UNICODE)
INTERN | CHAR(2) BYTE | Original form in hexadecimal notation
MAP_CODE | CHAR(4) BYTE | Target form in hexadecimal notation
MAP_CHARACTER | CHAR(2) | Target form in plain text notation

More Information

Evaluating System Tables, MAPCHARSETS

SQL Reference Manual, Mapchar Set Name (mapchar_set_name)


ROLEPRIVILEGES - SAP Documentation

Object documentation ROLEPRIVILEGES

The system table DOMAIN.ROLEPRIVILEGES describes the privileges and roles that have been granted to roles for which the current user has privileges.

Structure

ROLEPRIVILEGES
SCHEMANAME | CHAR(32) | Name of the schema of the object that was granted to the role
OWNER | CHAR(32) | Name of the owner of the object that was granted to the role
TABLENAME | CHAR(32) | Name of the table for which privileges were granted to the role
ROLE | CHAR(32) | Name of the granted role
GRANTEE | CHAR(32) | Name of the role to which an assignment was made
PRIVILEGES | CHAR(30) | Granted privileges
GRANTOR | CHAR(32) | Name of the user who granted the privileges or role
CREATEDATE | DATE(10) | Date on which the privilege was granted
CREATETIME | TIME(8) | Time at which the privilege was granted

More Information

Evaluating System Tables, ROLEPRIVILEGES

SQL Reference Manual,, Role Name (role_name), Privileges: Overview


COMMANDCACHESTATISTICS - SAP Documentation

Object documentation COMMANDCACHESTATISTICS

The system table SYSINFO.COMMANDCACHESTATISTICS contains the statistical information collected about the command cache activities since the last time the database was started. The command cache contains the SQL statements and their execution plans shared by different database sessions (the following refers to the SQL statement and execution plan collectively as a command).

Structure

COMMANDCACHESTATISTICS
USABLESIZE | FIXED(10) | Size of the command cache (KB)
USEDSIZE | FIXED(10) | Size of the area of the command cache that is actually used (KB)
USEDSIZEPERCENTAGE | FIXED(3) | Size of the area of the command cache that is actually used (%)
MAXUSEDSIZE | FIXED(10) | Maximum used area of the command cache (KB)
MAXUSEDSIZEPERCENTAGE | FIXED(3) | Maximum used area of the command cache (%)
COMMANDCOUNT | FIXED(10) | Number of stored commands
MAXCOMMANDCOUNT | FIXED(10) | Maximum number of stored commands
INSERTCOMMANDCOUNT | FIXED(10) | Number of inserts
DELETECOMMANDCOUNT | FIXED(10) | Number of deletions
FAILEDALLOCATECOUNT | FIXED(10) | Number of memory requests not fulfilled
CLEANUPTHRESHOLD | FIXED(10) | Current threshold value, as of which the command cache will be reorganized for further usage
CLEANUPCOUNT | FIXED(10) | Number of operations that encountered a lack of space in the main memory
CLEANUPCOMMANDCOUNT | FIXED(10) | Number of commands modified due to lack of space in the main memory
INVALIDATECOUNT | FIXED(10) | Number of data definition statements that made execution plans invalid
CURRENTUNLOADSTATEMENTCOUNT | FIXED(10) | Number of SQL statements currently displaced to disk
UNLOADSTATEMENTCOUNT | FIXED(10) | Number of SQL statements displaced to disk
RELOADSTATEMENTCOUNT | FIXED(10) | Number of SQL statements reloaded to the main memory
DELETEPLANCOUNT | FIXED(10) | Number of execution plans deleted due to lack of space in the main memory
HASHTABLESLOTCOUNT | FIXED(5) | Number of slots in the hash table
USEDHASHTABLESLOTCOUNT | FIXED(5) | Number of used slots in the hash table
MAXUSEDHASHTABLESLOTCOUNT | FIXED(5) | Maximum number of used slots in the hash table
AVGHASHTABLECHAINENTRYCOUNT | FIXED(5) | Average length of the hash entry overflow chains
MAXHASHTABLECHAINENTRYCOUNT | FIXED(5) | Maximum length of the hash entry overflow chains

More Information

COMMANDCACHESTATISTICSRESET


COMMANDSTATISTICS - SAP Documentation

Object documentation COMMANDSTATISTICS

The system table SYSINFO.COMMANDSTATISTICS describes SQL statements that are stored in the command cache, and also contains statistical information on the activities of these SQL statements collected since the last time the database was started. The command cache contains the SQL statements and their execution plans shared by different database sessions.

Structure

COMMANDSTATISTICS
COMMANDID | CHAR(8) BYTE | Identification of the SQL statement
INTERNAL | CHAR(3) | SQL statement was generated implicitly (YES | NO)
HASHVALUE | FIXED(10) | Hash value
HASHTABLESLOT | FIXED(5) | Slot in the hash table
STATUS | CHAR(10) | Status (PREPARING | PREPARED | INVALID | NEW | DROPPED)
USERNAME | CHAR(32) | Name of the database user
SCHEMANAME | CHAR(32) | Current schema when execution plan was created
SQLMODE | CHAR(8) | SQL mode when execution plan was created
ISOLATIONLEVEL | FIXED(3) | Isolation level when execution plan was created
DATEFORMAT | CHAR(50) | Date and time format when execution plan was created
MASSCOMMAND | CHAR(3) | SQL statement can be used as an ARRAY command (YES | NO)
STATEMENTCODETYPE | CHAR(15) | Code attribute of the SQL statement (ASCII | UNICODE | UNICODE SWAP)
QUERYREWRITE | CHAR(3) | Indicates whether a query rewrite took place (YES | NO)
STATEMENTSIZE | FIXED(10) | Length of the SQL statement (bytes)
STATEMENT | CLOB | SQL statement
PLANSIZE | FIXED(10) | Memory requirements of the execution plan (bytes)
DBPROCEDURESCHEMANAME | CHAR(32) | Schema name of the calling database procedure
DBPROCEDURENAME | CHAR(32) | Name of the calling database procedure
APPLICATIONINFORMATION | CHAR(120) | Optional information given by the executing application
APPLICATIONLINENUMBER | FIXED(10) | Optional line number given by the executing application
PREPARECOUNT | FIXED(10) | Number of execution preparations
REFERENCECOUNT | FIXED(5) | Number of database sessions for which the SQL statement has been prepared for execution
CURRENTEXECUTECOUNT | FIXED(5) | Current number of executions
EXECUTECOUNT | FIXED(10) | Number of executions
PREPARETIME | FIXED(20) | Parse time (microseconds)
EXECUTETIME | FIXED(20) | Total duration of executions (microseconds)
AVGEXECUTETIME | FIXED(20) | Average execution time (microseconds)
MINEXECUTETIME | FIXED(20) | Minimum execution time (microseconds)
MAXEXECUTETIME | FIXED(20) | Maximum execution time (microseconds)
READROWCOUNT | FIXED(20) | Number of rows read
QUALIFIEDROWCOUNT | FIXED(20) | Number of qualified rows
VIRTUALREADCOUNT | FIXED(20) | Number of reads in the data cache
PHYSICALREADCOUNT | FIXED(20) | Number of reads in the data cache that triggered reads on the disk
FETCHROWCOUNT | FIXED(20) | Number of rows (in the result tables generated by the SQL statement) sent to the application
SUSPENDCOUNT | FIXED(20) | Number of suspends
WAITCOUNT | FIXED(20) | Number of waits caused by lock collisions
READAHEADREQUESTCOUNT | FIXED(20) | Number of read ahead requests
READAHEADIGNOREREQUESTCOUNT | FIXED(20) | Number of ignored read ahead requests
READAHEADPHYSICALREADPAGECOUNT | FIXED(20) | Number of pages read via read ahead

More Information

COMMANDSTATISTICSRESET


CATALOGCACHESTATISTICS - SAP Documentation

Object documentation CATALOGCACHESTATISTICS

The system table SYSINFO.CATALOGCACHESTATISTICS contains information about actions and the status of the catalog cache since the database system was started.

Structure

CATALOGCACHESTATISTICS
RELEASEMEMORYCOUNT | FIXED(20) | Number of objects removed from the catalog cache due to insufficient memory
ENTRYCOUNT | FIXED(10) | Number of objects currently in the catalog cache
MAXENTRYCOUNT | FIXED(10) | Maximum number of objects in the catalog cache at any time
ENTERLRU | FIXED(20) | Number of insertions into the LRU list
REMOVELRU | FIXED(20) | Number of deletions from the LRU list
DDLINVALIDATECOUNT | FIXED(10) | Number of objects marked as invalid because a DDL statement leads to inconsistencies
TIMEOUTINVALIDATECOUNT | FIXED(10) | Number of objects marked as invalid due to a timeout
LRUENTRYCOUNT | FIXED(10) | Number of entries currently stored in the LRU list
INVALIDHANDLECOUNT | FIXED(10) | Number of objects marked as invalid currently in the catalog cache

More Information

Glossary, Catalog Cache


COLUMNS - SAP Documentation

Object documentation COLUMNS

The system table DOMAIN.COLUMNS contains the columns of all the tables, view tables, results tables, and synonyms for which the current user has privileges.

Structure

COLUMNS
SCHEMANAME | CHAR(32) | Name of the schema of the database object
OWNER | CHAR(32) | Name of the owner of the database object
TABLENAME | CHAR(32) | Name of the database object
COLUMNNAME | CHAR(32) | Name of the column
MODE | CHAR(3) | Type of column (KEY | MAN | OPT)
DATATYPE | CHAR(10) | Data type of column (BOOLEAN | CHAR | DATE | FIXED | FLOAT | INTEGER | CLOB | BLOB | SMALLINT | TIME | TIMESTAMP)
CODETYPE | CHAR(8) | Code attribute of column (ASCII | BYTE | UNICODE)
LEN | FIXED(4) | Length or precision of the column
DEC | FIXED(3) | Number of decimal places in the columns of data type FIXED
NULLABLE | CHAR(3) | Column can accept NULL value (YES | NO)
COLUMNPRIVILEGES | CHAR(8) | Privileges of the current user for the column
DEFAULT | CHAR(254) | DEFAULT value for the column
DEFAULTFUNCTION | CHAR(12) | Name, if the DEFAULT value is one of the following value specifications: NULL | USER | USERGROUP | SYSDBA | UID | DATE | TIME | TIMESTAMP | UTCDATE | TIMEZONE | UTCDIFF | TRUE | FALSE | TRANSACTION Otherwise NULL value
DOMAINOWNER | CHAR(32) | Name of the domain owner used for column definition
DOMAINNAME | CHAR(32) | Name of the domain used for column definition
POS | FIXED(4) | Original position of the column in the table
KEYPOS | FIXED(4) | Original position of the key column in the table
PHYSICALPOS | FIXED(4) | Position of column on disk
CREATEDATE | DATE | Creation date of the column
CREATETIME | TIME | Creation time of the column
ALTERDATE | DATE | Alter date of the column
ALTERTIME | TIME | Alter time of the column
TABLETYPE | CHAR(8) | Type of table (TABLE | VIEW | SYNONYM | RESULT | SYSTEM)
COMMENT | CLOB | Comment on the column

More Information

Evaluating System Tables, COLUMNS

SQL Reference Manual, Data Type (data_type)


SEQUENCES - SAP Documentation

Object documentation SEQUENCES

The system table DOMAIN.SEQUENCES contains all the sequences for which the current user has privileges.

Structure

SEQUENCES
SCHEMANAME | CHAR(32) | Name of the schema of the sequence
OWNER | CHAR(32) | Name of the owner of the sequence
SEQUENCE_NAME | CHAR(32) | Name of the sequence
MIN_VALUE | FIXED(38) | Minimum value of the sequence
MAX_VALUE | FIXED(38) | Maximum value of the sequence
INCREMENT_BY | FIXED(38) | Value by which the sequence is increased
CYCLE_FLAG | CHAR(1) | Specifies whether the sequence starts again from the minimum value after the maximum value is reached (N | Y)
ORDER_FLAG | CHAR(1) | Specifies whether the sequence values are allocated in the order of the request (Y | N)
CACHE_SIZE | FIXED(38) | Number of sequence values that are loaded to the cache simultaneously
LAST_NUMBER | FIXED(38) | Last sequence value stored
CREATEDATE | DATE | Creation date of the sequence
CREATETIME | TIME | Creation time of the sequence
COMMENT | CLOB | Comment on the sequence

More Information

Evaluating System Tables, SEQUENCES

SQL Reference Manual, Sequence Name (sequence_name)


TABLEPRIVILEGES - SAP Documentation

Object documentation TABLEPRIVILEGES

The system table DOMAIN.TABLEPRIVILEGES describes the privileges that the current user has for tables.

Structure

TABLEPRIVILEGES
SCHEMANAME | CHAR(32) | Name of the schema of the table
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
GRANTOR | CHAR(32) | Name of the user who granted the privileges
GRANTEE | CHAR(32) | Name of the user or role to which an assignment was made
PRIVILEGE | CHAR(30) | Granted privileges
IS_GRANTABLE | CHAR(3) | Privilege to grant the received privilege to another user/role (YES | NO)

More Information

Evaluating System Tables, TABLEPRIVILEGES

SQL Reference Manual, Privileges: Overview


SESSION_ROLES - SAP Documentation

Object documentation SESSION_ROLES

The system table DOMAIN.SESSION_ROLES contains the roles that are active in the current database session.

Structure

SESSION_ROLES

ROLE

CHAR(32)

Name of the role

More Information

Evaluating System Tables, SESSION_ROLES

SQL Reference Manual,, Role Name (role_name),


TABLES - SAP Documentation

Object documentation TABLES

The system table DOMAIN.TABLES contains information from all the tables (base tables, view tables, synonyms and results tables) for which the current user has privileges.

Structure

TABLES
SCHEMANAME | CHAR(32) | Name of the schema of the table
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
PRIVILEGES | CHAR(30) | Privileges of the current user for the table
TYPE | CHAR(8) | Type of table (SYNONYM | SYSTEM | TABLE)
TABLETYPE | CHAR(8) | Type of table (TABLE | VIEW | SYNONYM | RESULT)
CREATEDATE | DATE | Creation date of the table
CREATETIME | TIME | Creation time of the table
UPDSTATDATE | DATE | Date of the last UPDATE STATISTICS statement executed for the table
UPDSTATTIME | TIME | Time of the last UPDATE STATISTICS statement executed for the table
ALTERDATE | DATE | Change date of the table
ALTERTIME | TIME | Change time of the table
UNLOADED | CHAR(3) | Table is unloaded (YES | NO)
SAMPLE_PERCENT | FIXED(3) | Percentage of table contents to be read for updating statistics
SAMPLE_ROWS | FIXED(10) | Number of rows in table to be read for updating statistics
COMMENT | CLOB | Comment on the table
TABLEID | CHAR(8) BYTE | Identification of the table in hexadecimal notation
DYNAMIC | CHAR(3) | Table was defined with DYNAMIC option (YES | NO)
ARCHIVE | CHAR(3) | Table was defined with FOR ARCHIVE option (YES | NO)
VARIABLE_COLUMNS | CHAR(3) | Columns are stored with variable length (YES | NO)
VIRTUALKEY | CHAR(3) | Table was defined with the CLUSTER option (YES | NO)
CLUSTERCOSTSAVINGPERCENTAGE | FIXED(3) | Percentage of I/O savings because of CLUSTER option
DATASOURCEID | CHAR(8) | datasource identification for the external table

If the TABLES system table is called by the database system administrator, information from all database users’ tables is displayed.

More Information

Evaluating System Tables, TABLES

SQL Reference Manual, Table Name (table_name)


SYNONYMS - SAP Documentation

Object documentation SYNONYMS

The system table DOMAIN.SYNONYMS contains all the synonyms for which the current user has privileges.

Structure

SYNONYMS
OWNER | CHAR(32) | Name of the owner of the synonym
SYNONYMNAME | CHAR(32) | Name of the synonym
PUBLIC | CHAR(3) | Synonym is PUBLIC (YES | NO)
TABLESCHEMANAME | CHAR(32) | Name of the schema of the table
TABLEOWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table
CREATEDATE | DATE | Creation date of the synonym
CREATETIME | TIME | Creation time of the synonym
COMMENT | CLOB | Comment on the synonym

More Information

Evaluating System Tables, SYNONYMS

SQL Reference Manual, Synonym Name (synonym_name)


DBPROCEDURES - SAP Documentation

Object documentation DBPROCEDURES

The system table DOMAIN.DBPROCEDURES contains all the database procedures for which the current user has privileges.

Structure

DBPROCEDURES
SCHEMANAME | CHAR(32) | Name of the schema of the database procedure
DBPROCNAME | CHAR(32) | Name of the database procedure
OWNER | CHAR(32) | Name of the owner of the database procedure
PACKAGE | CHAR(32) | Package containing the database procedure
DBPROCID | CHAR(8) | ID of the database procedure in hexadecimal format
PARAMETER | FIXED(4) | Number of parameters for the database procedure
CREATEDATE | DATE | Creation date of the database procedure
CREATETIME | TIME | Creation time of the database procedure
EXECUTION_KIND | CHAR(10) | Execution location of database procedure (INPROC | LOCAL)
LANGUAGE | CHAR(32) | Implementation language of database procedure (SPL | C++ | JAVA | ...)
SQL_SUPPORT | CHAR(3) | Database procedure may contain SQL statements (YES | NO)
CURSOR_SUPPORT | CHAR(3) | The database system returns a cursor (YES | NO)
WAIT_FOR_CHCKPT | CHAR(3) | NULL
REMOTE_LOCATION | CHAR(132) | NULL
DEFINITION | CLOB | SQL statement for defining the database procedure
COMMENT | CLOB | Comment on the database procedure

More Information

Evaluating System Tables, DBPROCEDURES

SQL Reference Manual, Name of a Database Procedure (dbproc_name)

Database Administration in CCMS, DB Procedures


CONSTRAINTS - SAP Documentation

Object documentation CONSTRAINTS

The system table DOMAIN.CONSTRAINTS contains the CONSTRAINT definitions for all the tables for which the current user has privileges.

Structure

CONSTRAINTS
SCHEMANAME | CHAR(32) | Name of the schema of the table
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of table with the CONSTRAINT definition
CONSTRAINTNAME | CHAR(32) | Name of the CONSTRAINT definition
CONSTRAINTTYPE | CHAR(12) | Type of the CONSTRAINT definition (CHECK | KEY)
DEFINITION | CLOB | Text of the CONSTRAINT definition

More Information

Evaluating System Tables, CONSTRAINTS

SQL Reference Manual, CONSTRAINT Definition (constraint_definition)


VIEWS - SAP Documentation

Object documentation VIEWS

The system table DOMAIN.VIEWS contains all the view tables for which the current user has privileges.

Structure

VIEWS
SCHEMANAME | CHAR(32) | Name of the schema of the view table
OWNER | CHAR(32) | Name of the owner of the view table
VIEWNAME | CHAR(32) | Name of the view table
PRIVILEGES | CHAR(30) | Privileges of the user for the view table
TYPE | CHAR(8) | Type of table
CREATEDATE | DATE | Creation date of the view table
CREATETIME | TIME | Creation time of the view table
UPDSTATDATE | DATE | Date of the last UPDATE STATISTICS statement executed for the view table
UPDSTATTIME | TIME | Time of the last UPDATE STATISTICS statement executed for the view table
ALTERDATE | DATE | Date on which the view table was changed
ALTERTIME | TIME | Time at which the view table was changed
UNLOADED | CHAR(3) | View table is unloaded (YES | NO)
WITHCHECKOPTION | CHAR(3) | Indicates whether the view table was created WITH CHECK OPTION or not (YES | NO)
COMPLEX | CHAR(3) | Indicates whether the view table is a complex view table or not (YES | NO)
COMMENT | CLOB | Comment on the view table

More Information

VIEWDEFS, VIEWCOLUMNS, VIEWTABLES

Evaluating System Tables, VIEWS

SQL Reference Manual, CREATE VIEW Statement (create_view_statement)


PACKAGES - SAP Documentation

Object documentation PACKAGES

The system table DOMAIN.PACKAGES describes all the packages for which the current user has privileges.

Structure

PACKAGES
OWNER | CHAR(32) | Name of the owner of the package
PACKAGE | CHAR(32) | Name of the package
CREATEDATE | DATE | Creation date of the package
CREATETIME | TIME | Creation time of the package
EXECUTION_KIND | CHAR(10) | Execution location of database procedure (INPROC | LOCAL)
SQL_SUPPORT | CHAR(3) | Database procedure may contain SQL statements (YES | NO)
REMOTE_LOCATION | CHAR(132) | Execution location
FILE | CHAR(256) | File name of the library that contains the implementation of this package
COMMENT | CLOB | Comment for the package


TRIGGERS - SAP Documentation

Object documentation TRIGGERS

The system table DOMAIN.TRIGGERS contains all the triggers for which the current user has privileges.

Structure

TRIGGERS
SCHEMANAME | CHAR(32) | Name of the table schema
OWNER | CHAR(32) | Name of the owner of the table
TABLENAME | CHAR(32) | Name of the table for which the trigger was defined
TRIGGERNAME | CHAR(32) | Name of the trigger
INSERT | CHAR(3) | Trigger is executed after an INSERT statement (YES | NO)
UPDATE | CHAR(3) | Trigger is executed after an UPDATE statement (YES | NO)
DELETE | CHAR(3) | Trigger is executed after an DELETE statement (YES | NO)
CREATEDATE | DATE | Creation date of the trigger
CREATETIME | TIME | Creation time of the trigger
DEFINITION | CLOB | Trigger definition text
COMMENT | CLOB | Comments on the trigger

More Information

Evaluating System Tables, TRIGGERS

SQL Reference Manual, Trigger Name (trigger_name)


SCHEMAS - SAP Documentation

Object documentation SCHEMAS

The system table DOMAIN.SCHEMAS describes the schemas known to the database.

Structure

SCHEMAS
OWNER | CHAR(32) | Name of the owner of the schema
SCHEMANAME | CHAR(32) | Name of the schema
SCHEMAHANDLE | FIXED(10) | ID of the schema
CREATEDATE | DATE | Creation data of the schema
CREATETIME | TIME | Creation time of the schema
COMMENT | CLOB | Comments on the schema

More Information

SQL Reference Manual, Schema Name (schema_name),

Database Administration in CCMS, Schemas


LOCK_WAITS - SAP Documentation

Object documentation LOCK_WAITS

The system table DOMAIN.LOCK_WAITS describes the lock requests.

Structure

LOCK_WAITS
TABLENAME | CHAR(32) | Name of the table
TABLEID | CHAR(8) BYTE | Identification of the table
H_TERMID | CHAR(18) | Identification of user terminal that holds the lock
H_PROCESS | FIXED(10) | Identification of user process that holds the lock
H_APPLPROCESS | FIXED(10) | Identification of process on the client hardware that holds the lock
H_APPLNODE | CHAR(64) | Identification of client hardware on which the application process runs that holds the lock
H_ROWIDHEX | CHAR(64) BYTE | Start (prefix) of the key of the locked row in hexadecimal notation
H_ROWID | CHAR(128) | Start (prefix) of the key of the locked row
H_LOCKMODE | CHAR(14) | Type of lock (NULL value | SHARE | EXCLUSIVE)
H_DATE | DATE | Start date of database session that holds the lock
H_TIME | TIME | Start time of database session that holds the lock
H_LOCKTIMEOUT | CHAR(10) | Always receives NULL value
R_TERMID | CHAR(18) | Identification of user terminal that requests the lock
R_PROCESS | FIXED(10) | Identification of user process that requests the lock
R_APPLPROCESS | FIXED(10) | Identification of process on the client hardware that requests the lock
R_APPLNODE | CHAR(64) | Identification of client hardware on which the application process runs that requests the lock
R_ROWIDHEX | CHAR(64) BYTE | Start (prefix) of the key of the requested row in hexadecimal notation
R_ROWID | CHAR(128) | Start (prefix) of the key of the requested row
R_REQMODE | CHAR(14) | Type of lock request (NULL value | SHARE | EXCLUSIVE)
R_DATE | DATE | Start date of database session that requests the lock
R_TIME | TIME | Start time of database session that requests the lock
R_REQTIMEOUT | CHAR(10) | Time remaining until request timeout has expired

More Information

LOCKS

Concepts of the Database System, Locks


SYSTEMTRIGGERS - SAP Documentation

Object documentation SYSTEMTRIGGERS

The system table DOMAIN.SYSTEMTRIGGERS contains all system triggers that the current user has created.

Structure

SYSTEMTRIGGERS
SCHEMANAME | CHAR(32) | Name of the schema of the system trigger
TRIGGERNAME | CHAR(32) | Name of the system trigger
OWNER | CHAR(32) | Name of the owner of the system trigger
CREATEDATE | DATE | Creation date of the system trigger
CREATETIME | TIME | Creation time of the system trigger
DEFINITION | CLOB | SQL statement for creating the system trigger
COMMENT | CLOB | Comment for the system trigger

More Information

SQL Reference Manual, CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement)


CONSTRAINTCOLUMNS - SAP Documentation

Object documentation CONSTRAINTCOLUMNS

The system table DOMAIN.CONSTRAINTCOLUMNS contains the columns that are specified in the CONSTRAINT definitions for all the tables for which the current database user has privileges.

Structure

CONSTRAINTCOLUMNS
SCHEMANAME | CHAR(32) | Name of the schema
OWNER | CHAR(32) | Name of the owner
TABLENAME | CHAR(32) | Name of table with the CONSTRAINT definition
CONSTRAINTNAME | CHAR(32) | Name of the CONSTRAINT definition
CONSTRAINTTYPE | CHAR(12) | Type of CONSTRAINT definition (CHECK | FOREIGN KEY | KEY | UNIQUE_CONST)
COLUMNNAME | CHAR(32) | Name of the column
COLUMNNO | FIXED(4) | Number of the column within the table or constraint

More Information

SQL Reference Manual, CONSTRAINT Definition (constraint_definition)


VIEWTABLES - SAP Documentation

Object documentation VIEWTABLES

The system table DOMAIN.VIEWTABLES contains the names of the underlying tables for all view tables for which the current user has privileges.

Structure

VIEWTABLES
SCHEMANAME | CHAR(32) | Name of the schema of the view table
OWNER | CHAR(32) | Name of the owner of the view table
VIEWNAME | CHAR(32) | Name of the view table
TABLESCHEMANAME | CHAR(32) | Name of the schema of the table
TABLENAME | CHAR(32) | Name of the table

More Information

VIEWDEFS, VIEWCOLUMNS, VIEWS

SQL Reference Manual, CREATE VIEW Statement (create_view_statement)


SEQUENCEPRIVILEGES - SAP Documentation

Object documentation SEQUENCEPRIVILEGES

The system table DOMAIN.SEQUENCEPRIVILEGES describes the privileges that the current user has for sequences or privileges that he has granted for sequences.

Structure

SEQUENCEPRIVILEGES
SCHEMANAME | CHAR(32) | Name of the schema of the sequence
OWNER | CHAR(32) | Name of the owner of the sequence
SEQUENCENAME | CHAR(32) | Name of the sequence
GRANTOR | CHAR(32) | Name of the user who granted the privileges
GRANTEE | CHAR(32) | Name of the user or role to which the privilege was granted
PRIVILEGE | CHAR(30) | Granted privileges
IS_GRANTABLE | CHAR(3) | Privilege to grant the received privilege to another user/role (YES | NO)

More Information

SQL Reference Manual, Sequence Name (sequence_name),Privileges: Overview


SCHEMAPRIVILEGES - SAP Documentation

Object documentation SCHEMAPRIVILEGES

The system table DOMAIN.SCHEMAPRIVILEGES describes the privileges that the current user has for schemas.

Structure

SCHEMAPRIVILEGES
SCHEMANAME | CHAR(32) | Name of the schema
GRANTEE | CHAR(32) | Name of the user or role to which the privilege was granted
GRANTOR | CHAR(32) | Name of the user who granted the privileges
CREATEIN | CHAR(3) | Privilege of creating objects in this schema (CREATEIN) was granted (YES | NO)
DROPIN | CHAR(3) | Privilege of deleting objects in this schema (DROPIN) was granted (YES | NO)
ALTERIN | CHAR(3) | Privilege of changing objects in this schema (ALTERIN) was granted (YES | NO)
GRANTOPTION | CHAR(3) | Privilege of transferring granted privileges to other users or roles (GRANTOPTION) was granted (YES | NO)
GRANTDATE | DATE | Date on which the privilege was granted
GRANTTIME | TIME | Time at which the privilege was granted

More Information

SQL Reference Manual, Schema Name (schema_name), Privileges: Overview


FUNCTIONS - SAP Documentation

Object documentation FUNCTIONS

The system table DOMAIN.FUNCTIONS contains all the database functions for which the current user has privileges.

Structure

FUNCTIONS
SCHEMANAME | CHAR(32) | Name of the schema of the database function
FUNCTIONNAME | CHAR(32) | Name of the database function
OWNER | CHAR(32) | Name of the owner of the database function
FUNCTIONID | CHAR(8) | ID of the database function in hexadecimal format
PARAMETER | FIXED(4) | Number of parameters for the database function
CREATEDATE | DATE | Creation data of the database function
CREATETIME | TIME | Creation time of the database function
EXECUTION_KIND | CHAR(10) | Execution location of database function (INPROC | LOCAL)
SQL_SUPPORT | CHAR(3) | Database function may contain SQL statements (YES | NO)
DETERMINISTIC | CHAR(3) | Database function can be deterministic (YES | NO)
DEFINITION | CLOB | SQL statement for defining the database function
COMMENT | CLOB | Comment on the database function

More Information

Evaluating System Tables, FUNCTIONS

SQL Reference Manual, Name of a Database Function (dbfunction_name)


<sdba_group> (Special Operating System Group) - SAP Documentation

Background documentation <sdba_group> (Special Operating System Group)

On Unix and Linux, the database system uses the special operating system group <sdba_group>. The system default for the name of <sdba_group> is sdba.

The following database resources have the operating system group ID (GID) of <sdba_group>:

  • Files and directories of the database software (for example, the user profile container)

  • Database processes and global listener/X server processes

    For more information, see Concepts of the Database System, Processes.

  • Volumes, if there is no support group for the database

  • Backups

Operating system users who perform administration tasks for the database system belong to the <sdba_group> operating system group. These operating system users can perform the following actions, among others:

  • Creating new databases

  • Accessing the directories <global_data_path>/wrk and <private_data_path> and their subdirectories

  • Accessing the XCONS database tool

  • Accessing volumes, if there is no support group for the database

<sdba_group> is also the primary group for the special operating system user <sdb_user>.


exec_sdbinfo - SAP Documentation

Background documentation exec_sdbinfo

This DBM command is used only by SAP applications.

There is no documentation for this at present.


explain - SAP Documentation

Background documentation explain

You can use this DBM command to display the explanatory text of a number of DBM commands.

By specifying options, you can change the display of this list.

Prerequisites

You do not need to log on to Database Manager to execute this DBM command.

Structure

explain <dbm_command> <display_spec>

<display_spec> :: = <command_option> [-nolinewrap | -longinfo]

Options
Option | Description
<dbm_command> | DBM command
<command_option> | Command option for the DBM command whose text you want to display
-nolinewrap | Suppresses line breaks in the output
-longinfo | Only relevant for programming DBM client programs: Displays a long text explaining the allowed values

Result

OK

<explain_text>

Values for the Reply Fields
Value | Description
<explain_text> | Explanatory text

Example

Call Database Manager CLI, display the complete explanatory text for the DBM command auto_extend:

>dbmcli explain auto_extend

OK

With this command, the database instance can be configured to automatically

create new data volumes, when the degree of filling reaches a certain limit.

Size and location of the new data volume are determined as explained in

DBMServer command db_addvolume.

Preconditions:

You have the server authorization ParamFull or AccessUtility.

Syntax:

auto_extend <mode> [<percentage>]

Options:

<mode>

New mode for the database. Possible values are:

ON activate automatic database extension

OFF deactivate automatic database extension

SHOW show current status of automatic database extension

<percentage>

Limit of degree of filling of the database instance, at which a new

data volume should be added. 1 <= <percentage> <= 100 must be true.

Default is 90. Use only with <mode> ON.

Reply:

OK

[ON <percentage>|OFF[, <reason>]|UNKNOWN]

Meaning of the individual fields of the reply:

ON

Automatic database extension is activated (only if <mode> is SHOW).

<percentage> is the actual degree of filling of the database

instance, at which a new data volume is added in the current

configuration.

OFF

Automatic database extension is deactivated (only if <mode> is

SHOW)

UNKNOWN

Status of automatic database extension is unknown (only if <mode>

is SHOW)

Call Database Manager CLI, display the explanatory text for the command option percentage for the DBM command auto_extend:

>dbmcli explain auto_extend percentage

OK

Limit of degree of filling of the database instance, at which a new data volume should be added. 1 <= <percentage> <= 100 must be true. Default is 90. Use only with <mode> ON.

More Information

DBM Commands


help - SAP Documentation

Background documentation help

With this command you can display a list of all DBM commands. By specifying options, you can limit the list displayed.

Information is displayed on the required syntax, the optional and/or required DBM options, and whether a database or service session is required for executing the command.

For obsolete commands, references to the new names of the commands are given.

Reply lines with more than 80 characters are split.

Prerequisites

You do not need to log on to Database Manager to execute this DBM command.

Structure

help [<option>]

<option>::= <string> | <fuzzy_option> | <obsolete_option>

<fuzzy_option>:: = -k <string>

<obsolete_option>:: = -obsolete [<string>]

Options
Option | Description
<string> | Character string Only the current DBM commands that start with the specified character string are displayed.
-k <string> | Error-tolerant search for a character string in the DBM command
-obsolete [<string>] | Only obsolete DBM commands are displayed The system also displays the current name for each of these commands. If you specify a character string, the display is limited to those obsolete DBM commands that contain this character string. If you do not specify a character string, all obsolete DBM commands are displayed.

Result

OK

<dbm_command> <description>

<dbm_command> <description>

...

Values for the Reply Fields
Value | Description
<dbm_command> | DBM command
<description> | Description of the DBM command, the possible options, and their use For obsolete DBM commands, the currently valid command is displayed

Example

Call Database Manager CLI, display all valid DBM commands:

>dbmcli help

OK

apropos <command_name_part>

archive_stage <medium> <stage> [verify|noverify] [remove|keep]

[FileNumberList <list>]

archive_stage_repeat <medium> [verify|noverify] [remove|keep]

auto_extend <mode> [<percentage>]

autolog_cancel

autolog_off

autolog_on [<medium>]

autolog_show

autorecover [LOG] [UNTIL <date> <time>] [ ( KEY <key> LABEL

<label> ) | ( IBID <internal_backup_ID> ) ]

auto_update_statistics <mode>

backup_cancel (needs backup session)

backup_ext_ids_forget

...

...

Call the Database Manager CLI, display all the DBM commands that contain the character string shm:

>dbmcli help –k shm

OK

dbm_shm_info

dbm_shm_reset

dbm_shm_unlock

Call Database Manager CLI, display all obsolete DBM commands that contain the character string recover:

>dbmcli help –obsolete recover

OK

recover_devspace (obsolete version of recover_volume)


Database Manager Help - SAP Documentation

Syntax documentation Database Manager Help

Standard Commands
DBM Command | Description
apropos | Searching for a DBM command
explain | Displaying the help text for a DBM command
help | Displaying a list of DBM commands

Other Commands for Database Manager Help


get_default - SAP Documentation

Background documentation get_default

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


info_next - SAP Documentation

Background documentation info_next

If you have executed the info command for displaying the status information of the database and the keyword CONTINUE in the reply indicates that more results data is available, you can use the info_next command to display this additional data.

Prerequisites

  • You have the DBInfoRead server permission.

  • You have opened a database session (see: db_connect).

  • You have executed the DBM command for displaying the status information of the database (see info).

Structure

info_next

Result

OK

END|CONTINUE

<description_record>

<info_record>

<info_record>

Values for the Reply Fields
Value | Description
END | The complete result set was output.
Continue | More results data is available.
<description_record> | Name of the fields of the subsequent information lines
<info_record> | Information


inst_unreg - SAP Documentation

Background documentation inst_unreg

Note Note

This DBM command is normally executed by the system. Only use this command if you are instructed to do so by technical support.

End of the note.

Use this command to delete the version entry and the path information for the version–dependent server software from the list of registered versions of the database software.

Afterwards, the database software does not fully function any more.

Prerequisites

  • You have called Database Manager CLI with the option -R.

  • You are logged on to the operating system (see user_system).

You do not need to log on to Database Manager to execute this DBM command.

You do not require any server permission.

Structure

inst_unreg <installation_path>

Options
Option | Description
<installation_path> | Installation path of the database version-dependent server software

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, use the -R option to specify the installation path, and unregister this software version:

>dbmcli -R C:\Program Files\sdb\7500 inst_unreg


hss_enable - SAP Documentation

Background documentation hss_enable

Use this command to define a database as the master database of a hot standby system.

Prerequisites

  • The database is on that computer to which you assigned the virtual server name using the cluster software.

  • The database is in the OFFLINE operational state.

  • You have connected to the database on the virtual server.

  • You have the server permission ParamFull.

Structure

hss_enable lib=<hs_storage_dll> node=<virtual_server_name>

Options
Option | Description
<hs_storage_dll> | Name of the library required for controlling the memory management system
<virtual_server_name> | Name of the virtual server

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on the virtual server HOTEL_VIRTUAL, define the master database by specifying the library libhsscopy for triggering the memory management system:

>dbmcli –u OLEG,MONDAY –d DEMODB –n HOTEL_VIRTUAL hss_enable lib=libhsscopy node=HOTEL_VIRTUAL

OK

More Information

Database Administration, Hot Standby


hss_copyfile - SAP Documentation

Background documentation hss_copyfile

By copying the database files, you can duplicate the configuration files of the master database to all standby databases of a hot standby system after having changed the database configuration.

To copy database files from one database to another within a cluster system, always use the DBM command hss_execute.

However, for support purposes it is possible to copy a database file to another database using the DBM command hss_copyfile, irrespective of whether the source database or the target database currently acts as the master or standby database. You need not even determine, which database is currently the master database.

Prerequisites

  • You are connected to the cluster system.

  • You have the server permission InstallMgm.

Structure

hss_copyfile node=<source_component> name=<file_ID>

Options
Option | Description
<source_component> | Computer, on which the file to be copied is located
<file_ID> | File ID of the file to be copied (see: Database Administration, Configuration Files or Log Files)

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on the virtual server HOTEL_VIRTUAL, and copy the backup history with the file ID BACKHIST from the computer PARMA to the virtual server, which forwards it to the target database GENUA:

>dbmcli -u OLEG,MONDAY -d DEMODB -n HOTEL_VIRTUAL hss_execute GENUA hss_copyfile node=PARMA name=BACKHIST

OK

More Information

Database Administration, Hot Standby


hss_addstandby - SAP Documentation

Background documentation hss_addstandby

Use this command to add a standby database to a hot standby system.

Prerequisites

  • You are connected to the database of the hot standby system on the virtual server.

  • The standby database do be created does not exist yet.

  • You have the server permission ParamFull.

Structure

hss_addstandby <hs_node> login=<os_user>,<os_user_password> [path=<installation_path>] [delay=<hs_delay_time>]

Options
Option | Description
<hs_node> | Computer name or IP address of the standby database
<os_user> | Operating system user on the standby computer, requires administration rights for the computer.
<os_user_password> | Password of the operating system user
<installation_path> | Installation path of the database version-dependent server software on the standby computer If you do not specify a path, the system uses the database software version of the master database.
<hs_delay_time> | Time delay (in seconds) with which the standby database is to be updated

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on to the database DEMODB on the HOTEL_VIRTUAL virtual server as the operator OLEG with the password MONDAY, log on to the computer PARMA as the operating system user ANNA with the password MAY, and add the database on the computer PARMA as a standby database:

>dbmcli –u OLEG,MONDAY –d DEMODB –n HOTEL_VIRTUAL hss_addstandby PARMA login=ANNA,MAY

OK

More Information

Database Administration, Hot Standby


hss_execute - SAP Documentation

Background documentation hss_execute

Use this command to send a DBM command directly to a standby database.

Do not use this DBM command for change operations, but only to retrieve information about the standby database.

A modifying DBM commands must be sent to the cluster and not to an individual standby database. The cluster software forwards the DBM command to the master database. The master database executes these DBM commands and synchronizes the standby databases if necessary.

Prerequisites

  • You have the server permissions required for the DBM command to be sent.

  • You are connected to the database of the hot standby system on the virtual server.

Structure

hss_execute <hs_node> <dbm_command>

Options
Option | Description
<hs_node> | Computer name or IP address of the standby database
<dbm_command> | DBM Command

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on the virtual server HOTEL_VIRTUAL, display the operational state of the standby database on the computer PARMA:

>dbmcli -u OLEG,MONDAY –d DEMODB –n HOTEL_VIRTUAL hss_execute PARMA db_state

OK

State

ONLINE

More Information

Database Administration, Hot Standby


inst_enum - SAP Documentation

Background documentation inst_enum

With this command you can display the list of the registered versions of the database software on the database computer.

Prerequisites

You do not need to log on to Database Manager to execute this DBM command.

You do not require a server permission either.

Structure

inst_enum [<option>]

<option> :: = [ID] [<definition>]

<definition> :: = SYSTEM | ALL

Options
Option | Description
ALL | Display all installations
SYSTEM | Display only system-internal installations of the database software
ID | Display the installation IDs

Result

OK

<version>[<identifier>]<installation_path>

<version>[<identifier>]<installation_path>

...

Values for the Reply Fields
Value | Description
<version> | Registered version of the database software
<identifier> | ID of the installed base If you did not assign an ID when you installed the software, you will see the installation path of the server software dependent on the database version instead.
<installation_path> | Installation path of the database version-dependent server software

Example

Call Database Manager CLI, display the list of all registered versions of the database software:

>dbmcli inst_enum ALL

OK

7.7.06.01 C:\Program Files\sdb\DEMODB

7.6.03.15 C:\Program Files\sdb\7603

7.7.03.17 C:\Program Files\sdb\programs\DatabaseStudio\utilities

More Information

Glossary, Version

Glossary, Directory


inst_reg - SAP Documentation

Background documentation inst_reg

Note Note

This DBM command is normally executed by the system. Only use this command if you are instructed to do so by technical support.

End of the note.

This DBM command causes the system to enter the version of the database software in the registry during the installation of the database software. This is necessary for the software to function correctly.

Prerequisites

  • You are logged on to the operating system (see user_system).

  • You have called Database Manager of the software version that you want to re-register (see Option -R).

You do not need to log on to Database Manager to execute this DBM command.

You do not require a server permission either.

Structure

inst_reg [SYSTEM]

Options
Option | Description
SYSTEM | Registering an installation, which is only used by the system (invisible to the user)

Result

OK

In the event of errors, see Reply Format.


inst_info - SAP Documentation

Background documentation inst_info

This DBM command is used only by SAP applications.

There is no documentation for this at present.


hss_removestandby - SAP Documentation

Background documentation hss_removestandby

You delete a standby database from a hot standby system.

All files for this database are deleted.

Prerequisites

  • You are connected to the database of the hot standby system on the virtual server.

  • You have the server permission ParamFull.

Structure

hss_removestandby <hs_node>

Options
Option | Description
<hs_node> | Computer name or IP address of the standby database

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on the virtual server HOTEL_VIRTUAL, delete the standby database on the computer PARMA:

>dbmcli -u OLEG,MONDAY -d DEMODB –n HOTEL_VIRTUAL hss_removestandby PARMA

OK

More Information

Database Administration, Hot Standby


hss_getnodes - SAP Documentation

Background documentation hss_getnodes

Use this command to display the hot standby database parameters of the hot standby system.

Prerequisites

  • You have the server permission ParamRead,

    ParamCheckWrite or ParamFull.

  • You are connected to the database of the hot standby system on the virtual server.

Structure

hss_getnodes

Result

OK

HostStandbyStorageDLLPath <file_name>

OfficialNodeName <virtual_server_name>

HotsStandbyDelayTime? <delay_time>

HotStandbySyncInterval <sync_interval>

HotStandbyNodeName001 <master_database_computer>

HotStandbyNodeName002 <standby_database_computer>_<001>

HotStandbyNodeName003 <standby_database_computer>_<002>

...

Values for the Reply Fields
Value | Description
<file_name> | Name of the library used to access the memory management system
<virtual_server_name> | Name of the virtual server
<delay_time> | Delay (in s) until the changes made in the master database are copied to the standby database nnn.
<sync_interval> | Minimum time span (in s) between two commands copied by the master database to synchronize the standby databases
<master_database_computer> | Computer of the master database
<standby_database_computer> | Computer of the standby database
<nnn> | Sequential number of the standby database (nnn > 1)

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB on virtual server HOTEL_VIRTUAL, display all hot standby parameters of the hot standby system:

>dbmcli -u OLEG,MONDAY -d DEMODB –n HOTEL_VIRTUAL hss_getnodes

OK

HostStandbyStorageDLLPath libhsscopy

OfficialNodeName HOTEL_VIRTUAL

HotStandbyNodeName001 GENUA

HotStandbyNodeName002 PARMA

Result:

The memory management of the hot standby system uses the libhsscopy library. The virtual server name of the system is HOTEL_VIRTUAL. The current master database is on the computer GENUA. The hot standby system includes the computers GENUA and PARMA.

More Information

Database Administration, Hot Standby


Command Reference for Working with Database Manager CLI - SAP Documentation

Function documentation Command Reference for Working with Database Manager CLI

You can manage your databases with the help of DBM commands, which you enter in the command line.

For more information on the command structure, see: Calling Database Manager CLI

The DBM commands described in this document are divided into standard commands and advanced commands. The purpose of this distinction is to enable you to differentiate between administration commands that are easy and safe to use and those that require precise knowledge of internal database processes.

Standard commands are those used by the administrator for normal database operation.

Only experienced database specialists should use advanced commands, because these commands allow in-depth intervention in the database system.

The advanced commands are divided into the following groups:

  • Commands for Experts

    These offer comprehensive intervention options in the administration of the database and should only be used by persons with a high degree of expertise.

  • Commands for Support

    These commands were implemented for proven specialists, who work on solving problems.

  • Commands for Use in Programs

    These commands were implemented primarily for use in scripts or programs.

  • System-Internal Commands

    These commands are only used internally for communication between SAP MaxDB components and Database Manager.

Task Areas in Database Administration

To make it easier to find DBM commands, they have been sorted according to the following categories for every task area in database administration.

Software Installation

Creating and Deleting Databases

Configuring Databases

Controlling Databases

Backing Up and Restoring Databases

Managing Database Manager Operators

Analyzing Databases

Accessing Databases Using SQL

Optimizing SQL Access to the Database

Using Database Events

Using the Scheduler Function

Managing Hot Standby Systems

Managing the Database Manager

Database Manager Help contains an overview of the Database Manager help commands that enable you to view the short references for DBM commands online.

More Information

Glossary, Syntax Notation, Variables in the Documentation


file_operation - SAP Documentation

Background documentation file_operation

With this command you can delete a complete database file or a part of its content.

If you use the command with a file for which it is not valid, you receive the error -24996 ERR_PARAM - wrong parameters.

Note Note

Use this command only, when asked to do so by technical support.

End of the note.

Prerequisites

  • You have the server permission DBFileRead.

  • You have determined the file ID of the file to be processed (see file_getfirst).

Structure

file_operation <file_ID> <action>

<action> :: = <delete_action> | <shrink_action>

<delete_action>:: = OP=DELETE [DATE=<yyyymmddhhmmss>]

<shrink_action>:: = OP=SHRINK <option>

<option> :: = DATE=<yyyymmddhhmmss> | LINE=<n>

Options

Option

Description

<file_ID>

Log file of the database

OP=DELETE [DATE=<yyyymmddhhmmss>]

The file is deleted.

You can use this option to specify that a file is only to be deleted if it has not been changed since the specified date.

OP=SHRINK <option>

Part of the content of the file is deleted.

You can use options to restrict the content to be deleted. If you specify the option DATE=<yyyymmddhhmmss>, all the lines that were written before the specified date are deleted.

If you specify the LINE=<n> option, the content of the file is reduced to <n> lines. The <n> lines that were written most recently are retained.

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Database File


file_getnext - SAP Documentation

Background documentation file_getnext

Use this this command to display the further content of an opened database file.

Prerequisites

  • You have opened a database file. The keyword CONTINUE in the answer indicates that the file content has not yet been transferred completely.

  • You have the server permission DBFileRead.

  • You have determined the file ID of the file (see file_getlist).

Structure

file_getnext <file_ID>

Options
Option | Description
<file_ID> | File ID

Result

OK

<file_handle>

CONTINUE|END

<file_length><data_length>

<data_line>

<data_line>

...

Value | Description
<file_handle> | Obsolete Numeric value used in database versions prior to 7.7 to access the file
END | The content of the file has been transferred completely. The file is closed automatically.
CONTINUE | The file contains further entries that were not transferred due to the limited size of the reply package. You can display this data by entering the DBM command again, or close the file.
<file_length> | File length After having transferred the first reply package, the total length of the file is not determined again and is therefore set to 0 when further content of the same file is output.
<data_length> | Length of the displayed data block, length of this information: 20 characters maximum max. 20 characters
<data_line> | Data line

In the event of errors, see Reply Format.

More Information

Glossary, Database File


file_getlist - SAP Documentation

Background documentation file_getlist

Use this comand to display the list of database files of the current database. You have the option of defining the scope of the file list to be output.

Note, however, that the system only displays those files, that it can access at the moment when you execute this command. The list may therefore vary with the state of the database.

Prerequisites

You have the server permission DBFileRead.

Structure

file_getlist <list_level>

Options
Option | Description
<list_level> | Scope of the file list to be displayed Possible values are: 0 | 1 0: the most important files (default value) 1: all files

Result

OK

key_name,mode,size,date,time,comment,file_name

<file_ID> <mode> <file_length> <date> <time> <comment> <file_name>

<file_ID> <mode> <file_length> <date> <time> <comment> <file_name>

...

Values for the Reply Fields
Value | Description
<file_ID> | File ID of the database file
<mode> | Indicates whether the file is plain text or binary Possible values are: ASCII|BINARY ASCII: plain text file (also Unicode) BINARY: binary file
<file_length> | Size of the database file
<date> | Date of the last change
<time> | Time of the last change
<comment> | Additional Information
<file_name> | File name

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, display the list of the most important database files:

>dbmcli -u OLEG,MONDAY -d DEMODB file_getlist 1

OK

keyname,mode,size,date,time,comment,filename

KNLDIAG ASCII 50608 20050421 133815 Database Messages knldiag.classic

KNLDIAGERR ASCII 1447 20050421 133815 Database Errors knldiag.err.classic

KNLDIAGOLD ASCII 56767 20050421 133816 Database Messages (OLD) knldiag.old.classic

KNLTRC BINARY 5595136 20050418 141944 Database Trace knltrace

UTLPRT ASCII 102400 20050418 141927 Utility Statements dbm.utl

BACKHIST ASCII 1424 20050418 131056 Backup History dbm.knl

...

More Information

Glossary, Database File


file_getfirst - SAP Documentation

Background documentation file_getfirst

Use this command to open the specified database file. The most current entries are at the end of the file. If you only specify the file name in this command, the first block, that is the block containig the oldest part of the file content, is displayed. You can specify more options to get the latest n number of lines or the file content from a certain date onwards displayed.

In the command line, you can use the DBM command only to display the content of plain text files. Programs can access the content of binary files via the DBM interface.

The data of plain text files is read from the file line by line. Each line is extended by a line feed (0x0D,0x0A) in the output area.

On a Unix computer, the line feed consists of one character only. This is why the value initially output for the file length may be smaller than the data length.

As you can only access database files with this DBM command, you do not need to log on to the operating system.

Prerequisites

  • You have the server permission DBFileRead.

  • You have determined the file ID of the requested database file (see: file_getlist).

Structure

file_getfirst <file_ID> [<file_spec>]

<file_spec> :: = DATE=<timestamp> | LINE=<nnn>

Options
Option | Description
<file_ID> | For possible file ID values, see: Database Administration, Log Files or Configuration Files
DATE=<timestamp> | The file content is output starting from the line with the specified timestamp.
LINE=<nnn> | From text files, the most current <nnn> lines are output.

Result

OK

<file_handle>

CONTINUE|END

<file_length><data_length>

<data_line>

<data_line>

...

Values for the Reply Fields
Value | Description
<file_handle> | Numeric value, which can be used for subsequent access to this file.
END | The content of the file has been transferred completely. The file is closed automatically.
CONTINUE | The file contains further entries, which were not transferred due to the limited size of the reply package. You can display this data by entering the DBM command again, or close the file.
<file_length> | File length Length of entry: max. 20 characters
<data_length> | Length of the displayed data block Length of entry: max. 20 characters
<data_line> | Data line

In the event of errors, see Reply Format.

More Information

Glossary, Database File


file_backup - SAP Documentation

Background documentation file_backup

Use this command to create a backup copy of the specified database file.

Normally, you do not have to create backup copies of internal Database Manager files because the program creates backups automatically every time it writes to the configuration files.

Prerequisites

  • You have the server permission DBFileRead.

  • You have determined the file ID of the requested database file (see: file_getlist).

Structure

file_backup <file_ID>

Options
Option | Description
<file_ID> | For possible file ID values, see: Database Administration, Log Files or Configuration Files

Result

OK

In the event of errors, see Reply Format.


file_restore - SAP Documentation

Background documentation file_restore

You can use this command to copy the backup copy of a database file created by the system, to its original position. Should the file still exist there, it will be overwritten.

Note Note

In normal circumstances, it is not necessary to copy backup copies of database files to their original position manually as the system uses the backup copy of a database file automatically when access to the original fails. Therefore, use this command only, when asked to do so by technical support.

End of the note.

Prerequisites

  • You have the server permissionDBFileRead.

  • You have determined the file ID of the file to be copied (see: file_getlist).

Structure

file_restore <file_ID>

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Database File


medium_labeloffline - SAP Documentation

Background documentation medium_labeloffline

With this command you can display information required to identify a backup that you want to use, for example, to restore the database.

You can indicate the backup from which information is to be displayed, either by the name of the backup template or by the specificaction of the data carrier.

To indicate the name of the backup template, a connection to the relevant database must exist (logged on with –d). The operational state of the database is irrelevant.

If you specify a data carrier, you can display the label of any backup, regardless of whether a connection to the database is available.

Prerequisites

You have the server permission Backup.

Structure

medium_labeloffline <name> | <location_spec>

<name> :: = <medium_name> [<nnn>]

<location_spec> :: = <device | file> <media_spec>

<media_spec> :: = <type_spec> [<blocksize_spec>] | <blocksize_spec>

<type_spec> :: = [DEVICETYPE] <device_type>

<device_type> : = FILE | TAPE | PIPE

<blocksize_spec> :: = BLOCKSIZE <block_size>

Options
Option | Description
<medium_name> | Name of the backup template
<nnn> | Only for log backup and only for backup media of the FILE type: Version number of the log backup on the data carrier
<device | file> | Data carrier
<block_size> | Number of pages transferred when the data carrier is accessed Specify the block size used to create the backup. If you do not enter any block size, the system default (8) will be used.
<device_type> | Data carrier type Possible values are: FILE | TAPE | PIPE FILE: file TAPE: tape PIPE: pipe The system default is FILE.

In the event of errors, see Reply Format.

Result

OK

Returncode <value>

Date [<value>]

Time [<value>]

Server [<value>]

Database [<value>]

Kernel Version [<value>]

Pages Transferred [<value>]

Pages Left [<value>]

Volume Count [<value>]

Medianame [<value>]

Location [<value>]

Errortext [<value>]

Label [<value>]

Is Consistent [<value>]

First LOG Page [<value>]

Last LOG Page [<value>]

DB Stamp 1 Date [<value>]

DB Stamp 1 Time [<value>]

DB Stamp 2 Date [<value>]

DB Stamp 2 Time [<value>]

Page Count [<value>]

Devices Used [<value>]

Database ID [<value>]

Max Used Data Page [<value>]

Values for the Reply Fields
Value | Description
Returncode | Return code of Database Manager If the value is 0, the DBM command has been executed successfully. For any other value, see Messages.
Date | Date of the backup
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database software
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of backup templates used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: first page of log backup to be read For log backup: first page saved in log
Last LOG Page | Only for log backup: Last page saved in log
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together
Max Used Data Page | Highest page number assigned (indication for minimum database size when backup is imported)

More Information

Glossary, Backup ID


medium_delete_nodistribute - SAP Documentation

Background documentation medium_delete_nodistribute

This DBM command is an internal system command related to hot standby configurations.

There is no documentation for this at present.


medium_put_nodistribute - SAP Documentation

Background documentation medium_put_nodistribute

This DBM command is an internal system command related to hot standby configurations.

There is no documentation for this at present.


medium_date - SAP Documentation

Background documentation medium_date

Use this command to display the date and time when the definition file for backup templates was last changed.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

medium_date

Result

OK

<yyyymmdd><HHMMSS>

Values for the Reply Fields
Value | Description
<yyyymmdd><HHMMSS> | Last change date of definition file for backup templates Time format: year month day hours minutes seconds

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the last change date of the definition file for backup templates:

>dbmcli -u OLEG,MONDAY -d DEMODB medium_date

OK

20041210160344

More Information

Database Administration, Log Files, Backup Templates and Data Carriers


medium_get - SAP Documentation

Background documentation medium_get

With this command you can display the properties of the specified backup template.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

medium_get <medium_name>

Result

OK

<medium_name> <location> <type> <backup_type> <size> <block_size> <overwrite> <autoldr> <oscmd> <date_created> <date_modified> <tool_type>

Values for the Reply Fields
Value | Description
<medium_name> | Name of the backup template Can comprise a group name and a member name. These are separated by a slash.
<location> | Name of the device/file with which it can be addressed through operating system functions
<type> | Type of backup template Possible values are: TAPE | FILE | NO-REWIND | PIPE | AUTOLOADER | UNKNOWN
<backup_type> | Type of backup for which the backup template is to be used Possible values are: DATA | PAGES | LOG
<size> | Maximum number of pages that can be written to the data carrier
<block_size> | Number of pages transferred when the data carrier is accessed
<overwrite> | Indicates whether the data carrier can be overwritten (for the FILE template type only) Possible values are:NO | YES
<autoldr> | Indicates whether the device changes the data carrier automatically Possible values are: YES | NO
<oscmd> | Operating system command to be executed before saving to a succeeding data carrier (backup_replace) or restoring a succeeding data carrier (recover_replace)
<date_created> | Date on which the backup template was created
<date_modified> | Date on which the backup template was changed
<tool_type> | Type of the backup tool Possible values are: NONE | BACK | NSR | TSM NONE: No backup tool is used. BACK: Backint for Oracle NSR: NetWorker TSM: TSM by IBM/Tivoli

In the event of errors, see Reply Format.

More Information

Database Administration, Backup Templates and Data Carriers


medium_getall - SAP Documentation

Background documentation medium_getall

You display the list of all defined backup templates.

Prerequisites

You have the server authorization Backup or DBInfoRead.

Structure

medium_getall

Result

OK

<medium_name> <location> <type> <backup_type> <size> <block_size> <overwrite> <autoldr> <oscmd> <date_created> <date_modified> <tool_type>

<medium_name> <location> <type> <backup_type> <size> <block_size> <overwrite> <autoldr> <oscmd> <date_created> <date_modified> <tool_type>

...

Values for the Reply Fields
Value | Description
<medium_name> | Name of the backup template Can comprise a group name and a member name, separated by a slash.
<location> | Name of the device/file with which it can be addressed through operating system functions
<type> | Type of backup template Possible values are: TAPE | FILE | NO-REWIND | PIPE | AUTOLOADER | UNKNOWN
<backup_type> | Type of backup for which the backup template is to be used Possible values are: DATA | PAGES | LOG
<size> | Maximum number of pages that can be written to the data carrier
<block_size> | Number of pages transferred when the data carrier is accessed
<overwrite> | Indicates whether the data carrier can be overwritten (for the FILE template type only). Possible values are: NO | YES
<autoldr> | Indicates whether the device changes the data carrier automatically. Possible values are: YES | NO
<oscmd> | Operating system command to be executed before backup_save_replace or backup_restore_replace.
<date_created> | Date and time at which the backup template was created
<date_modified> | Date and time at which the backup template was last changed
<tool_type> | Type of the backup tool Possible values are: NONE | BACK | NSR | TSM NONE: No backup tool is used. BACK: Backint for Oracle NSR: NetWorker TSM: TSM by IBM/Tivoli

In the event of errors, see Reply Format.

More Information

Database Administration, Backup Templates and Data Carriers


medium_delete - SAP Documentation

Background documentation medium_delete

You delete the specified backup template.

Prerequisites

You have the server permission Backup.

Structure

medium_delete <medium_name>

Options
Option | Description
<medium_name> | Name of the backup template

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Backup Templates and Data Carriers


param_directgetallnext - SAP Documentation

Background documentation param_directgetallnext

Use this command to display the remaining content of the current database parameter file. One parameter with its name and value is displayed per line.

Prerequisites

  • You have executed the command for displaying all the parameters in the current database parameter file (see: param_directgetall). Due to the limited size of the reply packet, not all of the values have been displayed yet.

  • You have the server permission ParamRead.

Structure

param_directgetallnext

Result

OK

<parameter_name> <value>

<parameter_name> <value>

...

Values for the Reply Fields
Value | Description
<parameter_name> | Parameter name
<value> | Parameter value

In the event of errors, see Reply Format.


package_info - SAP Documentation

Background documentation package_info

This DBM command is used only by SAP applications.

There is no documentation for this at present.


param_delvolume - SAP Documentation

Background documentation param_delvolume

Use this command to delete the parameter for the specified volume from the database parameter file. This DBM command only deletes volume parameters.

Caution Caution

Use this command with care. Inconsistencies in the volume settings can damage the database.

End of the caution.

Use the DBM command db_deletevolume to physically delete data volumes and then re-release the resources.

Prerequisites

You have the server permission ParamCheckWrite.

Structure

param_delvolume <vol_no> <vol_mode>

Options
Option | Description
<vol_no> | Number of the volume
<vol_mode> | Mode of the volume Possible values are: DATA | LOG | MLOG DATA: data volume LOG: log volume MLOG: mirror log volume

Result

OK

In the event of errors, see Reply Format.


param_abortsession - SAP Documentation

Background documentation param_abortsession

Use this command to abort a parameter session.

All changes made to database parameters in this session are discarded.

Prerequisites

  • You have opened a parameter session (see: param_startsession).

  • You have the server permission ParamRead.

Structure

param_abortsession

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_directgetall - SAP Documentation

Background documentation param_directgetall

With this command you can display all database parameters of the current database with their values.

If not all parameters can be displayed due to the limited size of the reply packet, use param_directgetallnext to display the remaining content of the parameter file.

Prerequisites

You have the server permission ParamRead.

Structure

param_directgetall

Result

OK

<parameter_name> <value>

<parameter_name> <value>

...

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_directget - SAP Documentation

Background documentation param_directget

Use this command to display the value of the specified database parameter.

Prerequisites

You have the server permission ParamRead.

Structure

param_directget <parameter_name>

Result

OK

<parameter_name> <value>

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameter
<value> | Value of the database parameter

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the value of the parameter RunDirectoryPath (run directory of the database):

>dbmcli – u OLEG,MONDAY –d DEMODB param_directget RunDirectoryPath

OK

RunDirectoryPath c:\documents and settings\all users\application data\sdb\data\wrk\DEMODB

More Information

Database Administration, Database Parameters


param_commitsession - SAP Documentation

Background documentation param_commitsession

Use this DBM command to confirm changes you have made to database parameters and to enter them in the database parameter file. Only execute this DBM command if you have successfully executed the command for checking all database parameters.

You can enter an option to define if you would like the parameter session to remain open or to be closed once the changes have been confirmed.

The changed values in the parameter file become only effective after a restart of the database.

Prerequisites

  • You have changed the parameter values during a parameter session param_startsession.

  • The check of the parameters you changed was successful (see: param_checkall).

  • You have the server permission ParamCheckWrite.

Structure

param_commitsession [NOCLOSE]

Options
Option | Description
NOCLOSE | The parameter session remains open after the database parameters have been saved.

Result

OK

Reply in the Event of an Error

ERR 14,ERR_XPCHECK_CN00 : param check failure/request <parameter_name> <check_status> <user_value> <computed_value>

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameter
<check_status> | Check result Possible values are: mandatory | constraint mandatory: An obligatory database parameter has not been defined. constraint: A condition defined in the default parameter file was not fulfilled.
<user_value> | Value defined by the user for the database parameter
<computed_value> | Default value calculated by the system

More Information

Database Administration, Database Parameters


param_directput - SAP Documentation

Background documentation param_directput

Use this DBM command to change the parameters of the database.

Unlike the DBM command for changing the values of database parameters (see: param_put), this command enters the values for the specified parameters directly into the database parameter file. However, an entry is only made if the parameter is contained in the default parameter file.

Be very careful when using this DBM command as it accesses the database parameter file directly. The system does check that the changes made are in accordance with the rules, and it overwrites invalid values with the values from the default parameter file when the database is restarted next time.

However, this does not happen for the parameters RunDirectoryPath and KernelVersion, or for any volume parameters.

Caution Caution

Be very careful when using this DBM command as it accesses the database parameter file directly.

If you delete parameters by mistake, this can lead to severe inconsistencies during database operation.

End of the caution.

Prerequisites

You have the server permission ParamFull.

Structure

param_directput <parameter_name> <value> [<comment>]

Options
Option | Description
<parameter_name> | Name of the database parameter
<value> | Value of the database parameter
<comment> | Comment to be stored for the database parameter If the comment line contains spaces, put the line in double quotation marks.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_copy - SAP Documentation

Background documentation param_copy

With this command you can copy the parameter file of an existing database and use this copy as the initial configuration for a new database.

All parameter values are copied, except the parameters RunDirectoryPath, KernelVersion, and all volume parameters. These parameters have properties, which prevent them from being copied. For these parameters, the values from the default parameter file are retained.

Prerequisites

  • You have opened a parameter session (see: param_startsession).

  • You have the server permission InstallMgm.

Structure

param_copy <source_database>

Options
Option | Description
<source_database> | Name of the database whose parameter file you want to copy

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_directdel - SAP Documentation

Background documentation param_directdel

With this command you can delete the specified parameter from the database parameter file.

This change only becomes effective when the database is restarted next time.

The system does check that the changes made are in accordance with the rules, and it overwrites invalid values when the database is restarted with the values from the default parameter file. However, this does not happen for the parameters RunDirectoryPath and KernelVersion, or for any volume parameters.

Caution Caution

Be very careful when using this DBM command as it accesses the database parameter file directly.

If you delete parameters by mistake, this can lead to severe inconsistencies during database operation.

End of the caution.

Prerequisites

You have the server permission ParamFull.

Structure

param_directdel <parameter_name> [<comment>]

Options
Option | Description
<parameter_name> | Name of the database parameter
<comment> | Comment stored for the database parameter If the comment line contains spaces, put the line in double quotation marks.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_checkall - SAP Documentation

Background documentation param_checkall

Use this command to check the database parameters on the basis of the properties, calculation formulas, and conditions stored in the default parameter file. How this proceeds depends on whether or not you opened a parameter session before executing the DBM command.

If you have opened a parameter session (see: param_startsession) and an error is found during the check, then the check is stopped and the results are output together with an error message. Correct the database parameter (see: param_put) and then start the check again. Repeat this procedure until the database parameter check does not find any more errors. All changes to database parameters are first buffered by the system. They are only entered in the parameter file when you explicitly confirm the changes you have made (see: param_commitsession).

If you start the check without first opening a parameter session, and the check finds an error, then the system adapts the changed parameter values to the valid rules and enters the new values in the parameter file. The changed values in the parameter file become only effective after a restart of the database.

Prerequisites

You have the server permission ParamCheckWrite.

Structure

param_checkall

Result

OK

Reply in the Event of Errors (with Parameter Session)

ERR

-24986,ERR_XPCHECK: param check failure/request

<parameter_name> <check_status>

<user_value>

<computed_value>

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameter
<check_status> | Check result Possible values are: mandatory | constraint mandatory: An obligatory database parameter has not been defined. constraint: A condition defined in the default parameter file was not fulfilled.
<user_value> | Value defined by the user for the database parameter
<computed_value> | Default value calculated by the system

More Information

Database Administration, Database Parameters


TASKGROUPSTATISTICS - SAP Documentation

Object documentation TASKGROUPSTATISTICS

The system table SYSINFO.TASKGROUPSTATISTICS contains information about task groups and their resource usage since the last start of the database.

Structure

TASKGROUPSTATISTICS
TASKGROUPID | FIXED(10) | Identification of the task group
THREADID | FIXED(10) | Identification of the thread in the operating system
TASKCLUSTER | CHAR(20) | Task cluster to which this task group belongs
TASKCOUNT | FIXED(10) | Number of tasks in this group
THREADSTATE | CHAR(20) | Operation state of this task group
USEDRUNQUEUELENGTH | FIXED(10) | Number of tasks lined up for CPU assignment
MAXUSEDRUNQUEUELENGTH | FIXED(10) | Maximum number of tasks lined up for CPU assignment
DISPATCHCOUNT | FIXED(20) | Number of task scheduler calls
TASKSWITCHCOUNT | FIXED(20) | Number of task switches in this task group
COMMANDCOUNT | FIXED(20) | Number of commands executed by the tasks of this task group
IDLECOUNT | FIXED(20) | Number of time intervals in which the CPU was released
IDLETIME | FIXED(20) | Total time for which the CPU was released (µs)
IOWAITCOUNT | FIXED(20) | Number of time intervals in which waits for outstanding I/O operations occurred
IOWAITTIME | FIXED(20) | Total wait time for outstanding I/O operations (µs)
USEDSYSTEMTIME | FIXED(20) | Total CPU time used in system mode (µs)
USEDUSERTIME | FIXED(20) | Total CPU time used in user mode (µs)

More Information

TASKGROUPSTATISTICSRESET

Concepts of the Database System, Tasks


CONSISTENTVIEWS - SAP Documentation

Object documentation CONSISTENTVIEWS

The system table SYSINFO.CONSISTENTVIEWS describes the currently active consistent views.

Structure

CONSISTENTVIEWS
CONSISTENTVIEWID | FIXED(15) | Identification of the consistent view
TRANSACTIONID | FIXED(15) | Identification of the transaction that generated the consistent view
CREATEDATE | TIMESTAMP | Time at which the consistent view was generated
UNUSEDTIME | FIXED(10) | Elapsed time since the consistent view was last used (s)
CANCELED | CHAR(3) | Consistent view was implicitly closed due to insufficient memory (YES | NO)
COMMANDID | CHAR(8) | Identification of the corresponding SQL statement

More Information

Concepts of the Database System, Example: Consistent View


DATASTATISTICS - SAP Documentation

Object documentation DATASTATISTICS

The system table SYSINFO.DATASTATISTICS describes the current fill level of the database and the maximum fill level since the last time the database was started.

Structure

DATASTATISTICS
USABLESIZE | FIXED(20) | Data area available for data (KB)
USEDSIZE | FIXED(20) | Memory in data area that is actually used for data (KB)
USEDSIZEPERCENTAGE | FIXED(3) | Memory in data area that is actually used for data (%)
DATAFULL | CHAR(3) | Data area is full (YES | NO)
USEDSIZEONVOLUMES | FIXED(20) | Amount of data written to data area (KB)
USEDSIZENOTONVOLUMES | FIXED(20) | Amount of permanent data that has to be written to data area at next savepoint (KB)
USEDPERMANENTSIZE | FIXED(20) | Data area used for permanent data (KB)
USEDTEMPORARYSIZE | FIXED(20) | Data area (KB) used for temporary data
MAXUSEDSIZE | FIXED(20) | Maximum data area used for data at a savepoint (KB)
MAXUSEDPERMANENTSIZE | FIXED(20) | Maximum data area used for permanent data at a savepoint (KB)
MAXUSEDTEMPORARYSIZE | FIXED(20) | Maximum data area used for temporary data at a savepoint (KB)
INCREMENTALBACKUPSIZE | FIXED(20) | Amount of data that needs to be backed up in next incremental backup (KB)
LASTEMERGENCYHISTORYCLEANUP | TIMESTAMP | Time at which undo log files were last deleted due to lack of space in data area (according to history file)
CONVERTERVERSION | FIXED(10) | The converter data saved to the data area at the last savepoint is assigned a unique number (converter version). This number is stored in the restart information.
MAXTEMPORARYDATAPAGENUMBER | FIXED(10) | Highest page number available for temporary pages
MAXPERMANENTDATAPAGENUMBER | FIXED(10) | Highest page number available for permanent pages
MAXPERMANENTSTATICDATAPAGENUMBER | FIXED(10) | Highest page number available for permanent, static pages
USEDPERMANENTCONVERTERSIZE | FIXED(10) | Total amount of permanent converter data in the active converter (disregarding shadow storage data and the converter data which belongs to a snapshot) (KB)
USEDTEMPORARYCONVERTERSIZE | FIXED(10) | Amount of temporary converter data (KB)
USEDSNAPSHOTSIZE | FIXED(10) | Amount of permanent data and converter data which is addressed in the inactive snapshot converter only and for which there is no entry in the active converter (KB)
USEDSHADOWSIZE | FIXED(10) | Amount of shadow storage data which can be released at the next savepoint (KB)

The permanent data pages of the snapshot are not counted under the value USEDPERMANENTSIZE, but rather under USEDSNAPSHOTSIZE.

The permanent converter pages of the snapshot are not counted under the value USEDPERMANENTCONVERTERSIZE, but rather under USEDSNAPSHOTSIZE.

More Information

Evaluating System Tables, DATASTATISTICS

DATASTATISTICSRESET


FILEDIRECTORIES - SAP Documentation

Object documentation FILEDIRECTORIES

The system table SYSINFO.FILEDIRECTORIES describes all internal file directories, that is, the general directory as well as the local directories of all database sessions.

Structure

FILEDIRECTORIES
SESSIONID | FIXED(10) | ID of the database session to which the local file directory belongs NULL for the general file directory
MAXUSEDFILEID | CHAR(8) BYTE | Largest assigned file number - for a local file directory, file number for temporary files - for a general file directory, file number for persistent files
ENTRYCOUNT | FIXED(10) | Number of entries in this file directory
CACHEENTRYCOUNT | FIXED(10) | Number of entries buffered in the cache of the local file directory NULL for the general file directory
HASHTABLESLOTCOUNT | FIXED(10) | Number of slots in the hash table of the file directory
USEDHASHTABLESLOTCOUNT | FIXED(10) | Number of used slots in the hash table of the file directory
MAXHASHTABLECHAINENTRYCOUNT | FIXED(10) | Longest hash chain in the hash table of the file directory since the last enlargement of the hash chain
RESIZEHASHTABLECOUNT | FIXED(10) | Number of times the hash table had to be resized
USEDPAGECOUNT | FIXED(10) | Number of occupied data pages for the general file directory NULL for the local file directories
STATISTICSDELTACOUNT | FIXED(10) | Number of file directory entries that were changed after a savepoint
CURRENTSTATISTICSDELTACOUNT | FIXED(10) | Number of file directory entries that were changed after the current savepoint

More Information

Glossary, File Directory (Database-Internal)


FILES - SAP Documentation

Object documentation FILES

The system table SYSINFO.FILES describes all internal database files except for LOB files.

Structure

FILES
FILEID | CHAR(8) BYTE | Identification of the file
SESSIONID | FIXED(10) | Identification of the database session in which temporary files were created NULL for persistent files
ROOT | FIXED(10) | Page number of the file root
RECOVERYMODE | CHAR(10) | Recovery mode of the root page (PERMANENT for persistent tables | STATIC for SAP liveCache object files | TEMPORARY for temporary files)
FILESYSTEMID | FIXED(5) | File system identification of the root page (FILESYSTEMID returns the index of the database internal file system/converter the file is stored in. A FILESYSTEMID of 0 means that the file is stored in the default file system/converter.)
TYPE | CHAR(20) | File type (TABLE | INDEX | FIXED OBJECT | VARIABLE OBJECT | KEYED OBJECT | KEYED OBJECT INDEX | SHORT COLUMN FILE | <internal_file_type_for_temporary_files> | UNKNOWN | <other_file_types>)
PRIMARYFILEID | CHAR(8) BYTE | ID of the corresponding table if the file is of the type SHORT COLUMN FILE or INDEX, or ID of the corresponding KEYED OBJECT, if the file is of the type KEYED OBJECT, or NULL if the file is of any other type
FILESTATE | CHAR(20) | File status (OK | DELETED | BAD | READ ONLY | UNKNOWN)
ENTRYCOUNT | FIXED(20) | Number of entries in this file NULL if there are no entries or if ENTRYCOUNT has not yet been determined
TREEINDEXSIZE | FIXED(20) | Space that is occupied by index pages of the file (KB) NULL, if the file has no index pages or if TREEINDEXSIZE has not yet been determined
TREELEAVESSIZE | FIXED(20) | Space that is occupied by the leaf pages of the file (KB) NULL, if TREELEAVESIZE has not yet been determined
LOBSIZE | FIXED(20) | Space that is occupied by LOB values of the table (KB) 0, if the file is not a table NULL, if LOBSIZE has not yet been determined
CLUSTERED | CHAR(3) | Specifies whether data pages of the file are considered for storage in clusters (YES | NO) This means that the entire file is stored in clusters.
DYNAMIC | CHAR(3) | Specifies whether a simplified overflow/underflow handling is applied to B* tree pages (YES | NO)
PACKED | CHAR(3) | Specifies whether data records of the file are stored in a space-saving format (YES | NO)
PACKEDNUMBERCOLUMNS | CHAR(3) | Specifies whether numeric values are stored in a space-saving format (YES | NO)
PACKEDUNICODECOLUMNS | CHAR(3) | Specifies whether columns with the UNICODE code attribute are stored in a space-saving format (YES | NO)
CACHE | CHAR(3) | Specifies whether table content data is stored in a separate LRU list in the data cache that is reserved for tables with this attribute (YES | NO). If the content of all tables with the CACHE attribute set fits into this special data cache area then effectively it will never get evicted from the data cache again once it has been loaded.
NOCACHE | CHAR(3) | Specifies whether table content data will be evicted from the data cache right after every access (YES | NO)

More Information

SYSUPDATECOUNTERWANTED

CREATE TABLE Statement

Concepts of the Database System, Logical Access Structures

Glossary, File Directory (Database-Internal)


INSTANCE - SAP Documentation

Object documentation INSTANCE

The system table SYSINFO.INSTANCE describes some details about the database.

Structure

INSTANCE
NODE | CHAR(64) | Name with which the database instance can be addressed by applications
LOCALNODE | CHAR(64) | Name with which this hot standby instance can be addressed (if you have a hot standby configuration)
ADMINSTATEDATE | TIMESTAMP | Time at which the ADMIN operational state was reached
ONLINESTATEDATE | TIMESTAMP | Time at which the ONLINE operational state was reached
KERNELPROCESSID | FIXED(20) | Identification of the kernel process

More Information

Evaluating System Tables, INSTANCE


LOGVOLUMES - SAP Documentation

Object documentation LOGVOLUMES

The system table SYSINFO.LOGVOLUMES describes the log volumes used.

Structure

LOGVOLUMES
ID | FIXED(5) | Number of the volume
CONFIGUREDSIZE | FIXED(20) | Configured size of the volume (KB)
USABLESIZE | FIXED(20) | Area of the volume that can be used for log entries (KB)
PATH | CHAR(256) | Name of the volume
MIRRORPATH | CHAR(256) | Name of the mirrored volume NULL, if the volume is not mirrored

More Information

Concepts of the Database System, How Databases Log Data Changes


HOTSTANDBYGROUP - SAP Documentation

Object documentation HOTSTANDBYGROUP

The system table SYSINFO.HOTSTANDBYGROUP describes which information the hot standby instance from which the information about this system table is being requested has about other standby instances.

Structure

HOTSTANDBYGROUP
LOCALNODE | CHAR(64) | Name by which the instance can be addressed
ADDNODEDATE | TIMESTAMP | Time at which the instance was added to the hot standby configuration
REMOVENODEDATE | TIMESTAMP | Time at which the instance was removed from the hot standby configuration
STATE | CHAR(20) | Status of the instance (UNKNOWN, PREPARE STANDBY, WAIT FOR SYNCHRONIZE, DEACTIVATED, REGISTER STANDBY, REMOVED, ADDED)
PREPARESTANDBYDATE | TIMESTAMP | Time at which the instance received the last PREPARE STANDBY statement
REGISTERSTANDBYDATE | TIMESTAMP | Time at which the instance received the last RECEIVE STANDBY statement
SYNCHRONIZEDATE | TIMESTAMP | Time at which the instance sent the last SYNCHRONIZE statement
SUCCESSFULSYNCHRONIZEDATE | TIMESTAMP | Time at which last successful SYNCHRONIZE statement was executed
LASTVALIDLOGOFFSETSENT | FIXED(10) | Last position in the log area sent by the master instance up to which the standby instances can redo the log entries
FIRSTNEEDEDLOGOFFSET | FIXED(10) | Oldest position in the log area up to which the master instance can write without overwriting the log pages required by the standby instances
SYNCHRONIZESENDCOUNT | FIXED(10) | Number of sent SYNCHRONIZE statements
SYNCHRONIZERETRYCOUNT | FIXED(10) | Number of SYNCHRONIZE statements that have failed since last successful SYNCHRONIZE statement

More Information

Database Administration, Architecture of a Hot Standby System


MEMORYALLOCATORSTATISTICS - SAP Documentation

Object documentation MEMORYALLOCATORSTATISTICS

The system table SYSINFO.MEMORYALLOCATORSTATISTICS contains information on accesses to allocators since the last time the database was started.

Structure

MEMORYALLOCATORSTATISTICS
ALLOCATORNAME | CHAR(40) | Name of the allocator
USEDSIZE | FIXED(20) | Amount of memory made available by the allocator (bytes)
MAXUSEDSIZE | FIXED(20) | Maximum amount of memory made available by the allocator (bytes)
ALLOCATEDSIZE | FIXED(20) | Amount of memory reserved by the allocator (bytes)
ALLOCATECOUNT | FIXED(20) | Number of memory allocations
DEALLOCATECOUNT | FIXED(20) | Number of memory releases
FAILEDALLOCATECOUNT | FIXED(20) | Number of memory requests not fulfilled
FOUNDERRORCOUNT | FIXED(10) | Number of errors found in the allocator and corrected internally
BASEALLOCATORNAME | CHAR(40) | Name of the allocator that provides this allocator with memory
BASEALLOCATECOUNT | FIXED(20) | Number of memory reservations for the allocator BASEALLOCATORNAME
BASEDEALLOCATECOUNT | FIXED(20) | Number of memory deallocations sent to the allocator BASEALLOCATORNAME

More Information

MEMORYALLOCATORDETAILS


HOTSTANDBYCOMPONENT - SAP Documentation

Object documentation HOTSTANDBYCOMPONENT

The system table SYSINFO.HOTSTANDBYCOMPONENT describes some of the details of the hot standby instance in which the information in this system table is queried.

Structure

HOTSTANDBYCOMPONENT
LOCALNODE | CHAR(64) | Name with which the hot standby instance can be addressed
MASTERLOCALNODE | CHAR(64) | Name with which the corresponding master instance can be addressed
STANDBYROLE | CHAR(8) | Role within the hot standby configuration (MASTER | STANDBY | UNKNOWN)
TAKEOVERDATE | TIMESTAMP | Time at which a TAKEOVER statement was received
DELAYTIME | FIXED(10) | Delay in seconds after which changes in the master instance are applied to the standby instance
STANDBYSTATEDATE | TIMESTAMP | Time at which the instance reached the STANDBY operational state
SYNCHRONIZERECEIVECOUNT | FIXED(10) | Number of SYNCHRONIZE statements received by the instance
FIRSTNEEDEDLOGOFFSET | FIXED(10) | Oldest position in log area from which log entries have to be redone
LASTVALIDLOGOFFSETRECEIVED | FIXED(10) | Position in log area up to which the instance can read log entries; this position was transferred with the last SYNCHRONIZE statement
INITSTANDBYDATE | TIMESTAMP | Time at which the instance received the last INIT STANDBY statement
RESTARTSTANDBYDATE | TIMESTAMP | Time at which the instance sent the last RESTART STANDBY statement
LASTSYNCHRONIZEDATE | TIMESTAMP | Time at which the instance received the last SYNCHRONIZE statement
PREPARESTANDBYDATE | TIMESTAMP | Time at which the instance sent the last PREPARE STANDBY statement
REGISTERSTANDBYDATE | TIMESTAMP | Time at which the instance sent the last REGISTER STANDBY statement

More Information

Database Administration, Architecture of a Hot Standby System


IOBUFFERCACHES - SAP Documentation

Object documentation IOBUFFERCACHES

The system table SYSINFO.IOBUFFERCACHES contains information on using the IO buffer cache, which is dimensioned by the database parameter CacheMemorySize.

Structure

IOBUFFERCACHES
TOTALSIZE | FIXED(20) | Configured size of the I/O buffer cache according to the database parameter CacheMemorySize (KB)
DATACACHEUSEDSIZE | FIXED(20) | Pages used by the data cache (KB)
CONVERTERUSEDSIZE | FIXED(20) | Pages used by the converter (KB)
LOGQUEUEUSEDSIZE | FIXED(20) | Pages used by the log queue (KB)
IOMANAGEMENTUSEDSIZE | FIXED(20) | Pages used by I/0 Management (KB)
FILEDIRECTORYUSEDSIZE | FIXED(20) | Pages used by the internal file directory (KB)
RESTARTRECORDUSEDSIZE | FIXED(20) | Restart pages that are used for snapshots (KB)
BLOCKALLOCATORUSEDSIZE | FIXED(20) | Memory used by block allocators (KB)
UNUSEDSIZE | FIXED(20) | Unused pages (KB)
INDEXCREATIONUSEDSIZE | FIXED(20) | Pages used for parallel index creation (KB)

More Information

MEMORYALLOCATORSTATISTICS

Database Administration, General Database Parameters


SHARELOCKWAITINGTASKS - SAP Documentation

Object documentation SHARELOCKWAITINGTASKS

The SYSINFO.SHARELOCKWAITINGTASKS system table describes waiting times on reader-writer locks (share locks).

Structure

SHARELOCKWAITINGTASKS
SHARELOCKADDRESS | CHAR(20) | Address in memory
WAITINGTASKID | FIXED(10) | ID of the task waiting for the reader-writer lock (share lock)

More Information

SHARELOCKSTATISTICS, SHARELOCKINFORMATION

Concepts of the Database System, Working Memory Areas

Glossary, Critical Section


LOGQUEUESTATISTICS - SAP Documentation

Object documentation LOGQUEUESTATISTICS

The system table SYSINFO.LOGQUEUESTATISTICS specifies the number of times certain logging-related events were counted per log queue since the last start of the database.

Structure

LOGQUEUESTATISTICS
QUEUEID | FIXED(5) | ID of the log queue
QUEUEMAXUSED | FIXED(5) | Number of write transactions
QUEUEINSERTCOUNT | FIXED(20) | Number of log entries inserted into the log queue
QUEUEOVERFLOWCOUNT | FIXED(10) | Number of wait situations due to log queue overflow
GROUPCOMMITCOUNT | FIXED(10) | Number of log pages whose writing was waited for by more than one transaction
WAITCOUNT | FIXED(10) | Number of COMMIT-/ROLLBACK entries
MAXWAITCOUNTPERPAGE | FIXED(10) | Maximum number of transactions that simultaneously waited for the same log page to be written
PHYSICALWRITECOUNT | FIXED(10) | Number of write operations

More Information

Evaluating System Tables, LOGQUEUESTATISTICS

Concepts of the Database System, How Databases Log Data Changes


TRANSACTIONS - SAP Documentation

Object documentation TRANSACTIONS

The system table SYSINFO.TRANSACTIONS describes the status of all current transactions.

Structure

TRANSACTIONS
TASKID | FIXED(10) | ID of the task
TRANSACTIONID | FIXED(15) | ID of the transaction
STARTDATE | TIMESTAMP | Start time of the transaction
WRITETRANSACTIONID | FIXED(15) | ID of a write transaction
SQLLOCKREQUESTTIMEOUT | FIXED(10) | Timeout for SQL lock requests for database objects (s). This value may be different than the database parameter.
OMSLOCKREQUESTTIMEOUT | FIXED(10) | Timeout for lock requests for OMS objects (s). This value may be different than the database parameter.
LASTWRITE | FIXED(10) | Duration of a transaction that has made changes in the database (s)
SQLLOCKMODE | CHAR(14) | Type of lock for SQL database objects (NULL value | SHARE | EXCLUSIVE)
OMSLOCKMODE | CHAR(14) | Type of lock for OMS objects (NULL value | SHARE | EXCLUSIVE)
REQUESTMODE | CHAR(14) | Type of lock in case of a collision with timeout wait situations (NULL value | SHARE | EXCLUSIVE)
HISTORYROOT | FIXED(10) | First page in the chain of history pages
HISTORYLAST | FIXED(10) | Last page in the chain of history pages
HISTORYPAGECOUNT | FIXED(10) | Number of used history pages
LASTHISTORYSEQUENCE | FIXED(10) | Last number assigned for a history entry
CONSISTENTVIEWID | FIXED(15) | ID of the currently valid consistent view
TASKTYPE | CHAR(32) | Task type

More Information

Concepts of the Database System, Transactions, Locks


LOGSTATISTICSRESET - SAP Documentation

Object documentation LOGSTATISTICSRESET

The system table SYSINFO.LOGSTATISTICSRESET describes the degree to which log management is being utilized and the number of special events that have occurred during logging since the last RESET LOGSTATISTICS or RESET ALL.

Structure

LOGSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
SAVEPOINTCOUNT | FIXED(10) | Number of savepoints
TRANSACTIONCOUNT | FIXED(10) | Number of transactions
WRITETRANSACTIONCOUNT | FIXED(10) | Number of write transactions

More Information

Concepts of the Database System, How Databases Log Data Changes


LOGQUEUESTATISTICSRESET - SAP Documentation

Object documentation LOGQUEUESTATISTICSRESET

The system table SYSINFO.LOGQUEUESTATISTICSRESETspecifies the number of times certain logging-related events were counted per log queue since the last RESET LOGQUEUESTATISTICS of the database.

Structure

LOGQUEUESTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
QUEUEID | FIXED(5) | ID of the log queue
QUEUEMAXUSED | FIXED(5) | Number of write transactions
QUEUEINSERTCOUNT | FIXED(20) | Number of log entries inserted into the log queue
QUEUEOVERFLOWCOUNT | FIXED(10) | Number of wait situations due to log queue overflow
GROUPCOMMITCOUNT | FIXED(10) | Number of log pages whose writing was waited for by more than one transaction
WAITCOUNT | FIXED(10) | Number of COMMIT-/ROLLBACK entries
MAXWAITCOUNTPERPAGE | FIXED(10) | Maximum number of transactions that simultaneously waited for the same log page to be written
PHYSICALWRITECOUNT | FIXED(10) | Number of write operations

More Information

Concepts of the Database System, How Databases Log Data Changes


SHARELOCKSTATISTICSRESET - SAP Documentation

Object documentation SHARELOCKSTATISTICSRESET

The system table SYSINFO.SHARELOCKSTATISTICSRESET describes the critical sections and their use since the last RESET SHARELOCKSTATISTICS or RESET ALL.

Structure

SHARELOCKSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
SHARELOCKADDRESS | CHAR(20) | Address in memory
EXCLUSIVEACCESSCOUNT | FIXED(20) | Number of exclusive accesses to this critical section
NONEXCLUSIVEACCESSCOUNT | FIXED(20) | Number of non-exclusive accesses to this critical section
COLLISIONCOUNT | FIXED(20) | Number of collisions between a task that is occupying the critical section and another task that is requesting the critical section
WAITCOUNT | FIXED(20) | Number of tasks waiting for access to the critical section
SPINLOCKCOLLISIONCOUNT | FIXED(20) | Number of task collisions in the management of the critical section

More Information

SHARELOCKSTATISTICS, SHARELOCKINFORMATION, SHARELOCKWAITINGTASKS

Concepts of the Database System, Working Memory Areas

Glossary, Critical Section


LOGINFORMATION - SAP Documentation

Object documentation LOGINFORMATION

The SYSINFO.LOGINFORMATION system table describes the log management status.

Structure

LOGINFORMATION
LOGVOLUMEENABLED | CHAR(3) | Log entries are written in the log area (YES | NO)
AUTOMATICOVERWRITE | CHAR(3) | Overwrite mode is activated for the log area (YES | NO)
LOGWRITERSUSPENDED | CHAR(3) | Log writing on disk is suspended, to enable physical disk backup (YES | NO)
FLUSHMODE | CHAR(20) | Criterion that determines if a page may be written multiple times at the same offset (MINIMIZE SPACE | MAXIMIZE SPACE)
DEVICESTATE | CHAR(20) | State of the log (OK | HISTORY LOST | CLEARED | CLEARING | PARTIALLY CLEARED | PARTIALLY CLEARING)
LOGFULL | CHAR(3) | Log area is completely filled (YES | NO)
PENDINGLOGSIZE | FIXED(20) | Size specification for the newly defined log area that is not yet active

More Information

Concepts of the Database System, How Databases Log Data Changes


LOGSTATISTICS - SAP Documentation

Object documentation LOGSTATISTICS

The system table SYSINFO.LOGSTATISTICS describes the degree to which log management is being utilized and the number of special events that have occurred during logging since the start of the database.

Structure

LOGSTATISTICS
USABLESIZE | FIXED(20) | Size of the log area (KB)
USEDSIZE | FIXED(20) | Used log area (KB)
USEDSIZEPERCENTAGE | FIXED(3) | Used log area (%)
NOTSAVEDSIZE | FIXED(20) | Size of log area not yet saved (KB)
NOTSAVEDPERCENTAGE | FIXED(3) | Size of log area not yet saved (%)
SAVEPOINTCOUNT | FIXED(10) | Number of savepoints
TRANSACTIONCOUNT | FIXED(10) | Number of transactions
WRITETRANSACTIONCOUNT | FIXED(10) | Number of write transactions
MAXUSEDSESSIONID | FIXED(10) | Highest database session ID assigned
MAXUSEDTRANSACTIONNUMBER | FIXED(15) | Highest transaction ID assigned
QUEUECOUNT | FIXED(5) | Number of log queues
QUEUESIZE | FIXED(10) | Size of the log queue (KB)

More Information

Evaluating System Tables, LOGSTATISTICS

Concepts of the Database System, How Databases Log Data Changes


SHARELOCKINFORMATION - SAP Documentation

Object documentation SHARELOCKINFORMATION

The SYSINFO.SHARELOCKINFORMATION system table describes reader-writer locks (share locks).

Structure

SHARELOCKINFORMATION
SHARELOCKADDRESS | CHAR(20) | Address in memory
SPINLOCKPOOLNAME | CHAR(40) | Name of the spin lock pool used
SHARELOCKINDEX | FIXED(20) | Index in a group of reader-writer locks (share locks) that use the spin lock pool
LASTENTEREDTASKID | FIXED(10) | ID of the task that last gained access to the reader-writer lock (share lock)

More Information

SHARELOCKSTATISTICS, SHARELOCKWAITINGTASKS

Concepts of the Database System, Working Memory Areas

Glossary, Critical Section


load_r3tab - SAP Documentation

Background documentation load_r3tab

The SAP-specific tables are internal tables for the system, and users do not define or change them. They contain information for the SAP application about the state of the database.

Note Note

Normally, this DBM command is executed by the SAP application on a regular basis. Only use this command if you are instructed to do so by technical support.

End of the note.

Prerequisites

You have the server permission ExecLoad or LoadSysTab.

Structure

load_r3tab

Result

OK

<return_code>,<description>

<loader_code>,<command>

<loader_output_lines>

<loader_log_lines>

Values for the Reply Fields
Value | Description
<return_code> | Return code of Database Manager If the value is 0, the DBM command has been executed successfully. For all other values, see Messages
<description> | Message short text
<loader_code> | Return code from Loader
<command> | Executed command line
<loader_output_lines> | Loader message text
<loader_log_lines> | Content summary of Loader log


load_tutorial - SAP Documentation

Background documentation load_tutorial

With this command you can load the demo data into a database.

You can load this demo data into every available SAP MaxDB database at any time.

If you load it into the demo database used in the documentation, it provides you with all the data you need to carry out the actions decribed in the examples and to get the same results.

Prerequisites

You have the server permission ExecLoad or LoadSysTab.

Structure

load_tutorial

Result

OK

<return_code>,<description>

<loader_code>,<command>

<loader_output_lines>

<loader_log_lines>

Values for the Reply Fields
Value | Description
<return_code> | Return code of Database Manager If the value is 0, the DBM command has been executed successfully. For any other value, see Messages.
<description> | Message short text
<loader_code> | Return code from Loader
<command> | Executed command line
<loader_output_lines> | Loader message text
<loader_log_lines> | Content summary of the Loader log

More Information

Concepts of the Database System, Demo Database, Objects in the HOTEL Schema


load_systab - SAP Documentation

Background documentation load_systab

With this command you can update the system tables.

Note Note

You do not need to exeute this command for normal database operation, as the database system has a function for automatically updating the system tables.

As per the default value, this function is on (see auto_load_systab). This means that the system checks whether the system tables need to be updated every time the database is started. If this is the case, the system updates the system tables.

End of the note.

In the event of a support intervention, it may be necessary for you to execute this command. You can use it, for example, to restore system table entries that have been deleted accidentally, without having to stop and restart the database system.

To update the system tables, the name and the password of the database system administrator must be known to Database Manager. If this is not the case, enter this information along with the DBM command for loading the system tables.

Prerequisites

  • You have the server permission ExecLoad or LoadSysTab.

  • The database is in the ONLINE operational state:

Structure

load_systab [-u <sysdba_user>,<sysdba_user_password>]

Options
Option | Description
<sysdba_user> | Name of the database system administrator
<sysdba_user_password> | Password of the database system administrator

Result

OK

0,<err_description>

<loader_code>,<dbm_command>

<loader_output_lines>

<loader_log_lines>

Values for the Reply Fields
Value | Description
<err_description> | Message text
<loader_code> | Return code from Loader
<dbm_command> | DBM command executed
<loader_output_lines> | Loader message text
<loader_log_lines> | Content summary of the Loader log

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB:

>dbmcli –d DEMODB –u OLEG,MONDAY

dbmcli on DEMODB>

Enter the name DBADMIN and the password SECRET of the database system administrator an load the system tables:

dbmcli on DEMODB>load_systab –u DBADMIN,SECRET

OK

0,OK: everything works fine

0,""c:\program files\sdb\demodb\bin\x_python" "c:\program files\sdb\demodb\env

\lsystab.py" -R "c:\program files\sdb\demodb" -d DEMODB -u OLEG,*"

Removing obsolete objects

Installing Loader tables

Installing messages and help

Installing SYSDBA tables

Installing comments for SYSDBA tables

Installing precompiler tables

Installing system tables for R3 backup information

Installing ODBC tables

...

...

More Information

SQL Reference Manual, Syntax Tables


SERVERTASKS - SAP Documentation

Object documentation SERVERTASKS

The system table SYSINFO.SERVERTASKS describes the tasks that are used internally for the parallel processing of SQL statements.

Structure

SERVERTASKS
TASKID | FIXED(10) | ID of the server task
ISASSIGNED | CHAR(3) | Server task has been assigned (YES | NO)
ISRESERVED | CHAR(3) | Server task has been reserved for a task (YES | NO)
LASTJOBDESCRIPTION | CHAR(32) | Description of the job for which a reserved server task is used

More Information

Concepts of the Database System, Tasks


TRANSACTIONHISTORY - SAP Documentation

Object documentation TRANSACTIONHISTORY

This system table SYSINFO.TRANSACTIONHISTORY contains information about active and ended transactions of a database.

Structure

TRANSACTIONHISTORY
TRANSACTIONID | FIXED(15) | ID of the transaction
TASKID | FIXED(10) | ID of the database task
WRITETRANSACTIONID | FIXED(15) | ID of a write transaction
STARTDATE | TIMESTAMP | Start time of the transaction
ENDDATE | TIMESTAMP | End time of the transaction
STATE | CHAR(10) | Status of the transaction (ACTIVE | COMMITTED | ROLLBACKED)
COMMENT | CHAR(2048) | Comment on the transaction

The maximum number of possible entries is determined via the parameter TransactionHistorySize.

More Information

Concepts of the Database System, Transactions


SPINLOCKPOOLSTATISTICS - SAP Documentation

Object documentation SPINLOCKPOOLSTATISTICS

The system table SYSINFO.SPINLOCKPOOLSTATISTICS describes pooled internal lock mechanisms and actions performed using them since the last start of the database.

Structure

SPINLOCKPOOLSTATISTICS
SPINLOCKPOOLNAME | CHAR(40) | Name of the spin lock pool
AVGLOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock – average value within the pool
MINLOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock – minimum value within the pool
MAXLOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock – maximum value within the pool
AVGCOLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock – average value within the pool
MINCOLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock – minimum value within the pool
MAXCOLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock – maximum value within the pool
AVGTOTALSPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU – average value within the pool
MINTOTALSPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU – minimum value within the pool
MAXTOTALSPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU – maximum value within the pool
AVGTOTALYIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU – average value within the pool
MINTOTALYIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU – minimum value within the pool
MAXTOTALYIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU – maximum value within the pool
AVGMAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU – average value within the pool
MINMAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU – minimum value within the pool
MAXMAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU – maximum value within the pool
AVGMAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU – average value within the pool
MINMAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU – minimum value within the pool
MAXMAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU – maximum value within the pool

More Information

SPINLOCKPOOLSTATISTICSRESET


SHARELOCKSTATISTICS - SAP Documentation

Object documentation SHARELOCKSTATISTICS

The system table SYSINFO.SHARELOCKSTATISTICS describes critical sections and their use since the last start of the database.

Structure

SHARELOCKSTATISTICS
SHARELOCKADDRESS | CHAR(20) | Address in memory
EXCLUSIVEACCESSCOUNT | FIXED(20) | Number of exclusive accesses to this critical section
NONEXCLUSIVEACCESSCOUNT | FIXED(20) | Number of non-exclusive accesses to this critical section
COLLISIONCOUNT | FIXED(20) | Number of collisions between a task that is occupying the critical section and another task that is requesting the critical section
WAITCOUNT | FIXED(20) | Number of tasks waiting for access to the critical section
SPINLOCKCOLLISIONCOUNT | FIXED(20) | Number of task collisions in the management of the critical section

More Information

SHARELOCKSTATISTICSRESET, SHARELOCKWAITINGTASKS, SHARELOCKINFORMATION

Concepts of the Database System, Working Memory Areas

Glossary, Critical Section


UNLOADEDSTATEMENTS - SAP Documentation

Object documentation UNLOADEDSTATEMENTS

The system table SYSINFO.UNLOADEDSTATEMENTS contains the SQL statements that, for space reasons, have been moved from the command cache to an internal database file.

Structure

UNLOADEDSTATEMENTS
COMMANDID | CHAR(8) BYTE | Identification of the SQL statement
STATEMENT | CLOB | SQL statement


REGIONINFORMATION - SAP Documentation

Object documentation REGIONINFORMATION

The system table SYSINFO.REGIONINFORMATION describes, for a region, the tasks that own it or are waiting for it.

Structure

REGIONINFORMATION
REGIONNAME | CHAR(16) | Name of region
STATE | CHAR(10) | LOCKED: Task holds region REQUESTED: Task is waiting for the region
TASKID | FIXED(10) | ID of the task that holds or is waiting for the region

More Information

Glossary, Critical Section


SPINLOCKPOOLSTATISTICSRESET - SAP Documentation

Object documentation SPINLOCKPOOLSTATISTICSRESET

The system table SYSINFO.SPINLOCKPOOLSTATISTICSRESET describes pooled internal lock mechanisms and actions performed using them since the last RESET SPINLOCKPOOLSTATISTICS or RESET ALL.

Structure

SPINLOCKPOOLSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
SPINLOCKPOOLNAME | CHAR(40) | Name of the spin lock pool
AVGLOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock – average value within the pool
MINLOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock – minimum value within the pool
MAXLOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock – maximum value within the pool
AVGCOLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock – average value within the pool
MINCOLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock – minimum value within the pool
MAXCOLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock – maximum value within the pool
AVGTOTALSPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU – average value within the pool
MINTOTALSPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU – minimum value within the pool
MAXTOTALSPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU – maximum value within the pool
AVGTOTALYIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU – average value within the pool
MINTOTALYIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU – minimum value within the pool
MAXTOTALYIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU – maximum value within the pool
AVGMAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU – average value within the pool
MINMAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU – minimum value within the pool
MAXMAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU – maximum value within the pool
AVGMAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU – average value within the pool
MINMAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU – minimum value within the pool
MAXMAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU – maximum value within the pool

More Information

SPINLOCKPOOLSTATISTICS


SPINLOCKSTATISTICSRESET - SAP Documentation

Object documentation SPINLOCKSTATISTICSRESET

The system table SYSINFO.SPINLOCKSTATISTICSRESET contains information about internal lock mechanisms since the last start RESET SPINLOCKSTATISTICS or RESET ALL.

Structure

SPINLOCKSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
NAME | CHAR(40) | Name of the spin lock
LOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock
COLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock
SPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU
YIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU
MAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU
MAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU

More Information

SPINLOCKSTATISTICS


param_gethistorynext - SAP Documentation

Background documentation param_gethistorynext

The system displays the content of the database parameter history. If the content was not transferred in full, due to the limited size of the reply packet, use the param_gethistorynext command to display the next reply packet.

If you used options to specify selection criteria when you opened the database parameter history, those criteria are applied to the subsequent DBM command param_gethistorynext as well.

Prerequisites

  • You have opened the database parameter history (see: param_gethistory).

  • You have the server permission ParamRead.

Structure

param_gethistorynext

Result

OK

<header_line>

<param_line>

<param_line>

...

If you receive a reply of only:

OK

<header_line>

then all specified entries have already been displayed.

Values for the Reply Fields
Value | Description
<header_line> | Contains the names of the fields displayed. S stands for STATE and describes the change state of the database parameter.
<param_line> | Contains the values for the fields displayed in the <header_line>, the values are in the same column position as the field name in the <header_line>. Possible statuses are: a: active database parameter c: changed database parameter d: deleted database parameter

More Information

Database Administration, Log Files


param_getvolume - SAP Documentation

Background documentation param_getvolume

Use this command to display the data of an individual volume of the current database.

Prerequisites

You have the server permission ParamRead.

Structure

param_getvolume <vol_no> <vol_mode>

Option | Description
<vol_no> | Number of the volume
<vol_mode> | Mode of the volume Possible values are: DATA | LOG | MLOG DATA: data volume LOG: log volume MLOG: mirrored log volume

Result

OK

<file_name>

<vol_type>

<vol_size>

Values for the Reply Fields
Value | Description
<file_name> | Name of the device/file
<vol_type> | Type of volume (such as file, raw device)
<vol_size> | Size of the volume

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the data for volume number 0001 of the type DATA:

>dbmcli –u OLEG,MONDAY –d DEMODB param_getvolume 0001 DATA

OK

C:\Documents and Settings\All Users\Application Data\sdb\data\DEMODB\data\DISKD0001

F

32768

More Information

Concepts of the Database System, Volumes (Permanent Storage)


param_getvolsall - SAP Documentation

Background documentation param_getvolsall

With this command you can display the data of the database volumes.

Prerequisites

You have the server permission ParamRead.

Structure

param_getvolsall [<vol_mode>]

Options
Option | Description
<vol_mode> | Mode of the volume Possible values are: DATA | LOG | MLOG DATA: data volume LOG: log volume MLOG: mirrored log volume

Result

The data for all volumes of the specified volume mode is displayed.

OK

<parameter_name> <value>

<parameter_name> <value>

...

<vol_name> <vol_size> <vol_type> <file_name>

<vol_name> <vol_size> <vol_type> <file_name>

...

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameters relevant for the volume mode specified
<value> | Parameter value
<vol_name> | Name of the volume
<vol_size> | Size of the volume
<vol_type> | Type of volume (such as file, raw device)
<file_name> | Name of the device/file of the volume

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the data for all volumes of the type DATA:

>dbmcli –u OLEG,MONDAY –d DEMODB param_getvolsall DATA

OK

MaxDataVolumes 64

DATA_VOLUME_NAME_0001 32768 F C:\Documents and Settings\All Users\Application Data\sdb\data\DEMODB\data\DISKD0001

DATA_VOLUME_NAME_0002 32768 F C:\Documents and Settings\All Users\Application Data\sdb\data\DEMODB\data\DISKD0002

...

More Information

Concepts of the Database System, Volumes (Permanent Storage)


param_getproperties - SAP Documentation

Background documentation param_getproperties

Use this command to display all properties and their values for the database parameter specified.

Prerequisites

You have the server permission ParamRead.

Structure

param_getproperties <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<property> <value>

<property> <value>

...

Values for the Reply Fields
Value | Description
<property> | Database parameter property
<value> | Value of the property

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_getvalue - SAP Documentation

Background documentation param_getvalue

With this command you can display the current value of the database parameter specified.

The system outputs an OK message and the value of the parameter as saved in the database parameter file the last time the database was started.

Prerequisites

You have the server permission ParamRead.

Structure

param_getvalue <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<value>

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_getexplain - SAP Documentation

Background documentation param_getexplain

Use this command to display the stored explanatory text for the database parameter.

The system outputs an OK message followed by the explanatory text. The line is empty, if no explanatory text is stored.

Prerequisites

You have the server permission ParamRead.

Structure

param_getexplain <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<explanation_line>

<explanation_line>

...

Values for the Reply Fields
Value | Description
<explanation_line> | Explanatory text

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_gethelp - SAP Documentation

Background documentation param_gethelp

Use this command to display the stored help text for the database parameter specified.

The system outputs an OK message followed by the line with the stored help text. The line is empty if no help text is available.

Prerequisites

You have the server permission ParamRead.

Structure

param_gethelp <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<help_line>

<help_line>

...

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_gettype - SAP Documentation

Background documentation param_gettype

Use this command to display the data type of a parameter.

The system displays an OK message followed by the data type of the parameter specified.

Prerequisites

You have the server permission ParamRead.

Structure

param_gettype <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<type>

Values for the Reply Fields
Value | Description
<type> | Data type of the database parameter Possible values are: int2 | int4 | c8 | c18 | c24 | c40 | c64

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_getdefault - SAP Documentation

Background documentation param_getdefault

Use this command to display the system default value for the database parameter specified.

The system outputs an OK message and a line showing the system default value. If no default value exists for the database parameter, the line is empty.

Prerequisites

You have the server permission ParamRead.

Structure

param_getdefault <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<default>

Values for the Reply Fields
Value | Description
<default> | System default value

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


SESSIONS - SAP Documentation

Object documentation SESSIONS

The SYSINFO.SESSIONS system table describes the connection between an application and a database task.

Structure

SESSIONS
SESSIONID | FIXED(10) | Identification of the database session
OWN | CHAR(3) | Current database session (YES | NO)
SESSIONTYPE | CHAR(4) | OLTP: OLTP database LVC: Database with SAP liveCache technology
ENCRYPTION | CHAR(3) | Specifies whether SSL is used for data encryption (SSL | NO) SSL: Data encryption using SSL NO: No data encryption using SSL
STARTDATE | TIMESTAMP | Start time of database session
APPLICATIONNODE | CHAR(64) | Name of the computer on which the application is running
APPLICATIONPROCESS | FIXED(10) | Operating system ID of the application
APPLICATIONTYPE | CHAR(3) | Identification of the tool or interface that the application is using
USERNAME | CHAR(32) | Name of the database user
IDENTIFICATIONTYPE | CHAR(8) | Type of identification (LOCAL | EXTERNAL) LOCAL: Internal identification EXTERNAL: External identification
AUTHENTICATIONMETHOD | CHAR(8) | Authentication method (PASSWORD | OS | GSSAPI | KERBEROS)
AUTHENTICATIONMECHANISM | CHAR(32) | OID of authentication mechanism
AUTHENTICATEDIDENTITY | CHAR(32) | Name of the authenticated identity
PEERPROCESSID | FIXED(10) | Identification of the communication partner of the database task
CONNECTSTATE | CHAR(32) | Connection status
TASKID | FIXED(10) | Identification of the database task
OMSHEAPUSEDSIZE | FIXED(20) | Memory consumption in the OMS heap (KB)
TRACE | CHAR(3) | A database trace is written for this database session/all database sessions (YES|NO)
CATALOGCACHEUSEDSIZE | FIXED(10) | Space used by the catalog cache assigned to the database session (KB)
USEDTEMPORARYSIZE | FIXED(10) | Space used for temporary information from your database session (KB)
PAGINGFILEUSEDSIZE | FIXED(10) | Size of the paging file in which information displaced from the catalog cache is written (KB)
SQLMODE | CHAR(8) | SQL mode of your database session (INTERNAL | ORACLE)
ISOLATIONLEVEL | FIXED(3) | Isolation level of your database session (0-3)
TIMEOUT | FIXED(10) | Timeout value for your database session
DATEFORMAT | CHAR(50) | Date and time format for your database session
DEFAULTCODE | CHAR(8) | Default value for the code attribute of the database session
CURRENTSCHEMANAME | CHAR(32) | Name of the current schema of the database session
CURRENTCOMMANDID | CHAR(8) BYTE | Identification of the currently executed SQL statement

More Information

Evaluating System Tables, SESSIONS

Documentation Concept of the Database System

Glossary, OMS Heap, SSL/TLS


OPTIMIZERINFORMATION - SAP Documentation

Object documentation OPTIMIZERINFORMATION

The system table SYSINFO.OPTIMIZERINFORMATION contains information about value distributions that is determined by the UPDATE STATISTICS statement or read from system table FILES. The information in system table OPTIMIZERINFORMATION is used by the SQL Optimizer.

Structure

OPTIMIZERINFORMATION
SCHEMANAME | CHAR(32) | Name of the schema of the table
TABLENAME | CHAR(32) | Name of the table
COLUMNNAME | CHAR(32) | Name of a single, non-indexed column
INDEXNAME | CHAR(32) | Name of the index
DISTINCTVALUECOUNT | FIXED(10) | Number of distinct values in column, index, or primary key
CALCULATEDSIZE | FIXED(10) | Memory requirements of (primary key) index calculated by last UPDATE STATISTICS (KB)

For tables and columns the value DISTINCTVALUECOUNT is determined or updated executing the UPDATE STATISTICS statement. For indexes the value DISTINCTVALUECOUNT is read from system table FILES.

The database system administrator is allowed to get information from the system table OPTIMIZERINFORMATION for all database users.

More Information

  • FILES

  • SQL Reference Manual, UPDATE STATISTICS Statement (update_statistics_statement), EXPLAIN Statement (explain_statement)

  • Concepts of the Database System, SQL Optimizer

  • Database Administration in CCMS, SQL Optimizer in CCMS, Scheduling Updates of the SQL Optimizer Statistics


SNAPSHOTS - SAP Documentation

Object documentation SNAPSHOTS

The system table SYSINFO.SNAPSHOTS contains information about a defined view (snapshot) of the data.

Structure

SNAPSHOTS
ID | FIXED(10) | Current converter version when the snapshot was defined
CREATEDATE | TIMESTAMP | Time at which the snapshot was defined
USEDSIZE | FIXED(20) | Amount of data used for the snapshot (KB)
MAXNEEDEDSIZE | FIXED(20) | Maxium obtainable snapshot size if there was one change to all pages which existed when the snapshot was made (KB)
TRANSACTIONCONSISTENT | CHAR(3) | The snapshot contains no open transactions (YES) or does contain open transactions (NO)
COMMENT | CHAR(60) | Additional Notes

More Information

Database Administration in CCMS, Snapshots

Database Administration, Snapshot of the Data Area


SPINLOCKSTATISTICS - SAP Documentation

Object documentation SPINLOCKSTATISTICS

The system table SYSINFO.SPINLOCKSTATISTICS contains information on internal lock mechanisms since the last start of the database system.

Structure

SPINLOCKSTATISTICS
NAME | CHAR(40) | Name of the spin lock
LOCKCOUNT | FIXED(20) | Number of attempts to get the spin lock
COLLISIONCOUNT | FIXED(20) | Number of failed attempts to get the spin lock
SPINLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock without prior release of the CPU
YIELDLOOPCOUNT | FIXED(20) | Number of attempts to get the spin lock after prior release of the CPU
MAXSPINLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock without prior release of the CPU
MAXYIELDLOOPCOUNT | FIXED(20) | Maximum number of attempts to get the spin lock after prior release of the CPU

More Information

SPINLOCKSTATISTICSRESET


VERSION - SAP Documentation

Object documentation VERSION

The system table SYSINFO.VERSION describes the version of the database software.

Structure

VERSION
OPERATINGSYSTEM | CHAR(64) | Name of the operating system
PROCESSORTYPE | CHAR(64) | Name of processor manufacturer
ADDRESSINGMODE | FIXED(2) | Indicates whether a 32 bit or 64 bit platform is being used
ID | CHAR(40) | Current version, including build level
MAJORVERSION | FIXED(2) | Number of major version
MINORVERSION | FIXED(2) | Number of minor version
CORRECTIONLEVEL | FIXED(2) | Number of correction level
BUILD | FIXED(2) | Build level
KERNELVARIANT | CHAR(8) | Kernel variant (SLOW | FAST)

More Information

Evaluating System Tables, VERSION

Glossary, Version


TASKGROUPSTATISTICSRESET - SAP Documentation

Object documentation TASKGROUPSTATISTICSRESET

The system table SYSINFO.TASKGROUPSTATISTICSRESET contains information about task groups and their resource consumption since the last RESET TASKGROUPSTATISTICS or RESET ALL.

Structure

TASKGROUPSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
TASKGROUPID | FIXED(10) | Identification of the task group
MAXUSEDRUNQUEUELENGTH | FIXED(10) | Maximum number of tasks lined up for CPU assignment
DISPATCHCOUNT | FIXED(20) | Number of task scheduler calls
TASKSWITCHCOUNT | FIXED(20) | Number of task switches in this task group
COMMANDCOUNT | FIXED(20) | Number of commands executed by the tasks of this task group
IDLECOUNT | FIXED(20) | Number of time intervals in which the CPU was released
IDLETIME | FIXED(20) | Total time for which the CPU was released (µs)
IOWAITCOUNT | FIXED(20) | Number of time intervals in which waits for outstanding I/O operations occurred
IOWAITTIME | FIXED(20) | Total wait time for outstanding I/O operations (µs)
USEDSYSTEMTIME | FIXED(20) | Total CPU time used in system mode (µs)
USEDUSERTIME | FIXED(20) | Total CPU time used in user mode (µs)

More Information

TASKGROUPSTATISTICS

Concepts of the Database System, Tasks


MACHINECONFIGURATION - SAP Documentation

Object documentation MACHINECONFIGURATION

The system table SYSINFO.MACHINECONFIGURATION contains information about the configuration of the computer on which the database is installed.

Structure

MACHINECONFIGURATION
CPUNUMBER | FIXED(5) | Number of CPUs
PHYSICALCPUNUMBER | FIXED(5) | Number of physically available CPU IDs assigned by the operating system
PHYSICALMEMORYSIZE | FIXED(10) | Size of physical memory (MB)
VIRTUALMEMORYSIZE | FIXED(10) | Size of virtual memory (MB)


TASKLOADBALANCINGTASKMOVES - SAP Documentation

Object documentation TASKLOADBALANCINGTASKMOVES

The SYSINFO.TASKLOADBALANCINGTASKMOVES system table describes the history of the task group move.

Structure

TASKLOADBALANCINGTASKMOVES
MOVETIME | TIMESTAMP | Time of the task group move
TASKID | FIXED(10) | ID of the task that moved between two task groups
MAXTASKRUNNABLETIME | FIXED(20) | Maximum time within the measurement interval (µs) for which the task was runnable
SOURCETASKGROUP | FIXED(10) | ID of the source task group
SOURCEMAXTASKRUNNABLETIME | FIXED(20) | Maximum time within the measurement interval (µs) for which a task in the source task group was runnable
DESTINATIONTASKGROUP | FIXED(10) | ID of the destination task group
DESTINATIONMAXTASKRUNNABLETIME | FIXED(20) | Maximum time within the measurement interval (µs) for which a task in the destination task group was runnable

More Information

Concepts of the Database System, Task Switching


TASKLOADBALANCINGTASKGROUPSTATES - SAP Documentation

Object documentation TASKLOADBALANCINGTASKGROUPSTATES

The system table SYSINFO.TASKLOADBALANCINGTASKGROUPSTATES contains information about the task load balancing values of the individual task groups in the current measurement interval.

Structure

TASKLOADBALANCINGTASKGROUPSTATES
TASKGROUPID | FIXED(10) | ID of the task group
MOVETASKTOTASKGROUPID | FIXED(10) | ID of the target task group to which a task of the task group (TASKGROUPID) is to be moved
MOVEABLETASKCOUNT | FIXED(10) | Number of tasks in the task group that allow a task group move
INTERVALSTARTTIME | TIMESTAMP | Start time of the current measurement interval
TASKGROUPSLEEPTIME | FIXED(20) | Time (µs) within the measurement interval in which the task group was in sleep state (sleep on semaphore)
TOTALTASKRUNNABLETIME | FIXED(20) | Total time (µs) within the measurement interval for which the tasks of the task group were runnable
MAXTASKRUNNABLETIME | FIXED(20) | Maximum time (µs) within the measurement interval for which the tasks of the task group were runnable

More Information

Concepts of the Database System, Load Balancing between User Kernel Threads


TASKLOADBALANCINGINFORMATION - SAP Documentation

Object documentation TASKLOADBALANCINGINFORMATION

The system table SYSINFO.TASKLOADBALANCINGINFORMATION describes the current task load balancing parameters and provides information about the current measurement interval for task load balancing.

Structure

TASKLOADBALANCINGINFORMATION
MEASUREMENTINTERVALTIME | FIXED(10) | Measurement interval (s) between task load balancing operations and evaluations
INTERVALSTARTTIME | TIMESTAMP | Start time of the current measurement interval
MEASUREMENTINTERVALS | FIXED(10) | Number of measurement intervals since the database kernel was started
VALUEEQUALITY | FIXED(3) | Percentage that indicates the maximum tolerance range allowed when time values are compared. If the time difference of two runnable tasks is within this tolerance range, the time values are regarded as identical.
MINDIFFERENCE | FIXED(3) | Percentage by which a task to be moved must be runnable for longer in its task group than the longest runnable task of the destination task group

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases, Task Switching


MACHINEUTILIZATION - SAP Documentation

Object documentation MACHINEUTILIZATION

The system table SYSINFO.MACHINEUTILIZATION contains information about the utilization of the computer on which the database is installed.

Structure

MACHINEUTILIZATION
PHYSICALMEMORYUSABLE | FIXED(10) | Size of free physical memory (MB)
VIRTUALMEMORYUSABLE | FIXED(10) | Size of free virtual memory (MB)
PROCESSUSEDUSERTIME | FIXED(10) | Time the database kernel process has spent in user mode since the database was started (s)
PROCESSUSEDSYSTEMTIME | FIXED(10) | Time the database kernel process has spent in system mode since the database was started (s)
MACHINEUSEDUSERTIME | FIXED(10) | Time the computer has spent in user mode since it was started (s)
MACHINEUSEDSYSTEMTIME | FIXED(10) | Time the computer has spent in system mode since it was started (s)
MACHINEIDLETIME | FIXED(10) | Time the computer has spent in idle mode since it was started (s)
MACHINEIOWAITTIME | FIXED(10) | Time the computer has waited for I/O since it was started (s)
CPULOAD | CHAR(12) | CPU load on the computer


RESTARTINFORMATION - SAP Documentation

Object documentation RESTARTINFORMATION

The system table SYSINFO.RESTARTINFORMATION contains all information relevant to restarting.

Structure

RESTARTINFORMATION
BADINDEXCOUNT | FIXED(5) | Number of indexes only available after recreation
RESTARTCONVERTERVERSION | FIXED(10) | Converter version valid for the restart
LASTSAVEPOINTID | FIXED(10) | Number of the last savepoint
LASTSAVEPOINTREASON | CHAR(20) | Reason for the last savepoint
LASTSAVEPOINTDATE | TIMESTAMP | Time of last savepoint
OPENTRANSACTIONCOUNT | FIXED(10) | Number of open transactions
OPENTRANSACTIONFILEROOT | FIXED(10) | File root for the open transactions
HISTORYDIRECTORYROOT | FIXED(10) | History directory file root
FILEDIRECTORYROOT | FIXED(10) | Root of the file directory
LOBDIRECTORYROOT | FIXED(10) | Root of the file directory for LOB files
RESTARTIOSEQUENCE | FIXED(10) | Restart starting point (part 1)
RESTARTOFFSETOFPAGEONVOLUME | FIXED(10) | Restart starting point (part 2)
RESTARTOFFSETOFENTRYINPAGE | FIXED(10) | Restart starting point (part 3)
RESTARTENTRYTYPE | CHAR(20) | Restart starting point (part 4)
RESTARTENTRYDATE | TIMESTAMP | Time/starting point for the restart
CYCLERELATEDENDOFFSET | FIXED(10) | Last valid position in the log area that can be described
LASTKNOWNSEQUENCE | FIXED(10) | Last known write position in the log area (part 1)
LASTKNOWNOFFSET | FIXED(10) | Last known write position in the log area (part 2)
DATABASEIDENTIFIER | CHAR(100) | Database identification
LASTSAVEPOINTRELEASEVERSION | CHAR(40) | Version at the time of the last savepoint
INSTALLSERVERDBVERSION | CHAR(40) | Version at the time of the database installation

More Information

Concepts of the Database System, Example: Restart


IOTHREADSTATISTICS - SAP Documentation

Object documentation IOTHREADSTATISTICS

The system table SYSINFO.IOTHREADSTATISTICS contains information about all I/O operations per volume queue since the last start of the database.

Structure

IOTHREADSTATISTICS
VOLUMEID | FIXED(10) | Volume identification of the runtime environment
QUEUEID | FIXED(10) | Queue index on a volume (0-based)
VOLUMETYPE | CHAR(1) | Volume type (L: log, D: data, T: trace, M: mirrored log)
READCOUNT | FIXED(20) | Number of reads
READPAGECOUNT | FIXED(20) | Number of pages read during the read process
READTIME | FIXED(20) | Total time of the read operation with active time measurement (µs)
READTIMEMEASUREMENTCOUNT | FIXED(20) | Number of measured reads
WRITECOUNT | FIXED(20) | Number of write operations
WRITEPAGECOUNT | FIXED(20) | Number of pages written during the read process
WRITETIME | FIXED(20) | Total time of the write operation with active time measurement (µs)
WRITETIMEMEASUREMENTCOUNT | FIXED(20) | Number of measured write operations
PENDINGIOCOUNT | FIXED(5) | Number of pending I/O calls
MAXPENDINGIOCOUNT | FIXED(5) | Maximum number of pending I/O calls
QUEUEPRIORITY | CHAR(6) | Queue priority (LOW | MEDIUM | HIGH) which can include I/O requests of the same or lower priority
LOADAVG | FIXED(16) | Average number of I/O requests in this queue per second
PATH | CHAR(256) | Name of the disk space area on which the I/O calls are executed

More Information

IOTHREADSTATISTICSRESET


IOTHREADSTATISTICSRESET - SAP Documentation

Object documentation IOTHREADSTATISTICSRESET

The system table SYSINFO.IOTHREADSTATISTICSRESET contains information about all I/O operations per volume queue since the last RESET IOTHREADSTATISTICS or RESET ALL.

Structure

IOTHREADSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
VOLUMEID | FIXED(10) | Volume identification of the runtime environment
QUEUEID | FIXED(10) | Queue index on a volume (0-based)
VOLUMETYPE | CHAR(1) | Volume type (L: log, D: data, T: trace, M: mirrored log)
READCOUNT | FIXED(20) | Number of reads
READPAGECOUNT | FIXED(20) | Number of pages read during the read process
READTIME | FIXED(20) | Total time of the read operation with active time measurement (µs)
READTIMEMEASUREMENTCOUNT | FIXED(20) | Number of measured reads
WRITECOUNT | FIXED(20) | Number of write operations
WRITEPAGECOUNT | FIXED(20) | Number of pages written during the read process
WRITETIME | FIXED(20) | Total time of the write operation with active time measurement (µs)
WRITETIMEMEASUREMENTCOUNT | FIXED(20) | Number of measured write operations
PENDINGIOCOUNT | FIXED(5) | Number of pending I/O calls
MAXPENDINGIOCOUNT | FIXED(5) | Maximum number of pending I/O calls

More Information

IOTHREADSTATISTICS


BACKUPTHREADS - SAP Documentation

Object documentation BACKUPTHREADS

The system table SYSINFO.BACKUPTHREADS contains information about I/O operations of the last backup or the current one.

Structure

BACKUPTHREADS
THREADID | FIXED(10) | ID of the thread in the operating system
THREADNAME | CHAR(16) | Name of the thread
AUTOMATICLOGBACKUP | CHAR(3) | The automatic backup of the log has been enabled (YES | NO)
IODIRECTION | CHAR(6) | I/O type (READ | WRITE)
IOCOUNT | FIXED(20) | Number of I/O operations
IOPAGECOUNT | FIXED(20) | Number of pages read/written during the I/O operation
IOTIME | FIXED(20) | Total time of the I/O operations with active time measurement (µs)
IOTIMEMEASUREMENTCOUNT | FIXED(20) | Number of measured I/O operations
PENDINGIOCOUNT | FIXED(5) | Number of pending I/O calls
MAXPENDINGIOCOUNT | FIXED(5) | Maximum number of pending I/O calls
PATH | CHAR(256) | Name of the data medium on which the I/O calls are executed


DATACACHE - SAP Documentation

Object documentation DATACACHE

The system table SYSINFO.DATACACHE describes the areas of the data cache.

Structure

DATACACHE
USABLESIZE | FIXED(20) | Size of the data cache (KB)
USEDSIZE | FIXED(20) | Used area of the data cache (KB)
MAXUSEDSIZE | FIXED(20) | Maximum used area of the data cache (KB)
OMSDATASIZE | FIXED(20) | Size of the area of the data cache that is used for storing the OMS data (KB)
OMSUNLOADEDVERSIONSIZE | FIXED(20) | Size of the OMS versions that were displaced from the main memory for space reasons (KB)
HISTORYDATASIZE | FIXED(20) | Size of the area of the data cache that is required for consistent reads and transaction management (KB)
SQLDATASIZE | FIXED(20) | Size of the area of the data cache that is not required either for OMS or for consistent reads and transaction management (KB)
CHANGEDDATASIZE | FIXED(20) | Amount of changed data since the last savepoint that has to be written to data area at next savepoint (KB)
PENDINGOPERATIONCOUNT | FIXED(10) | Number of structure-changing operations that need to be included in the next savepoint
USEDPINAREASIZE | FIXED(20) | Size of the area of the data cache that is used for storing data which should not be replaced (KB)

More Information

Database Administratin in CCMS, Caches


param_put - SAP Documentation

Background documentation param_put

With this command you can change database parameter values. If you execute this DBM command, the system implicitly opens a parameter session. The parameter value is changed and checked against the properties, calculation formulas, and conditions stored in the default parameter file. The change to the parameter is then confirmed and entered into the parameter file.

The system rejects the change of the parameter if the specified value or changing the parameter is impermissible due to the parameter properties.

You have the option of defining how long the change is effective:

  • Until the next restart

  • After the next restart only

  • Immediately and permanently

However, changes effective until the next restart can only be defined for database parameters, which have the property CHANGE=RUNNING.

Prerequisites

You have the server permission ParamCheckWrite.

Structure

param_put [<durability>] <parameter_name> <new_value> [<comment>]

<durability> :: = [-running] [-permanent]

Options

Option

Description

<durability>

Permanence of the change

Possible values are: -running | -permanent | -running -permanent

-running: The change is valid immediately but only lasts until the database is next transferred into the OFFLINE operational state, in other words, until the database is next restarted or transferred to the operational state ADMIN. Afterwards the parameter reverts to its original value.

-permanent: The change is only made in the database parameter file. It is not effective immediately. It only becomes effective when the database is restarted.

-running -permanent: The change is effective immediately and persists after a restart.

The system default is -permanent.

<parameter_name>

Name of the database parameter

<new_value>

New parameter value

<comment>

Comment stored for the database parameter

If the comment line contains spaces, put the line in double quotation marks.

Result

OK

In the event of errors, see Reply Format.

More Information

param_getproperties (displays all properties for a database parameter)

Database Administration, Database Parameters


param_startsession - SAP Documentation

Background documentation param_startsession

With this command you open a parameter session to check or change the parameters of a database.

The Database Manager program imports the default parameter file and the database parameter file. Their contents is then stored in internal data structures. This internal data is accessed for all operations in the database session.

Prerequisites

You have the server permission ParamRead.

Structure

param_startsession

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


param_init - SAP Documentation

Background documentation param_init

With this command you initialize all database parameters required to create a new database.

The procedure uses the database name from the Database Manager session. This database must not have a database parameter file yet.

First, all database parameters are filled with their values from the default parameter file.

These initial values are only stored within the Database Manager program. To save the parameters in the database parameter file, you need to check all parameters (see:param_checkall) and confirm them (see: param_commitsession).

Prerequisites

  • You have opened a parameter session (see: param_startsession).

  • You have the server permission InstallMgm.

Structure

param_init [<database_type>]

Options
Option | Description
<database_type> | Database type Possible values are: OLTP | LVC OLTP: SAP MaxDB database LVC: liveCache database The system default is OLTP.

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Creating Databases


param_versions - SAP Documentation

Background documentation param_versions

Use this command to display a list of all the available versions of the database parameter file.

Prerequisites

You have the server permission ParamRead.

Structure

param_versions

Result

OK

<file_name>

<file_name>

...

Options
Option | Description
<file_name> | Name of the version of the database parameter file

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display all versions of the database parameter file:

>dbmcli -u OLEG,MONDAY -d DEMODB param_versions

OK

c:\documents and settings\all users\application data\sdb\data\config\DEMODB

c:\documents and settings\all users\application data\sdb\data\config\DEMODB.01

c:\documents and settings\all users\application data\sdb\data\config\DEMODB.02

c:\documents and settings\all users\application data\sdb\data\config\DEMODB.03

More Information

Database Administration, Configuration Files


param_rmfile - SAP Documentation

Background documentation param_rmfile

Use this command to delete the database parameter file of the current database.

You can use the DBM command param_restore to restore the version of the parameter file that was valid prior to the deleted version.

Caution Caution

Use this command with care.

End of the caution.

Prerequisites

You have the server permission InstallMgm.

Structure

param_rmfile

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Configuration Files


param_restore - SAP Documentation

Background documentation param_restore

With this command you can reset the database parameter file to the specified earlier version of this file. When the database is restarted next, this version will be used as the database parameter file.

You can find the name of the file you require using the DBM command param_versions.

Prerequisites

You have the server permission ParamCheckWrite.

Structure

param_restore <file_name>

Options
Option | Description
<file_name> | Name of the parameter file to which the current database parameter file is to be reset (see: param_versions)

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Configuration Files


scheduler_stop - SAP Documentation

Background documentation scheduler_stop

Use this command to stop the scheduler. Once the scheduler has been stopped, scheduled DBM commands are no longer executed.

Prerequisites

You have the server permission SchedulerMgm.

Structure

scheduler_stop

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and stop the scheduler for the database:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_stop

OK

More Information

Database Administration, Automating Administration Tasks


scheduler_state - SAP Documentation

Background documentation scheduler_state

With this command you can display whether the scheduler function is on or off.

Prerequisites

You have the server permission SchedulerMgm or Scheduling.

Structure

scheduler_state

Result

OK

<state>

Values for the Reply Fields
Value | Description
<state> | State of the scheduler function, possible values are: ON | OFF ON: The scheduler is running and active scheduler jobs are executed. OFF: The scheduler is inactive and does not execute scheduled jobs.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the state of scheduler function:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_state

OK

ON

More Information

Database Administration, Automating Administration Tasks


scheduler_deactivate_job - SAP Documentation

Background documentation scheduler_deactivate_job

With this command you deactivate a scheduler job.

Afterwards, the job remains in the list of scheduler jobs but is no longer executed. Scheduler jobs that were defined as successors of a deactivated job are neither executed any longer.

For deactivating a job, the operational state of the database is irrelevant. Likewise, it is irrelevant whether the scheduler is on or off.

Prerequisites

You have the server permission SchedulerMgm or you are the owner of the job and have the

Scheduling server authorization.

Structure

scheduler_deactivate_job <job_ID>

Options
Option | Description
<job_ID> | Job ID of the Scheduler job to be activated

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, and deactivate the scheduler job with the job ID 1:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_deactivate_job 1

OK

More Information

Database Administration, Automating Administration Tasks


scheduler_activate_job - SAP Documentation

Background documentation scheduler_activate_job

Use this command to activate a scheduler job.

For activating a job, the operational state of the database is irrelevant. Likewise, it is irrelevant whether the scheduler is on or off.

The activated job, however, is only actually executed if the scheduler is on and if you have the server permission for executing the DBM command defined in the job (see: scheduler_start)

Prerequisites

  • The scheduler job, which is to be activated, has been created (see: scheduler_create_job).

  • You have the server permission SchedulerMgm or you are the owner of the job and have the server permission Scheduling.

Structure

scheduler_activate_job <job_ID>

Options
Option | Description
<job_ID> | Job ID of the Scheduler job to be activated

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, activate the scheduler job with the job ID 1:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_activate_job 1

OK

More Information

Database Administration, Automating Administration Tasks


scheduler_delete_job - SAP Documentation

Background documentation scheduler_delete_job

Use this DBM command to delete a scheduler job.

You can delete both active and inactive jobs. Before you do so, however, make sure that the job to be deleted does not have any successors. Otherwise, the DBM command is aborted with an error message.

For deleting a job, the operational state of the database is irrelevant. Likewise, it is irrelevant whether the scheduler is on or off.

Prerequisites

  • The job to be deleted does not have any successors.

  • You have the server permission SchedulerMgm or you are the owner of the job and have the server authorization Scheduling.

Structure

scheduler_delete_job <job_ID>

Options
Option | Description
<job_ID> | Job ID of the Scheduler job to be activated

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, delete the scheduler job with the job ID 1:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_delete_job 1

OK

More Information

Database Administration, Automating Administration Tasks


scheduler_start - SAP Documentation

Background documentation scheduler_start

Use this command to start the scheduler. Only when the scheduler is active, scheduled DBM commands are executed.

The scheduler runs until you stop it with the scheduler_stop command.

Note Note

Transferring the database to the OFFLINE operational state does not stop the scheduler.

End of the note.

Prerequisites

You have the server permissdion SchedulerMgm.

Structure

scheduler_start

Result

OK

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and start the scheduler for this database:

>dbmcli -u OLEG,MONDAY -d DEMODB scheduler_start

OK

More Information

Database Administration, Automating Administration Tasks


scheduler_create_job - SAP Documentation

Background documentation scheduler_create_job

In a scheduler job, you define which DBM command is to be executed and when by Database Manager in the current database.

You can specify when the new job is to be scheduled, and how often or after which job. If you do not specify how often the new job is to be scheduled, the job is scheduled daily at the defined time or every time the job defined as its predecessor is executed.

The DBM operator who created the job is the owner of the job. The system assigns a sequential number for every job created per database.

For creating a job, the operational state of the database is irrelevant. Likewise, it is irrelevant whether the scheduler is on or off.

The new job, however, is only actually executed if the job is active (see: scheduler_activate_job), if the scheduler is on (see: scheduler_start), and if you have the server permission to execute the DBM command defined in the job.

Prerequisites

You have the server permission SchedulerMgm or you are the owner of the job and have the

Scheduling server authorization.

Structure

scheduler_create_job <condition> <dbm_command> [-o | -once]

<condition> :: = <time> | <previous_job_ID>

Options
Option | Description
<dbm_command> | DMB command to be scheduled If it contains spaces, enter the entire DBM command in double quotation marks.
<time> | Execution time of the command. Time format: <hh:mm:ss> (hours:minutes:seconds)
<previous_job_ID> | Job ID of the previous job
-o | -once | The DBM command is executed once only. The job is deleted afterwards.

Result

OK

<job_ID>

Values for the Reply Fields
Value | Description
<job_ID> | ID of the scheduler job issued by the system

In the event of errors, see Reply Format.

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the the password MONDAY, connect to the database DEMODB.

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>

Create a scheduler job to stop the database at 6:00 p.m. this evening:

dbmcli on DEMODB>scheduler_create_job 18:00:00 db_offline -o

OK 0

Create a second scheduler job to start the database at 7:00 p.m. this evening:

dbmcli on DEMODB>scheduler_create_job 19:00:00 db_online -o

OK 1

Create a third scheduler job to ensure that the operational state of the database is always displayed after the database start, that is, after job 1:

dbmcli on DEMODB>scheduler_create_job 1 db_state

OK 2

Create a fourth job to create a DBM operator with the user name ELENA, the password SUNDAY and user attributes like the user OLEG. This job is to be executed once, today at 8:00 a.m.

dbmcli on DEMODB>scheduler_create_job 08:00:00 "user_create ELENA,SUNDAY OLEG" -once

OK

3

More Information

Database Administration, Automating Administration Tasks


recover_req - SAP Documentation

Background documentation recover_req

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


recover_cancel - SAP Documentation

Background documentation recover_cancel

Use this command to cancel an interrupted restore operation or a backup check. The database is transferred to the OFFLINE operational state.

In the reply to this DBM command only the Returncode field is assigned a value.

Prerequisites

  • You have the server permission Backup.

  • You have executed the DBM command for recovering the database (see: recover_start) or for checking a backup (see: recover_check). The operation was interrupted. You are still in the same database session.

Structure

recover_cancel

Result

OK

Returncode <value>

Values for the Reply Fields
Value | Description
<value> | Message number (See: Messages).

In the event of errors, see Reply Format.

More Information

Database Administration, Restoring Databases


recover_volume - SAP Documentation

Background documentation recover_volume

Use this command to take a damaged volume of a volume pair back into operation.

If you mirror the log volumes of a database, and a single log volume fails while the database is running, there are functions available, which enable you to recover the failed volume.

Note Note

Entries, which were only written to the intact volume while the damaged volume was out of action, are not copied.

The mirrored log volume operation is only secure once the recovered volume is operating again. Therefore, carry out a log backup to backup the log entries available only once (see: backup_start).

End of the note.

Prerequisites

  • You have the server permission Recovery.

  • You are operating the database with mirrored log volumes (LOG_MODE: DUAL).

  • You have opened a database session (see: db_connect).

Structure

recover_volume <vol_name>

Options
Option | Description
<vol_name> | Name of the volume

Result

OK

In the event of errors, see Reply Format.


recover_check_req - SAP Documentation

Background documentation recover_check_req

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


recover_cancel_req - SAP Documentation

Background documentation recover_cancel_req

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


recover_ignore_req - SAP Documentation

Background documentation recover_ignore_req

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


recover_replace_req - SAP Documentation

Background documentation recover_replace_req

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


service_release - SAP Documentation

Background documentation service_release

Use this command to end the active service session. All assigned resources are released.

When you close Database Manager, this DBM command is executed implicitly.

Prerequisites

  • You have the server permission Backup.

  • You have started a service session (see service_connect).

Structure

service_release

Result

OK

In the event of errors, see Reply Format.


service_connect - SAP Documentation

Background documentation service_connect

With this command you start the service kernel corresponding to the database software version, and open a database session.

The service kernel is a specially configured database without a data set of its own. You can use it to perform services for other databases, such as checking a backup (see recover_check) or restoring a parameter file from a data backup (see recover_config).

Prerequisites

  • You have the server permission Backup.

  • You are working in the script or session mode.

Structure

service_connect

Result

OK

In the event of errors, see Reply Format.


show - SAP Documentation

Background documentation show

With this command you can display information about the database, including statistics, the operational state, tasks, and so on. For this purpose, the DBM command obtains and outputs information of the XCONS program .

Prerequisites

You have the DBInfoRead server permission.

Structure

show <command>

Options
Option | Description
<command> | XCONS command to be executed You can use all the XCONS commands that begin with show (see: show_list).

Result

OK

[CONTINUE]

<info_record>

<info_record>

Values for the Reply Fields
Value | Description
Continue | More results data is available To display it, use the DBM command show_next.
<info_record> | Information

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the statistics about the access to the database volumes:

>dbmcli -u OLEG,MONDAY -d DEMODB show io

OK

SERVERDB: DEMODB

Volume Devs. Read(s) Write(s) Total

Name No. Count Count Count

knltrace 0 0 1 1

C:\Documents and Set...DEMODB\data\DISKD0001 1 54 59 113

C:\Documents and Set....DEMODB\log\DISKL0001 3 14 14 28

C:\Documents and Set....DEMODB\data\DISKD0003 4 1 9 10

total I/O: 69 83 152

More Information

Utilities, XCONS Options for Displaying Information about the Database


show_next - SAP Documentation

Background documentation show_next

Use this command to display further information about the database.

Prerequisites

  • You have the DBInfoRead server permission.

  • You have executed the DBM command for displaying information about the database (see show). The keyword CONTINUE in the reply indicates that further information is available, which has not yet been displayed because of the limited size of the reply package.

Structure

show_next

Result

OK

[CONTINUE | END]

<info_record>

<info_record>

...

Value | Description
END | The content of the file has been transferred completely. The file is closed automatically.
Continue | The file contains further entries that were not transferred due to the limited size of the reply package. You can call up this data by entering the DBM command again.
<info_record> | Information


show_list - SAP Documentation

Background documentation show_list

Use this command to display the list of all keywords to query information about the database.

Following that, use the corresponding key word to execute the DBM command for displaying the requested information (see: show).

Prerequisites

You have the DBInfoRead server permission.

Structure

show_list

Result

OK

<keyword>

<keyword>

...

Values for the Reply Fields
Value | Description
<keyword> | Keyword for a piece of information about the database


sql_execute - SAP Documentation

Background documentation sql_execute

Use this DBM command to transfer an SQL statement to the database.

Unlike the sql_executenice DBM command, in the reply to this command as many data records as possible are displayed. The quantity of data transferred is limited by the size of the reply package transferred by the DBM server.

With SELECT statements, the system displays the data records of the reply. If not all the data can be displayed because of the limited reply package size, you can use the sql_fetch DBM command to transfer another reply package containing data records. However, this is only possible if you are still in the same database session.

If you specify other SQL statements, the execution of the statement is confirmed with an OK message.

When you execute this command, it implicitly opens a session with the database and ends the session as soon as the command has been executed. This database session is opened in AUTOCOMMIT mode, in other words, each SQL statement you execute is automatically completed with a COMMIT statement.

Recommendation Recommendation

If a series of SQL statements is to be executed and the statements can only be executed by a particular database user, first start an SQL session with the data of this database user (see:sql_connect), execute all SQL statements, and then close either the SQL session (see: sql_release) or Database Manager CLI.

End of the recommendation.

For more information about SQL statements, see the SQL Reference Manual and SQL Tutorial.

Prerequisites

  • You are working in the session mode of Database Manager CLI.

  • You have the server permission AccessSQL.

Structure

sql_execute [<user_type>] <statement>

<user_type> : = user-type=<value>

Options
Options
Option | Description
<statement> | SQL statement
<dabase_user> | Name of the database user
<database_user_password> | Password of the database user
user-type=<value> | User type, possible values are: DBM | DBA | SAP DBM: the first DBM operator DBA: database system administrator SAP: special database user in connection with SAP applications

Result

OK

[END|CONTINUE]

[<record>

<record>

...]

Values for the Reply Fields
Value | Description
END | The complete reply was output.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<record> | Result data of the SQL statements The fields in a data record are separated by semicolons. Character strings are output in single quotation marks.

In the event of errors, see Reply Format.

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the columns of the USERS table with their associated comments:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>sql_execute SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'

OK

END

'OWNER';(LOB)

'GROUPNAME';(LOB)

'USERNAME';(LOB)

'USERMODE';(LOB)

'CONNECTMODE';(LOB)

'MAXTIMEOUT';(LOB)

'COSTWARNING';(LOB)

'COSTLIMIT';(LOB)

'DEFAULTCODE';(LOB)

'CREATEDATE';(LOB)

'CREATETIME';(LOB)

'ALTERDATE';(LOB)

'ALTERTIME';(LOB)

'PWCREADATE';(LOB)

'PWCREATIME';(LOB)

'SERVERDB';(LOB)

'SERVERNODE';(LOB)

'USER_ID';(LOB)

'ISREPLICATIONUSER';(LOB)

'COMMENT';(LOB)

More Information

Concepts of the Database System, SQL


sql_connect - SAP Documentation

Background documentation sql_connect

Use this command to create an SQL session with the database for the specified database user.

If you do not specify a user, the system uses the data of the first DBM operator to create the session. Therefore, only those database statements for which the first DBM operator is authorized, can be executed in this case.

When executing DBM commands that require an SQL session, in most cases the session is opened and closed implicitly. It is therefore unnecessary that you open an SQL session explicitly.

We only recommend using the DBM command for opening an SQL session if you are dealing with SQL statements that can only be executed by a particular database user, or for performance reasons, if you want to transfer a large number of SQL statements.

In this case, open the SQL session and specify the required database user, execute the SQL statements (see:sql_execute) and then close the SQL session (see: sql_release).

Prerequisites

  • You have the server permission DBInfoRead or AccessSQL.

  • You are working in the script or session mode.

Structure

sql_connect <user_identification>

<user_identification> :: = <user_spec> | <user_type>

<user_spec> :: = <database_user_name>,<database_user_password>

<user_type> :: = user-type=<value>

Options
Option | Description
<database_user_name> | Name of the database user
<database_user_password> | Password of the database user
user-type=<value> | User type Possible values are: DBM | DBA | SAP DBM: DBM operator DBA: database administrator SAP: database user of the SAP application

Result

OK

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI in session mode as the operator OLEG with the password MONDAY and connect to the database DEMODB:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>

Start an SQL session for the database operator MONA with the password RED:

dbmcli on DEMODB>sql_connect MONA,RED

OK

More Information

Concepts of the Database System, SQL


sql_updatestat - SAP Documentation

Background documentation sql_updatestat

Use this command to update the statistics for the SQL Optimizer.

You can update all the statistics or restrict the update function to a set of statistics using a table or column specification.

Prerequisites

  • You have the server permission AccessSQL.

  • You have opened a database session (see: db_connect).

Structure

sql_updatestat [<table_or_column_spec>]

Options
Option | Description
<table_or_column_spec> | Table or column specification For possible arguments and key words, see: SQL Reference Manual, UPDATE STATISTICS Statement (update_statistics_statement)

Result

OK

In the event of errors, see Reply Format.

More Information

SQL Optimizer, SQL Optimizer Statistics


sql_recreateindex - SAP Documentation

Background documentation sql_recreateindex

Use this command to re-create the indexes of the database system.

Prerequisites

  • You have the server permission AccessSQL.

  • You have opened a database session (see: db_connect).

Structure

sql_recreateindex [<index_specification>]

<index_specification> :: = <schema>.<table>.<index>

Options
Option | Description
<index_specification> | Index specification <schema>: schema <table>: table name <index>: index name or field name If you do not specify that option, the system re-creates all indexes that are flagged as bad.

Result

OK

In the event of errors, see Reply Format.


sql_info - SAP Documentation

Background documentation sql_info

With this command you can display the structure of the result set of an SQL statement.

The names of all columns are displayed. These are separated by semicolons.

Prerequisites

You have the server permission AccessSQL.

Structure

sql_info <statement>

Options
Option | Description
<statement> | SQL statement

Result

OK

<col_name>;<col_name>;...;<col_name>

Values for the Reply Fields
Value | Description
<col_name> | Name of column

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the DEMODB database, and display the structure of the result set for the SELECT statement , which is used to display the content of the USERS table:

>dbmcli -u OLEG,MONDAY -d DEMODB sql_info SELECT * FROM users

OK

OWNER;GROUPNAME;USERNAME;USERMODE;CONNECTMODE;MAXTIMEOUT;COSTWARNING; COSTLIMIT;DEFAULTCODE;CREATEDATE;CREATETIME;ALTERDATE;ALTERTIME;PWCREADATE;PWCREATIME;SERVERDB;SERVERNODE;USER_ID;ISREPLICATIONUSER;COMMENT

More Information

Concepts of the Database System, SQL


sql_executenice - SAP Documentation

Background documentation sql_executenice

Use his command to transfer an SQL statement to the database.

Unlike the sql_execute command, in the reply to this command one data record after another is displayed.

When you execute this command, it implicitly opens a session with the database and ends the session as soon as the command has been executed. This database session is opened in AUTOCOMMIT mode, in other words, each SQL statement you execute is automatically completed with a COMMIT statement.

After you have executed the SQL statement, the system returns an OK message or displays the first data record of the reply. To display all the other data records one by one, use the sql_fetchnice DBM command.

For more information about SQL statements, see the SQL Reference Manual and SQL Tutorial.

Prerequisites

  • You are working in the session mode of Database Manager CLI.

  • You have the server permission AccessSQL.

Structure

sql_executenice <statement>

Options
Option | Description
<statement> | SQL statement

Result

OK

[END | CONTINUE]

[<record>]

Values for the Reply Fields
Value | Description
END | The complete reply was output.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<record> | A data record of the result of the SQL statement The fields in a data record are separated by semicolons. Character strings are output in single quotation marks.

In the event of errors, see Reply Format.

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the columns of the USERS table one by one together with their associated comments:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>sql_executenice SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'

OK

CONTINUE

COLUMNNAME = 'OWNER'

COMMENT = (LOB)

---

dbmcli on demodb>sql_fetchnice

OK

CONTINUE

COLUMNNAME = 'GROUPNAME'

COMMENT = (LOB)

---

dbmcli on demodb>sql_fetchnice

...

...

More Information

Concepts of the Database System, SQL


sql_updatestat_per_systemtable - SAP Documentation

Background documentation sql_updatestat_per_systemtable

Use this command to update the optimizer statistics of the tables, for which the system determined it was necessary and made an entry in the system table SYSUPDSTATWANTED.

Prerequisites

  • You have the server permission AccessSQL.

  • You have opened a database session (see: db_connect).

Structure

sql_updatestat_per_systemtable

Result

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, SQL Optimizer


sql_fetchnice - SAP Documentation

Background documentation sql_fetchnice

Use this DBM command after executing sql_executenice to display the next data record of the result in the same database session.

Prerequisites

  • You have the server permission AccessSQL.

  • You have executed an SQL statement (see: sql_executenice). The keyword CONTINUE in the reply shows that the data has not yet been completely retrieved.

Structure

sql_fetchnice

Result

OK

[END | CONTINUE]

[<column>=<value>]

[<column>=<value>]

[...]

Values for the Reply Fields
Value | Description
END | The reply was transferred in full.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<column> | Column name
<value> | Column value

Example

Log on to Database Manager CLI in session mode as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the columns of the USERS table one-by-one with comments:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>sql_executenice SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'

OK

CONTINUE

COLUMNNAME = 'OWNER'

COMMENT = (LOB)

---

dbmcli on DEMODB>sql_fetchnice

OK

CONTINUE

COLUMNNAME = 'GROUPNAME'

COMMENT = (LOB)

---

dbmcli on DEMODB>sql_fetchnice

...

...


sql_fetch - SAP Documentation

Background documentation sql_fetch

Use this DBM command after executing sql_execute to display more result data in the same database session.

Prerequisites

  • You have the server permission AccessSQL.

  • You have executed an SQL statement (see: sql_execute). The keyword CONTINUE in the reply indicates that the results data has not yet been displayed completely.

Structure

sql_fetch

Result

OK

[END|CONTINUE]

[<record>

<record>

...]

Values for the Reply Fields
Value | Description
END | The reply was transferred in full.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<record> | Result data of the SQL statements The fields in a data record are separated by semicolons. Character strings are output in single quotation marks.


sql_release - SAP Documentation

Background documentation sql_release

Use this command to close an SQL session. All resources assigned to this session are released by the system.

Prerequisites

You have the server permission AccessSQL or DBInfoRead.

Structure

sql_release

Result

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, SQL


trace_prot - SAP Documentation

Background documentation trace_prot

Use this command to convert the binary version of the database trace to a plain text version. Define the method of the conversion using command options.

The binary version of the database trace has the file name knltrace and is stored in the run directory of the database. The plain text file generated has the file ID KNLTRCPROT.

Prerequisites

  • You have the server permission DBInfoRead or DBFileRead.

  • You have created the database trace (see: trace_on).

  • You have created the binary file of the database trace (see: trace_flush).

Structure

trace_prot <option> | <option_list>

<option_list> :: = <option><option>...

Options
Option | Description
<option> | Command option, controls method of conversion For displaying possible command options see trace_protopt.

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the user OLEG with the password MONDAY, connect to the DEMODB database, create the text version of the database trace for the areas a (Order Interface) and b (Record Interface):

>dbmcli -u OLEG,MONDAY -d DEMODB trace_prot ab

OK

More Information

Database Administration, Traces


trace_protopt - SAP Documentation

Background documentation trace_protopt

With this command you can display the permitted command options for restricting the trace output of the internal database components when creating the text version of the database trace (see: trace_prot).

The system displays a list with the names and descriptions of these command options.

Prerequisites

You have the server permission DBInfoRead or DBFileRead.

Structure

trace_protopt

Result

OK

name,option

<name>,<option>

<name>,<option>

...

Values for the Reply Fields
Value | Description
<name> | Option for generating the log file of the database trace Possible values are: a | b | k | m | e | s | t | x
<option> | Description of option
Database Trace: Options for Generating the Log File
Option | What Is Written to the Log File
a | Trace outputs of the order interface
b | Trace outputs of the data record interface
k | Trace outputs of the table interface
m | Message buffer
e | Number of the trace page and the position of the block on the page for the order interface and the message buffer
s | Information about the processing strategy
t | Results of internal time measurements
x | Additional trace outputs

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the options for creating a text version of the database trace:

>dbmcli -u OLEG,MONDAY -d DEMODB trace_protopt

OK name,option a Order Interface (AK) b Record Interface (BD) k Show Message Block (KB) m Message Block e No Entrypos Output s Strategy t Time x Switch Output (Slow Kernel)

More Information

Database Administration, Traces


trace_flush - SAP Documentation

Background documentation trace_flush

Use this command to write the contents of the current database trace as a binary file under the file name knltrace in the run directory of the database.

To be able to read the file, convert it to a plain-text file (see: trace_prot) first. Then open it with the help of the DBM command file_getfirst.

Prerequisites

You have the server permission DBInfoRead or DBFileRead.

Structure

trace_flush

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Traces


trace_on - SAP Documentation

Background documentation trace_on

Use this command to switch on the database trace and log activities of the database kernel.

To define which activities are to be logged, specify a command option. Some activities allow you to specify a log level. When you have finished your analysis, switch the database trace off.

To be able to evaluate the results of the trace function, create a binary file for the database trace (see: trace_flush) first. Then convert the binary file to a plain text file (see: trace_prot). The file ID of the database trace plain text file is KNLTRC. Open this plain text file using the file_getfirst command.

Note Note

Switching on the database trace has no impact on the performance of SAP MaxDB databases. However, it has a negative effect on the performance of liveCache databases.

End of the note.

Prerequisites

You have the server permission DBInfoRead or DBFileRead.

Structure

trace_on <command_option>

<command_option> :: = <activity_list> | ALL [<level>]

<activity_list> :: = <activity> <activity> ...

<activity> :: = <activity_name> [<level>]

Options
Option | Description
ALL | All activities of the database are logged.
<activity> | Activity for which logging is to be switched on
<level> | Logging level, can be specified for several activities Possible values are 1 to 9. The default value is 5. For information on activities which can be logged and corresponding command options, see trace_show.

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the user OLEG with the password MONDAY, connect to the DEMODB database, switch on the database trace for the areas CHECK_IOMAN and CHECK_LOGPAGE:

>dbmcli -u OLEG,MONDAY –d DEMODB trace_on CHECK_IOMAN CHECK_LOGPAGE

OK

More Information

Database Administration, Traces


trace_show - SAP Documentation

Background documentation trace_show

With this command you can display which database activities are currently logged by the database trace.

Prerequisites

You have the server permission DBInfoRead or DBFileRead.

Structure

trace_show [verbose]

Options
Option | Description
verbose | Extended description for database kernel activities logged with the help of the database trace

Result

OK

<name> <state> <level> <short description>[,<long description>]

<value> <value> <value> <value>

...

...

Values for the Reply Fields
Value | Description
<name> | Name of activity
<state> | Status of logging function Possible values are: ON | OFF ON: activity is logged OFF: activity is not logged
<level> | Logging level, can be specified for several activities. Possible values are 1 to 9. The default value is 5.
<short_description> | Short description of activity
<long_description> | Extended description of activity
<value> | Value

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the database kernel activities currently logged with the extended description:

>dbmcli -u OLEG,MONDAY -d DEMODB trace_show verbose

OK

Name State Level Description

TRACE_AK OFF - Defines whether tracing

of all order packets is switched on (YES/NO)

TRACE_DEFAULT OFF - Defines whether default

tracing is switched on (YES/NO)

TRACE_DELETE OFF - Defines whether tracing

of complete message buffer of DELETE is switched on (YES/NO)

TRACE_INDEX OFF - Defines whether tracing

...

...

More Information

Database Administration, Traces


trace_off - SAP Documentation

Background documentation trace_off

With this command you can determine which activities of the database are no longer to be logged, or you completely deactivate the database trace.

Prerequisites

You have the serverpermission DBInfoRead or DBFileRead.

Structure

trace_off <command_option>

<command_option> :: = <activity_list> | ALL

<activity_list> :: = <activity> | <activity> <activity> ...

Options
Option | Description
ALL | No activities of the database are logged any more. The database trace is fully deactivated.
<activity> | Activity for which logging is to be turned off. To display the corresponding command options or the currently logged activities, see trace_show.

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the user OLEG with the password MONDAY, connect to the DEMODB database, switch off the database trace for the areas CHECK_IOMAN and CHECK_LOGPAGE:

>dbmcli -u OLEG,MONDAY -d DEMODB trace_off CHECK_IOMAN CHECK_LOGPAGE

OK

More Information

Database Administration, Traces


trace_clear - SAP Documentation

Background documentation trace_clear

With this command you can delete the current contents of the database trace.

Use this DBM command to delete data from the database trace, that is no longer required. We recommend that you execute this DBM command before you switch on the database trace to log database activities (see: trace_on).

Prerequisites

You have the server permission DBInfoRead or DBFileRead.

Structure

trace_clear

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Traces


REGIONSTATISTICS - SAP Documentation

Object documentation REGIONSTATISTICS

The system table SYSINFO.REGIONSTATISTICS contains information about regions and their use since the database system was started.

Structure

REGIONSTATISTICS
REGIONNAME | CHAR(16) | Name of region
REGIONID | FIXED(10) | ID of the region
HOLDERTASKID | FIXED(10) | ID of the task holding this region
REQUESTORCOUNT | FIXED(10) | Number of tasks waiting for the region
ACCESSCOUNT | FIXED(20) | Number of accesses to this region
SPINLOCKCOLLISIONCOUNT | FIXED(20) | Number of collisions with internal mechanisms during use of this region
WAITCOUNT | FIXED(20) | Number of collisions that resulted in use of the queue for this region
COLLISIONCOUNT | FIXED(20) | Number of collisions between the task holding the region and another task that is waiting for this region
COLLISIONRATE | FIXED(10) | Number of accesses that led to collisions

More Information

Glossary, Critical Section

REGIONSTATISTICSRESET


REGIONSTATISTICSRESET - SAP Documentation

Object documentation REGIONSTATISTICSRESET

The system table SYSINFO.REGIONSTATISTICSRESET contains information about regions and their usage since the last RESET REGIONSTATISTICS or RESET ALL.

Structure

REGIONSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
REGIONNAME | CHAR(16) | Name of region
ACCESSCOUNT | FIXED(20) | Number of accesses to this region
SPINLOCKCOLLISIONCOUNT | FIXED(20) | Number of collisions with internal mechanisms during use of this region
WAITCOUNT | FIXED(20) | Number of collisions that resulted in use of the queue for this region
COLLISIONCOUNT | FIXED(20) | Number of collisions between the task holding the region and another task that is waiting for this region
COLLISIONRATE | FIXED(10) | Number of accesses that led to collisions

More Information

Glossary, Critical Section

REGIONSTATISTICS


DATASTATISTICSRESET - SAP Documentation

Object documentation DATASTATISTICSRESET

The system table SYSINFO.DATASTATISTICSRESET describes the current fill level of the database and the maximum fill level since the last RESET ALL STATISTICS or RESET DATASTATISTICS.

Structure

DATASTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
USABLESIZE | FIXED(20) | Data area available for data (KB)
MAXUSEDSIZE | FIXED(20) | Maximum data area used for data at a savepoint (KB)
MAXUSEDPERMANENTSIZE | FIXED(20) | Maximum data area used for permanent data at a savepoint (KB)
MAXUSEDTEMPORARYSIZE | FIXED(20) | Maximum data area used for temporary data at a savepoint (KB)

More Information

DATASTATISTICS


COMMANDSTATISTICSRESET - SAP Documentation

Object documentation COMMANDSTATISTICSRESET

The system table SYSINFO.COMMANDSTATISTICSRESET describes SQL statements that are stored in the command cache, and also contains statistical information on the activities of these SQL statements collected since the last RESET COMMANDSTATISTICS or RESET ALL. The command cache contains the SQL statements and their execution plans shared by different database sessions.

Structure

COMMANDSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
COMMANDID | CHAR(8) BYTE | Identification of the SQL statement
PREPARECOUNT | FIXED(10) | Number of execution preparations
EXECUTECOUNT | FIXED(10) | Number of executions
EXECUTETIME | FIXED(20) | Total duration of executions (µs)
AVGEXECUTETIME | FIXED(20) | Average execution time (µs)
MINEXECUTETIME | FIXED(20) | Minimum execution time (µs)
MAXEXECUTETIME | FIXED(20) | Maximum execution time (µs)
READROWCOUNT | FIXED(20) | Number of rows read
QUALIFIEDROWCOUNT | FIXED(20) | Number of qualified rows
VIRTUALREADCOUNT | FIXED(20) | Number of reads in the data cache
PHYSICALREADCOUNT | FIXED(20) | Number of reads in the data cache that triggered reads on the disk
FETCHROWCOUNT | FIXED(20) | Number of rows (in the result tables generated by the SQL statement) sent to the application
SUSPENDCOUNT | FIXED(20) | Number of suspends
WAITCOUNT | FIXED(20) | Number of waits caused by lock collisions
READAHEADREQUESTCOUNT | FIXED(20) | Number of read ahead requests
READAHEADIGNOREREQUESTCOUNT | FIXED(20) | Number of ignored read ahead requests
READAHEADPHYSICALREADPAGECOUNT | FIXED(20) | Number of pages read via read ahead

More Information

COMMANDSTATISTICS


COMMANDCACHESTATISTICSRESET - SAP Documentation

Object documentation COMMANDCACHESTATISTICSRESET

The system table SYSINFO.COMMANDCACHESTATISTICSRESET contains the statistical information collected about the command cache activities since the last RESET COMMANDCACHESTATISTICS or RESET ALL. The command cache contains the SQL statements and their execution plans shared by different database sessions (the following refers to the SQL statement and execution plan collectively as a command).

Structure

COMMANDCACHESTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
USABLESIZE | FIXED(10) | Size of the command cache (KB)
MAXUSEDSIZE | FIXED(10) | Maximum used area of the command cache (KB)
MAXUSEDSIZEPERCENTAGE | FIXED(3) | Maximum used area of the command cache (%)
MAXCOMMANDCOUNT | FIXED(10) | Maximum number of stored commands
INSERTCOMMANDCOUNT | FIXED(10) | Number of inserts
DELETECOMMANDCOUNT | FIXED(10) | Number of deletions
FAILEDALLOCATECOUNT | FIXED(10) | Number of memory requests not fulfilled
CLEANUPCOUNT | FIXED(10) | Number of operations that encountered a lack of space in the main memory
CLEANUPCOMMANDCOUNT | FIXED(10) | Number of commands modified due to lack of space in the main memory
INVALIDATECOUNT | FIXED(10) | Number of data definition statements that made execution plans invalid
UNLOADSTATEMENTCOUNT | FIXED(10) | Number of SQL statements displaced to disk
RELOADSTATEMENTCOUNT | FIXED(10) | Number of SQL statements reloaded to the main memory
DELETEPLANCOUNT | FIXED(10) | Number of execution plans deleted due to lack of space in the main memory
MAXUSEDHASHTABLESLOTCOUNT | FIXED(5) | Maximum number of used slots in the hash table
MAXHASHTABLECHAINENTRYCOUNT | FIXED(5) | Maximum length of the hash entry overflow chains

More Information

COMMANDCACHESTATISTICS


Database Terms - SAP Documentation

Background documentation Database Terms

To determine information about your database system, its objects, structures, status information, and so on, you have to evaluate the relevant system tables. A list of database terms and references to the system tables that can provide the information on the terms is provided below.

Term | Explanation | System Table
Char set (character set) | MapChar set | MAPCHARSETS
Column | Definition, domain, default value, primary key, privilege Indexed column in referential constraint for a table in the view table | COLUMNS INDEXCOLUMNS FOREIGNKEYCOLUMNS VIEWCOLUMNS
Computer | Name Load | USERS MACHINEUTILIZATION
Constraint | NOT NULL columns, primary key in a column or table in a domain referential UNIQUE | COLUMNS CONSTRAINTS DOMAINCONSTRAINTS FOREIGNKEYS INDEXES
Database | of the current database session, information | USERS INSTANCE
Database parameter | current valid | ACTIVECONFIGURATION
Database procedure | Name and additional information parameter | DBPROCEDURES DBPROCPARAMS
Database session | our own and all active roles in the database session active roles | SESSIONS SESSION_ROLES
Default value | for a column for a domain for a role | COLUMNS DOMAINS ROLES
Domain | Name and additional information Constraint for column definition | DOMAINS DOMAINCONSTRAINTS COLUMNS
Foreign key, referential constraint | Name and additional information Columns | FOREIGNKEYS FOREIGNKEYCOLUMNS
Identification | Internal identification of a table Internal identification of a user | TABLES USERS
Isolation level | for current database session | SESSIONS
Key | Primary key Secondary key Foreign key (referential constraint) | COLUMNS FOREIGNKEYCOLUMNS FOREIGNKEYS
Lock | Current Requested | LOCKS LOCK_WAITS
Log area | Load | LOGSTATISTICS
Log queue | Identification and additional information | LOGQUEUESTATISTICS
Mapchar set | Name and additional information | MAPCHARSETS
Migration (upgrade) | Log | POSTUPGRADECHECKLIST
Operating system | for the database instance | VERSION
Parameter | for a database procedure Database Parameters | DBPROCPARAMS ACTIVECONFIGURATION
Privilege | for a role a column a schema a table | ROLEPRIVILEGES COLUMNS SCHEMAPRIVILEGES TABLES TABLEPRIVILEGES
Referential constraint | Name and additional information Columns | FOREIGNKEYS FOREIGNKEYCOLUMNS
Release (version) | Database software | VERSION
Result table | Existence | TABLES
Role | Name and additional information Privilege Active in database session | ROLES ROLEPRIVILEGES SESSION_ROLES
Schema | Name and additional information Privilege | SCHEMAS SCHEMAPRIVILEGES
Sequence | Current value | SEQUENCES
Server node (computer) | Name Load | USERS MACHINEUTILIZATION
Session (database session) | our own and all active roles in the database session active roles | SESSIONS SESSION_ROLES
SQL mode | for current database session | SESSIONS
Statistics | Time and sample value from the last time UPDATE STATISTICS ran | TABLES
Synonym | Synonyms Existence | SYNONYMS TABLES
Table | Name and additional information Definition Synonym Privilege View definition Constraint Referential constraint Index View table Primary key Secondary key Triggers | TABLES COLUMNS SYNONYMS TABLEPRIVILEGES VIEWCOLUMNS CONSTRAINTS FOREIGNKEYS INDEXES VIEWS COLUMNS FOREIGNKEYCOLUMNS TRIGGERS
Timeout | for current database session | SESSIONS
Triggers | Name and additional information | TRIGGERS
UNIQUE | Index | INDEXES
Upgrade | Logs | POSTUPGRADECHECKLIST
User (database user) | Defined current | USERS SESSIONS
Version | Database software and operating system | VERSION
View (view table) | Name and additional information Definition Existence Synonym Tables and columns | VIEWS VIEWDEFS TABLES SYNONYMS VIEWCOLUMNS

More Information

System Tables


user_getrights - SAP Documentation

Background documentation user_getrights

Use this command to display the list of server permissions of the specified DBM operator.

Prerequisites

You have the DBInfoRead server permission.

Structure

user_getrights <dbm_operator> SERVERRIGHTS

Options
Option | Description
<dbm_operator> | Name of the DBM operator

Result

OK

UserMgm <flag> User management

InstallMgm <flag> Install management

SystemCmd <flag> System commands

FileFull <flag> File full access

FileRead <flag> File read access

DBFileRead <flag> Database file read access

AccessUtility <flag> Utility session access

BackupRestore <flag> Backup restore actions

BackupSave <flag> Backup save actions

ParamFull <flag> Parameter full access

ParamCheckWrite <flag> Parameter check-write access

ParamRead <flag> Parameter read access

AccessSQL <flag> SQL session access

ExecLoad <flag> Can execute load

LoadSysTab <flag> Can load system tables

DBStop <flag> Can stop database

DBStart <flag> Can start database

DBInfoRead <flag> Info functions access

Values for the Reply Fields

Values for the Reply Fields
Value | Description
<flag> | Indicates whether the DBM operator has the relevant server permissions. Possible values are: + | - +: Operator has this server permission. -: Operator does not have this server permission.

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, and display the server permissions of the DBM operator ELENA, which was created for this database:

>dbmcli -u OLEG,MONDAY -d DEMODB user_getrights ELENA SERVERRIGHTS

OK

DBInfoRead + Request status data

SystemCmd + Execute operating system commands

ExecLoad + Execute the LOAD program

UserMgm + User management

DBFileRead + Database file access (read only)

Backup + Saving backups

InstallMgm + Installation management

LoadSysTab + Load the system tables

ParamCheckWrite + Parameter access (checked write)

ParamFull + Parameter access (read and write)

ParamRead + Parameter access (read only)

DBStart + Start database instance

DBStop + Stop database instance

Recovery + Restoring backups

AccessSQL + Access to SQL session

AccessUtility + Access to utility session

SharedMemoryMgm + Shared memory management

SchedulerMgm + Scheduler management

Scheduling + Scheduler use

EvtDispMgm + Event Dispatcher management

EvtDisp + Event Dispatcher use

More Information

Glossary, Server Permission

Database Administration, DBM Operators


user_get - SAP Documentation

Background documentation user_get

With this command you can display the DBM operator properties and server permissions for the specified DBM operator, or the database system administrator (The database system administrator is the DBM operator with the most comprehensive rights.).

Prerequisites

You have the DBInfoRead server permission.

Structure

user_get <dbm_operator>

Options
Option | Description
<dbm_operator> | Name of the DBM operator or database system administrator

Result

OK

SERVERRIGHTS=<right_list>

SECONDPASSWORD=[YES|NO]

DISABLED=[YES|NO]

COMMENT=<comment>

USERTYPE=[DBM|DBA]

Values for the Reply Fields
Value | Description
SERVERRIGHTS | All server permissions of the specified user separated by commas
SECONDPASSWORD | Indicates whether a second password has been activated for the DBM operator. Possible values are: YES | NO
DISABLED | Indicates whether the DBM operator is locked. Possible values are: YES | NO
COMMENT | Description
USERTYPE | User type Possible values are: DBA | DBM DBA: Database system administrator DBM: DBM operator

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database and display the server permissions and properties of the DBM operator ELENA:

>dbmcli -u OLEG,MONDAY -d DEMODB user_get ELENA

OK

SERVERRIGHTS=DBInfoRead,ExecLoad,SystemCmd,UserMgm,DBFileRead,Backup,...

SECONDPASSWORD=NO

DISABLED=NO

COMMENT=

USERTYPE=DBM

More Information

Database Administration, Managing Users


user_create - SAP Documentation

Background documentation user_create

Immediately after a database has been created, there is one DBM operator only (the first DBM operator) and the database system administrator. To create further DBM operators for this database, use the user_create command. This defines the operator name and password. This new operator you have created does not have any server permissions so far however. Assign these explicitly to the operator using the user_put command.

Alternatively, when creating the operator, you can specify an existing DBM operator from which you copy all DBM operator properties except name and password.

See Conventions for User Names and Passwords.

Note Note

The database system automatically converts user names and passwords for DBM operators into uppercase letters.

End of the note.

Prerequisites

You have the server permission UserMgm.

Structure

user_create <dbm_operator>,<dbm_operator_password> [<template_user>]

Options
Option | Description
<dbm_operator> | Name of the DBM operator to be created
<dbm_operator_password> | Password of DBM operator to be created
<template_user> | DBM operator from which operator properties are to be copied

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and create the DBM operator ELENA with the password SUNDAY and the permissions of the operator OLEG:

>dbmcli –u OLEG,MONDAY –d DEMODB user_create ELENA,SUNDAY OLEG

OK

More Information

Database Administration, DBM Operators


user_put - SAP Documentation

Background documentation user_put

You can change the properties and server permissions of any DBM operator. This includes the name of the currently logged on DBM operator, as well as the data of the first DBM operator and the database system administrator.

If you change the properties of another DBM operator while this operator is logged on to Database Manager using a different DBM server process, the change does not become effective within that DBM server session. Only when this operator logs on again to Database Manager, the new property definition becomes effective.

Note Note

The database system automatically converts passwords for DBM operators into upper-case letters.

See also Conventions for User Names and Passwords.

End of the note.

Prerequisites

  • You have the server permission UserMgm.

  • If you want to change the password of the database system administrator, the database must be in the ONLINE operational state.

Structure

user_put <dbm_operator> <property_definition>

<property_definition> :: = <property_spec> | <property_spec_list>

<property_spec> :: = <property>=<value>

<property_spec_list> :: = <property>=<value_list>

<value_list> :: = <property>=<value,value,...>

Options
Option | Description
<dbm_operator> | Name of a DBM operator or database system administrator whose properties are to be changed
<property> | Property of the operator Possible values are: PASSWORD | COMMENT | SECONDPASSWORD | DISABLED | SERVERRIGHTS PASSWORD: operator password COMMENT: description SECONDPASSWORD: second operator password DISABLED: operator blocked SERVERRIGHTS: server permission
<value> | Value of the DBM operator property allocated Values for properties: PASSWORD, COMMENT and SECONDPASSWORD: can be freely defined. Possible values for the DISABLED property: YES | NO YES: The operator is locked. NO: The operator is not locked. Possible values for the SERVERRIGHTS property: see Glossary, Server Permission Put a plus sign before the server permission to assign it and a minus sign to revoke it. If you specify more than one server permission, separate them with commas.

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB,

change the password for the DBM operator ELENA to the value SATURDAY, assign the server permission to start databases and revoke the server permission to stop databases:

>dbmcli –u OLEG,MONDAY –d DEMODB user_put ELENA PASSWORD=SATURDAY SERVERRIGHTS=+DBStart,-DBStop

OK

More Information

Glossary, Server Permission

Database Administration, DBM Operators, Database Users


user_delete - SAP Documentation

Background documentation user_delete

Use this command to delete a DBM operator.

You cannot delete the DBM operator currently logged on, the first DBM operator defined when the database was created, or the database system administrator.

If you delete another DBM operator while that operator is logged on to Database Manager using a different DBM server process, the deletion does not become effective within this current DBM server session. However, this operator cannot logon again to Database Manager once its current DBM server session was ended.

Prerequisites

You have the server permissionUserMgm.

Structure

user_delete <dbm_operator>

Options
Option | Description
<dbm_operator> | Name of the DBM operator to be deleted

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the DEMODB database, delete the DBM operator ELENA, which was created for this database:

>dbmcli -u OLEG,MONDAY -d DEMODB user_delete ELENA

OK

More Information

Database Administration, Managing Users


user_getall - SAP Documentation

Background documentation user_getall

With this command you can display the names of all the DBM operators, including the database system administrator, which were created for the current database.

Prerequisites

You have the DBInfoRead server permission.

Structure

user_getall

Result

OK

<dbm_operator_1>

<sysdba_user>

<dbm_operator_2>

...

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display all DBM operators for the database:

>dbmcli -u OLEG,MONDAY -d DEMODB user_getall

OK

DBM

DBADMIN

oleg

elena

More Information

Database Administration, Managing Users


user_rename - SAP Documentation

Background documentation user_rename

With this command you can change the name of a DBM operator. This includes the names of the currently logged on DBM operator, the first DBM operator, and the database system administrator.

If you change the name of another DBM operator while this operator is logged on to Database Manager using a different DBM server process, the change does not become effective within that DBM server session. Only when this operator logs on again to Database Manager, the new name must be specified for a successful logon.

Prerequisites

  • You have the server permission UserMgm.

  • The database is in the correct operational state: You can only change the name of the database system administrator in the ONLINE operational status.

    However, you can change the names of all other DBM operators in any operational state.

Structure

user_rename <dbm_operator> <new_name>

Options
Option | Description
<dbm_operator> | Name of the DBM operator to be changed
<new_name> | New name of the DBM operator

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, change the name of the DBM operator ELENA to JULIE:

>dbmcli -u OLEG,MONDAY -d DEMODB user_rename ELENA JULIE

OK

More Information

Database Administration, Managing Users


user_sap - SAP Documentation

Background documentation user_sap

In exceptional cases it may happen that Database Manager no longer recognizes the operator of an SAP application. In this case, you can re-create this operator in Database Manager.

Note Note

Only use this command if told to do so by technical support.

This command does not create new users.

End of the note.

Prerequisites

UserMgm

Structure

user_sap = <dbm_operator>,<dbm_operator_password>

Options
Option | Description
<dbm_operator> | Name of the DBM operator of the SAP application
<dbm_operator_password> | Password of the DBM operator of the SAP application

Result

OK

In the event of errors, see Reply Format.


user_logon - SAP Documentation

Background documentation user_logon

Use this command to log on to the Database Manager program.

Besides the logon, a DBM server session with the database you want to administer needs to be opened. You can open this session and log on at the same time (one step logon) or first open the session and then log on to Database Manager in a second step (two step logon).

To be able to access a database, connect to the DBM server that is installed on the computer of the database to be administered: If the database is on your local computer, you only need to specify the database name. If the database is located on a remote computer, also specify the name of the database computer when opening the DBM server session.

Structure

Two Step Logon

You can first open the session with the DBM server and then log on to Database Manager.

  1. Open a DBM server session:

    >dbmcli –d <database_name> [-n <database_computer>]

    dbmcli on DEMODB>

  2. Log on to Database Manager:

    dbmcli on DEMODB>user_logon <dbm_operator>,<dbm_operator_password>

    OK

    dbmcli on DEMODB>

One Step Logon

You can perform both logon steps at the same time by using the DBM option –u | -U. When using this option, Database Manager implicitly executes the DBM command user_logon.

Note Note

Note that the option has different meanings depending on whether it is in upper- or lowercase.

End of the note.
Using the DBM Option -u

-u: Logging on with a user name and password

Example Example

>dbmcli -u [<dbm_operator>,<dbm_operator_password>] -d <database_name> [-n <database_computer>]

End of the example.
Using the DBM option -U (logon with XUSER)

-U: Logging on with a user stored in the XUSER file

You can use the XUSER program to store sets of user data as user keys, and use these keys when logging on. User keys for DBM operators can be used successfully only if the operators' data stored in the keys have actually been created for the database in question (see: user_create).

Example Example

>dbmcli -U [<user_key>] -d <database_name> [-n <database_computer>]

End of the example.

If you do not specify a <user_key> when using –U, Database Manager attempts to use the data stored under the DBMUSR user key.

You should therefore create an XUSER entry with the user key DBMUSR and the data of the DBM operator with the most comprehensive permissions (see: -us: Creating or Changing XUSER Entries).

Result

dbmcli on [<database_computer>] : <database_name>

In the event of errors, see Reply Format.

Example

Two Step Logon

  1. Call Database Manager in session mode and connect to the local database DEMODB:

    >dbmcli -d DEMODB

    dbmcli on DEMODB>

  2. Log on as the operator OLEG with the password MONDAY:

    dbmcli on DEMODB>user_logon OLEG,MONDAY

    OK

    dbmcli on DEMODB>

or:

  1. Call Database Manager in session mode and connect to the database MAXDB on the remote computer GENUA:

    >dbmcli -d MAXDB - n GENUA

    dbmcli on GENUA : MAXDB>

  2. Log on as the operator OLEG with the password MONDAY:

    dbmcli on GENUA : MAXDB>user_logon OLEG,MONDAY

    OK

    dbmcli on GENUA : MAXDB>

One Step Logon with User Key and Execution of a DBM Command

Call Database Manager CLI, log on as the operator with the user key OLKEY, connect to the local database DEMODB, and display the operational state of the database:

>dbmcli -U OLKEY -d DEMODB db_state

OK

State

OFFLINE

One Step Logon with Name and Password of a DBM Operator and Execution of a DBM Command

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the operational state of the database:

>dbmcli -u OLEG,MONDAY -d DEMODB db_state

OK

State

OFFLINE

More Information

Glossary, Server Permission

Database Administration, DBM Operators


user_sysdba - SAP Documentation

Background documentation user_sysdba

Use this command to make the database system administrator known to Database Manager. This command is only used if the database system administrator is not known or is incorrectly known to Database Manager.

Note Note

Only use this command if told to do so by technical support.

You cannot define the first DBM operator to be the database system administrator as well.

End of the note.

Prerequisites

You have the server permission UserMgm.

Structure

user_sysdba <sysdba_user>,<sysdba_user_password>

Options
Option | Description
<sysdba_user> | Name of the database system administrator
<sysdba_user_password> | Password of the database system administrator

Result

OK

In the event of errors, see Reply Format.


user_system - SAP Documentation

Background documentation user_system

To enable Database Manager to access a remote computer with operating system rights, log on to the operating system with the help of a DBM command in session mode or script mode.

The user data that you specify will be used once only for the logon. The data will not be stored on the remote computer.

This logon is required to execute the following DBM commands:

DBM Command | Description
db_create | Creating a database
inst_reg | Registering a version of the database software
inst_unreg | Deleting the registration of a database software version
service_register | Registering the service database in the system
service_unregister | Unregistering the service database in the system

Prerequisites

No server permissions are required for executing this DBM command.

Structure

user_system <system_user>,<system_user_password>

Options
Option | Description
<system_user> | System user name
<system_user_password> | System user password

Result

OK

In the event of errors, see Reply Format.


Reply Format - SAP Documentation

Background documentation Reply Format

When a DBM command, or a script with DBM commands is executed in Database Manager, you receive a reply from Database Manager.

The communication is in ASCII format. Only in special cases, such as binary file access, do the request and reply also contain binary data. This makes the replies easy to read on the client side. It also largely avoids dependencies on the hardware architecture.

Result

If the DBM command has been successful, an OK message is output in the following format:

OK[,<description>]

[<answer>]

The character string OK is the first token of the reply. There is an optional explanatory text on the same line.

The reply data is given on the following line. The structure of the reply data depends on the particular DBM command.

If a DBM command results in an error, an error message is output in the following format

ERR[,<description>]

[<err_code>,<err_description>

[<sub_code>,<sub_description>]

[<extended_description>]]

An error always starts with the character string ERR. The same line may also contain an optional description.

The next line may include the error message number (<err_code>) and a relevant text (<err_description>).

If the system has the error message number and relevant text of a subcomponent (for example, runtime environment or operating system), these are output as <sub_code> and <sub_description>.

Any additional information follows in the <extended_description>. Special cases, in which the <extended description> has a structured format, are described with the respective DBM commands. You will find an explanation of individual reply fields there.

Example

Database Manager-Internal Error:

ERR

-24979,ERR_XPNOTFOUND_CN00 : parameter not found

Error in the Runtime Environment:

ERR

-24994,ERR_RTE_CN00 : runtime environment error

3,cannot access PARAM file [32]

Error in the Analysis of the Default Parameter File:

ERR

-24978,ERR_XPSYNTAX_CN00 : xparam syntax error

16,XPERR_IVSEQ_CN21 : error in IF-ELSIF-ELSE sequence

D:\d628\usr\env\cserv.pcf(60) : ELSE

More Information

Messages documentation


backup_ignore - SAP Documentation

Background documentation backup_ignore

A backup, which was carried out using a backup template for a group of parallel data carriers, was interrupted because the system because the system reported that a data carrier is full. As other data still needs to be backed up, the system requests you to replace this data carrier.

Use the backup_ignore command to continue the backup operation without replacing this data carrier. In this case, the remaining data to be backed up is only saved to the other data carriers in the group.

After the system has executed this DBM command, information about the backup is output. The information is only given when the backup operation is finished or is interrupted again. For this reason, the response to this DBM command can take a long time.

Note Note

Pay special attention to the Returncode reply field, which contains a numeric value for a message.

End of the note.

If it is clear from the message number that the backup operation has been interrupted again and not completed, continue the session with a succeeding command (backup_replace, backup_ignore), or terminate the session with backup_cancel.

Prerequisites

  • You have the server permission Backup.

  • You have started backing up the database to a group of parallel data carriers. The backup operation was interrupted because one of the data carriers in the group was reported as full. You are still in the same database session.

Structure

backup_ignore

Result

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Messages documentation

Concepts of the Database System, Backing Up Data


INDEXSIZE - SAP Documentation

Object documentation INDEXSIZE

The system table SYSINFO.INDEXSIZE contains size information about indexes.

Structure

INDEXSIZE
SCHEMANAME | CHAR(32) | Name of the schema
TABLENAME | CHAR(32) | Name of the table
INDEXNAME | CHAR(32) | Name of the index
USEDSIZE | FIXED(20) | Space used by the index (KB)
SECONDARYKEYCOUNT | FIXED(20) | Number of different secondary key values

More Information

FILES


SCHEMASIZE - SAP Documentation

Object documentation SCHEMASIZE

The system table SYSINFO.SCHEMASIZE contains size information about schemas.

Structure

SCHEMASIZE
SCHEMANAME | CHAR(32) | Name of the schema
USEDSIZE | FIXED(20) | Space used for tables and indexes that belong to the schema (KB)

More Information

SCHEMAS

INDEXSIZE

TABLESIZE


INDEXSTORAGEDETAILS - SAP Documentation

Object documentation INDEXSTORAGEDETAILS

The system table SYSINFO.INDEXSTORAGEDETAILS contains information about the structure and size of indexes.

Structure

INDEXSTORAGEDETAILS
SCHEMANAME | CHAR(32) | Name of the schema
TABLENAME | CHAR(32) | Name of the table
INDEXNAME | CHAR(32) | Name of the index
TREELEVELCOUNT | FIXED(3) | Number of B* tree index levels
AVGSEPARATORLENGTH | FIXED(4) | Average separator length
MINSEPARATORLENGTH | FIXED(4) | Minimum separator length
MAXSEPARATORLENGTH | FIXED(4) | Maximum separator length
AVGUSEDSIZEPERCENTAGEINLEAVES | FIXED(3) | Average fill level of the pages that contain data
MINUSEDSIZEPERCENTAGEINLEAVES | FIXED(3) | Minimum fill level of a page that contains data
MAXUSEDSIZEPERCENTAGEINLEAVES | FIXED(3) | Maximum fill level of a page that contains data
AVGSECONDARYKEYLENGTH | FIXED(4) | Average length of the secondary key values
MINSECONDARYKEYLENGTH | FIXED(4) | Minimum length of a secondary key value
MAXSECONDARYKEYLENGTH | FIXED(4) | Maximum length of a secondary key value
AVGROWCOUNTPERSECONDARYKEY | FIXED(10) | Average number of table rows per secondary key
MINROWCOUNTPERSECONDARYKEY | FIXED(10) | Minimum number of table rows per secondary key
MAXROWCOUNTPERSECONDARYKEY | FIXED(10) | Maximum number of table rows per secondary key
CLUSTERCOUNT | FIXED(10) | Number of pages stored in clusters

More Information

FILES

TABLESTORAGEDETAILS

Concepts of the Database System, Logical Access Structures


TABLESIZE - SAP Documentation

Object documentation TABLESIZE

The system table SYSINFO.TABLESIZE contains size information about tables.

Structure

TABLESIZE
SCHEMANAME | CHAR(32) | Name of the schema
TABLENAME | CHAR(32) | Name of the table
USEDSIZE | FIXED(22) | Space used by the table (KB)
ROWCOUNT | FIXED(20) | Number of rows in the table

More Information

FILES


TABLESTORAGEDETAILS - SAP Documentation

Object documentation TABLESTORAGEDETAILS

The system table SYSINFO.TABLESTORAGEDETAILS contains information about the structure and size of tables.

Structure

TABLESTORAGEDETAILS
SCHEMANAME | CHAR(32) | Name of the schema
TABLENAME | CHAR(32) | Name of the table
TREELEVELCOUNT | FIXED(3) | Number of B* tree index levels
AVGSEPARATORLENGTH | FIXED(4) | Average separator length
MINSEPARATORLENGTH | FIXED(4) | Minimum separator length
MAXSEPARATORLENGTH | FIXED(4) | Maximum separator length
AVGUSEDSIZEPERCENTAGEINLEAVES | FIXED(3) | Average fill level of the pages that contain data
MINUSEDSIZEPERCENTAGEINLEAVES | FIXED(3) | Minimum fill level of a page that contains data
MAXUSEDSIZEPERCENTAGEINLEAVES | FIXED(3) | Maximum fill level of a page that contains data
AVGROWCOUNTPERLEAF | FIXED(5) | Average number of table rows per page
MINROWCOUNTPERLEAF | FIXED(5) | Minimum number of table rows on a page
MAXROWCOUNTPERLEAF | FIXED(5) | Maximum number of table rows on a page
AVGROWLENGTH | FIXED(5) | Average length of the table rows
MINROWLENGTH | FIXED(5) | Length of the shortest table row
MAXROWLENGTH | FIXED(5) | Length of the longest table row
AVGUNPACKEDROWLENGTH | FIXED(5) | Average length of the unpacked table rows (For tables with one of the PACKED attributes this column returns the average size of the table's rows after unpacking. For tables that are not packed, this value is the same as in column AVGROWLENGTH.)
DEFINEDLOBCOLUMNCOUNT | FIXED(10) | Number of LOB column values that are not NULL
AVGLOBCOLUMNLENGTH | FIXED(10) | Average length of all potentially existing LOB column values
MINLOBCOLUMNLENGTH | FIXED(10) | Minimum length of an existing LOB column value
MAXLOBCOLUMNLENGTH | FIXED(10) | Maximum length of an existing LOB column value
CLUSTERCOUNT | FIXED(10) | Number of pages stored in clusters
RECORDEXTENSIONPAGECOUNT | FIXED(10) | Number of data pages with records that are longer than 8 KB
SEPARATORCOUNT | FIXED(10) | Number of separators

More Information

FILES

INDEXSTORAGEDETAILS

Concepts of the Database System, Logical Access Structures


Definitions of the System Tables - SAP Documentation

Background documentation Definitions of the System Tables

The database system contains a series of system tables. You will find a definition of some system tables here, which contain information about database objects and their connection to each other, statistics system tables, monitor system tables and loader system tables.

System Tables with Information About Database Objects

The database system contains a series of system tables with information about the database objects and their relationships to each other. These system tables are available in the DOMAIN schema in every SQL mode. You have to specify the schema to access these tables in every SQL mode other than INTERNAL.

DOMAIN System Tables
COLUMNS | CONSTRAINTCOLUMNS | CONSTRAINTS
DBPROCEDURES | DBPROCPARAMS | DOMAINCONSTRAINTS
DOMAINS | FOREIGNKEYCOLUMNS | FOREIGNKEYS
FUNCTIONS | INDEXCOLUMNS | INDEXES
LOCKS | LOCK_WAITS | MAPCHARSETS
PACKAGES | ROLEPRIVILEGES | ROLES
SCHEMAPRIVILEGES | SCHEMAS | SEQUENCEPRIVILEGES
SEQUENCES | SESSION_ROLES | SYNONYMS
SYSTEMTRIGGERS | TABLEPRIVILEGES | TABLES
TRIGGERS | USERS | VIEWCOLUMNS
VIEWDEFS | VIEWS | VIEWTABLES
System Tables with Information About Database States

The database system contains a series of system tables with information about the system configuration and system load. These system tables are available in the SYSINFO schema in every SQL mode. You do not need to specify the schema to access these tables.

SYSINFO System Tables
ACTIVECONFIGURATION | BACKUPTHREADS | CACHESTATISTICS
CATALOGCACHESTATISTICS | COMMANDCACHESTATISTICS | COMMANDCACHESTATISTICSRESET
COMMANDSTATISTICS | COMMANDSTATISTICSRESET | CONSISTENTVIEWOPENTRANSACTIONS
CONSISTENTVIEWS | CONVERTERMAPPING | DATACACHE
DATASTATISTICS | DATASTATISTICSRESET | ‎DATAVOLUMES
FILEDIRECTORIES | FILES | FILESYSTEMS
FREEBLOCKMANAGERBLOCKSTATES | FREEBLOCKMANAGERSECTIONS | FREEBLOCKMANAGERSTATISTICS
FREEBLOCKMANAGERSTATISTICSRESET | HISTORYCLEANUPSTATISTICS | HISTORYCLEANUPSTATISTICSRESET
HOTSTANDBYCOMPONENT | HOTSTANDBYGROUP | INDEXSIZE
INDEXSTORAGEDETAILS | INSTANCE | IOBUFFERCACHES
IOJOBS | IOTHREADSTATISTICS | IOTHREADSTATISTICSRESET
LOCKSTATISTICS | LOCKSTATISTICSRESET | LOCKSTATISTICSRESET
LOGPARTITIONSTATISTICS | LOGQUEUEINFORMATION | LOGQUEUESTATISTICS
LOGQUEUESTATISTICSRESET | LOGSTATISTICS | LOGSTATISTICSRESET
LOGVOLUMES | MACHINECONFIGURATION | MACHINEUTILIZATION
MEMORYALLOCATORDETAILS | MEMORYALLOCATORSTATISTICS | MULTIVERSIONREADSTATISTICS
MULTIVERSIONREADSTATISTICSRESET | OMSPROCEDURESTATISTICS | OMSVERSIONS
OPTIMIZERINFORMATION | PAGELOCKS | REGIONINFORMATION
REGIONSTATISTICS | REGIONSTATISTICSRESET | RESTARTINFORMATION
SCHEMASIZE | SERVERTASKS | SESSIONS
SHARELOCKINFORMATION | SHARELOCKSTATISTICS | SHARELOCKSTATISTICSRESET
SHARELOCKWAITINGTASKS | SNAPSHOTS | SPINLOCKPOOLSTATISTICS
SPINLOCKSTATISTICS | SPINLOCKPOOLSTATISTICSRESET | SPINLOCKSTATISTICSRESET
TABLESIZE | TABLESTORAGEDETAILS | TASKGROUPSTATISTICS
TASKGROUPSTATISTICSRESET | TASKLOADBALANCINGINFORMATION | TASKLOADBALANCINGTASKGROUPSTATES
TASKLOADBALANCINGTASKMOVES | TRANSACTIONHISTORY | TRANSACTIONS
UNLOADEDSTATEMENTS | VERSION |
Statistics System Tables

The database system contains a number of system tables that you can use to select information about the configuration, structures, and sizes of database objects. These statistics system tables are available in the database system administrator schema. You do not need to specify the schema to access these tables.

Statistics System Tables
SYSCHECKSTATISTICSDETAILS | SYSCHECKSTATISTICSLOG | SYSUPDATECOUNTERWANTED
SYSUPDSTATLOG | SYSUPDSTATWANTED |
Monitor System Tables

The database system contains a number of system tables that you can use to access monitor information. These monitor system tables are available in the database system administrator schema. You do not need to specify the schema to access these tables.

The monitor system tables return results for the database system administrator and for all users of the database user class database administrator (DBA user). Unauthorized users receive error message 100 – row not found

Many monitor system tables are structured as follows:

Monitor System Table Structure
DESCRIPTION | CHAR(40)
VALUE | FIXED(20)

Each row contains a counter value that is described by the value contained in the DESCRIPTION column.

Monitor System Tables
COMMANDMONITOR | MONITOR | MONITOR_LOAD
MONITOR_LOB | MONITOR_LOCK | MONITOR_PAGES
MONITOR_REWRITE | MONITOR_ROW | MONITOR_TRANS
Loader System Tables

The database system contains a range of Loader system tables that are used by the Loader. These Loader system tables are available in the SYSLOADER schema. You need to specify the schema SYSLOADER to access these tables.

SYSLOADER System Tables
CODEPAGE | MAPSCHEMANAMES | TRANSFORMATIONMODEL
TRANSFORMATIONMONITOR | TRANSFORMATIONPACKAGES | TRANSFORMATIONRESOURCES
TRANSFORMATIONSTATISTICS | TRANSFORMATIONSTEPS |
System Tables Upgrade

These upgrade system tables are available in the database system administrator schema and are only visible for the database system administrator.

System Tables Upgrade
POSTUPGRADECHECKLIST | POSTUPGRADECHECKLIST<version> | POSTUPGRADECHECKLISTUNICODE
SYSUPGRADEHISTORY |  |

More Information

System Tables


CLASSCONTAINERS - SAP Documentation

Object documentation CLASSCONTAINERS

The system table DOMAIN.CLASSCONTAINERS describes the files and containers in which OMS objects are stored.

Structure

CLASSCONTAINERS
GUID | CHAR(16) BYTE | ID of the C++ class whose objects are stored in the container
CLASS_NAME | CHAR(64) | Name of the C++ class whose objects are stored in the container
OMS_CLASSID | FIXED(10) | GUID expressed as a number
SCHEMANAME | CHAR(32) | Name of the schema to which the container belongs
CONTAINERNO | FIXED(10) | User-defined number of the container
CLASS_ID | CHAR(8) BYTE | ID of the container
SIZE | FIXED(5) | Definition length of the objects stored in this container if the length is not variable (bytes)
KEYSIZE | FIXED(5) | Length of the object key if one exists, otherwise 0 (bytes)
KEYPREFIXSIZE | FIXED(5) | Length of the object key's prefix if a key exists, otherwise 0 (bytes)
KEYFILECOUNT | FIXED(5) | Number of index files used to support key access
PAGECOUNT | FIXED(10) | Size of the container (pages)
FREE_PAGES | FIXED(10) | Number of pages not completely full
EMPTY_PAGES | FIXED(10) | Not relevant
KEY_LEAF_PAGES | FIXED(10) | Number of leaves of the index tree for containers that support key accesses
OBJECTS_PER_PAGE | FIXED(10) | NULL (not relevant)
GARBAGEOBJCHECKED | FIXED(10) | NULL (not relevant)
GARBAGEOBJRELEASED | FIXED(10) | NULL (not relevant)
OCCUPANCY (%) | FIXED(10) | Fill level of the container (%)
FREE_EOT_PAGES | FIXED(10) | NULL (not relevant)
CREATEDATE | TIMESTAMP | Date/time when container was created

More Information

Database Administration in CCMS, Class Containers


POSTUPGRADECHECKLIST - SAP Documentation

Object documentation POSTUPGRADECHECKLIST

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.POSTUPGRADECHECKLIST describes errors that occurred during an upgrade that required the re-execution of SQL statements (for example while attempting to recreate a view table, a trigger or a database procedure). These errors were ignored during the upgrade.

Structure

POSTUPGRADECHECKLIST
UPGRADETYPE | CHAR(40) | Type of upgrade (ImplicitUpgrade | CatalogToUnicode)
SCHEMANAME | CHAR(32) | Name of the schema to which the object was assigned that could not be recovered
OWNER | CHAR(32) | Name of the owner of the object that could not be recovered
UPGRADEDATE | TIMESTAMP | Time at which the recovery of the object failed
ERRORNUMBER | INTEGER | Error code that occurred during recovery
ERRORPOSITION | INTEGER | Error position in the statement
STATEMENT | CLOB | Text of the failed SQL statement

The system table POSTUPGRADECHECKLIST is only visible for the database system administrator.

Following an upgrade, the existing POSTUPGRADECHECKLIST table is renamed POSTUPGRADECHECKLIST<version> and a new POSTUPGRADECHECKLIST table is generated.

If an upgrade is done for a UNICODE database, the upgrade information is stored in the table POSTUPGRADECHECKLISTUNICODE.

More Information

Glossary, Upgrade


SYSUPGRADEHISTORY - SAP Documentation

Object documentation SYSUPGRADEHISTORY

The system table <DATENBANKSYSTEMADMINISTRATOR>.SYSUPGRADEHISTORY indicates when and with which version of the database software an implicit upgrade had to be performed on a certain component; or when the system tables were successfully loaded and with which system table version the load was executed.

Structure

SYSUPGRADEHISTORY
KERNELVERSION | CHAR(40) | Version of the database software
EXECUTEDATE | TIMESTAMP | Time at which the implicit upgrade or the loading of the system tables occurred.
COMPONENT | CHAR(18) | Part of the database kernel for which the implicit upgrade was executed (e.g. CATALOG, CONVERTER, LOGGING)
DESCRIPTION | CHAR(2000) | Additional information about the upgrade or the version of the scripts used for loading the system tables

More Information

Glossary, Upgrade


SYSUPDSTATWANTED - SAP Documentation

Object documentation SYSUPDSTATWANTED

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.SYSUPDSTATWANTED contains entries for the tables for which an UPDATE STATISTICS run is useful.

Structure

SYSUPDSTATWANTED
SCHEMANAME | CHAR(32) | Name of the schema of the table for which an UPDATE STATISTICS run would be useful
OWNER | CHAR(32) | Name of the owner of the table for which an UPDATE STATISTICS run would be useful
TABLENAME | CHAR(32) | Name of the table for which an UPDATE STATISTICS run would be useful
COLUMNNAME | CHAR(32) | Name of the column for which an UPDATE STATISTICS run would be useful
REQUESTTIMESTAMP | TIMESTAMP | Time this row was inserted into the table
INITIATOR | CHAR(32) | Name of user who inserted this row into the table Database Internal: The database system itself inserted this row

The database kernel enters those table columns in the system table SYSUPDSTATWANTED for which an UPDATE STATISTICS run would appear to be useful, using the kernel automatism or the database procedure SYSCHECKSTATISTICS.

If you use the SQL statement UPDATE STATISTICS AS PER SYSTEM TABLE, an UPDATE STATISTICS run is triggered for all the table (columns) contained in SYSUPDSTATWANTED. Subsequently, the entries from table SYSUPDSTATWANTED are deleted.

The system table SYSUPDSTATWANTED can also be changed by database administrators. However, a database administrator can only insert entries that refer to tables owned by this database administrator.

More Information

  • SYSUPDSTATLOG

    SYSCHECKSTATISTICSLOG

    SYSCHECKSTATISTICSDETAILS

  • Database Administration, SQL Optimizer Statistics

  • SQL Reference Manual, UPDATE STATISTICS Statement


SYSUPDATECOUNTERWANTED - SAP Documentation

Object documentation SYSUPDATECOUNTERWANTED

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.SYSUPDATECOUNTERWANTED displays the tables and indexes for which the statistics counters in the file directory should be initialized.

Structure

SYSUPDATECOUNTERWANTED
SCHEMANAME | CHAR(32) | Schema name of the table whose statistics counters are being initialised
TABLENAME | CHAR(32) | Name of the table whose statistics counters are being initialised
INDEXNAME | CHAR(32) | Name of the index whose statistics counters are being initialised
CANCELCOUNT | FIXED(5) | Specifies the number of cancelled attempts to update the statistics for this object

More Information

FILES

Glossary, File Directory (Database-Internal)


MONITOR_TRANS - SAP Documentation

Object documentation MONITOR_TRANS

The monitor system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_TRANS contains information about transactions.

Structure

MONITOR_TRANS, DESCRIPTION Column
Value | Explanation
SQL commands | Number of SQL statements
Write transactions | Number of transactions with change operations
KB calls | Number of requests via the internal communication basis interface

More Information

MONITOR


MONITOR_LOCK - SAP Documentation

Object documentation MONITOR_LOCK

The monitor system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_LOCK contains information about operations performed by the lock management functions of the database system.

Structure

MONITOR_LOCK, DESCRIPTION Column
Value | Explanation
Lock list avg used entries | Average number of entries in the lock list
Lock list max used entries | Maximum number of entries in the lock list
Lock list collisions | Number of lock collisions
Lock list escalations | Number of lock escalations
Lock list inserted row entries | Number of inserted row locks
Lock list inserted table entries | Number of inserted table locks
Detected deadlocks | Number of situations where at least two transactions collided with each other due to held and requested locks in such a way that this collision can be resolved only by implicitly ending a transaction
Request timeouts | Number of lock requests that could not be satisfied because they had exceeded the maximum wait time

More Information

MONITOR

Concepts of the Database System, Locks


MONITOR_REWRITE - SAP Documentation

Object documentation MONITOR_REWRITE

The monitor system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_REWRITE contains information about which query rewrite rules have been used how frequently to simplify an SQL statement.

For the rules to be applied by the application, the QueryAnalysisMode support database parameter must be set to EXTENDED and the EnableQueryRewrite special database parameter must be set to YES.

Structure

MONITOR_REWRITE, DESCRIPTION Column
Value | Explanation
<RULENAME> Possible rules for the query rewrite as mentioned in system table QUERYREWRITERULES in column RULENAME | Number of usages of the rule '<RULENAME>'

The sequence and content of the information in the DESCRIPTION column can change.

More Information

MONITOR

Database Administration, Special Database Parameters, Support Database Parameters


MONITOR_OMS - SAP Documentation

Object documentation MONITOR_OMS

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_OMS describes the activities of DB procedures (OMS procedures) since the last restart.

Structure

MONITOR_OMS
IID | CHAR(40) | Interface ID of component to which the DB procedure belongs
Method name | CHAR(32) | Name of the DB procedure = name of the C++ method that implements the DB procedure
CallCnt | FIXED(20) | Number of DB procedure calls
MinRuntime | FIXED(10) | Minimum runtime per DB procedure call (ms)
MaxRuntime | FIXED(10) | Maximum runtime per DB procedure call (ms)
AvgRuntime | FIXED(10) | Average runtime per DB procedure call (ms)
SumRuntime | FIXED(20) | Total runtime of all DB procedure calls
AvgStreamCommunicationTime | FIXED(10) | Average stream communication runtime per DB procedure call (ms)
SumStreamCommunicationTime | FIXED(20) | Total stream communication runtime per DB procedure call (ms)
OMS_Deref | FIXED(20) | Number of read accesses to the object via the OMS cache
LC_Deref | FIXED(20) | Number of read accesses to the object not satisfied by the OMS cache
KeyDeref | FIXED(20) | Number of key accesses to the object
KeyDerefInVersion | FIXED(20) | Number of key accesses within an OMS version
OMS_Store | FIXED(20) | Number of object change notices in the OMS cache
LC_Store | FIXED(20) | Number of changed objects
OMS_Delete | FIXED(20) | Number of object delete notices in the OMS cache
LC_Delete | FIXED(20) | Number of deleted objects
LC_Lock | FIXED(20) | Number of object lock requests
DerefIter | FIXED(20) | Number of container scans
OMS_Release | FIXED(20) | Number of explicitly released objects in the OMS cache
OMS_ReleaseExecuted | FIXED(20) | Number of object releases actually executed in the OMS cache
LC_LogHops | FIXED(20) | Number of history accesses triggered by read accesses to objects
LC_LogHopsIter | FIXED(20) | Number of history accesses triggered by container scans
Exceptions | FIXED(20) | Number of C++ exceptions
OutOfDateExceptions | FIXED(20) | Number of exceptions triggered by lock requests for non-current objects
Timeouts | FIXED(20) | Number of timeouts with lock requests
OutOfMemoryExceptions | FIXED(20) | Number of occurrences of insufficient memory
SubtransRollbacks | FIXED(20) | Number of subtransactions rolled back
SubtransCommits | FIXED(20) | Number of successfully completed subtransactions
MaxSubtransLevel | FIXED(5) | Maximum subtransaction depth
VarObjectLoad | FIXED(20) | Number of variable-length objects
VarObjectStore | FIXED(20) | Number of changed variable-length objects
AvgVarObjectSize | FIXED(5) | Average length of an object of variable length
OmsCacheSize | FIXED(20) | Memory consumption of the component instance
MaxWaitForNewConsView | FIXED(20) | Maximum wait time for a new consistent view (s)
MinWaitForNewConsView | FIXED(20) | Minimum wait time for a new consistent view (s)
AvgWaitForNewConsView | FIXED(20) | Average wait time for a new consistent view (s)
MallocCnt | FIXED(10) | Number of lock requests
MallocMin | FIXED(10) | Smallest requested memory block (bytes)
MallocMax | FIXED(10) | Largest requested memory block (bytes)
MallocAvg | FIXED(10) | Average size of a requested memory block (bytes)
FreeCnt | FIXED(10) | Number of memory releases
FreeMin | FIXED(10) | Smallest released memory block (bytes)
FreeMax | FIXED(10) | Largest released memory block (bytes)
FreeAvg | FIXED(10) | Average size of a released memory block (bytes)
DeltaAllocMin | FIXED(20) | Minimum memory requirement change for a procedure call
DeltaAllocMax | FIXED(20) | Maximum memory requirement change for a procedure call
DeltaAllocAvg | FIXED(20) | Average memory requirement change per procedure call
OMS_Terminate | FIXED(20) | Number of transaction failures due to unforeseen errors
MinStreamBufferReadReq | FIXED(20) | Minimum number of communications for reading ABAP tables
MaxStreamBufferReadReq | FIXED(20) | Maximum number of communications for reading ABAP tables
AvgStreamBufferReadReq | FIXED(20) | Average number of communications for reading ABAP tables
MinStreamRowReads | FIXED(20) | Minimum number of rows read from ABAP tables
MaxStreamRowReads | FIXED(20) | Maximum number of rows read from ABAP tables
AvgStreamRowReads | FIXED(20) | Average number of rows read from ABAP tables
MinStreamBufferWriteReq | FIXED(20) | Minimum number of communications for writing ABAP tables
MaxStreamBufferWriteReq | FIXED(20) | Maximum number of communications for writing ABAP tables
AvgStreamBufferWriteReq | FIXED(20) | Average number of communications for writing ABAP tables
MinStreamRowWrites | FIXED(20) | Minimum number of rows written to ABAP tables
MaxStreamRowWrites | FIXED(20) | Maximum number of rows written to ABAP tables
AvgStreamRowWrites | FIXED(20) | Average number of rows written to ABAP tables
OmsKeyCacheHit | FIXED(20) | Number of key accesses not satisfied by the key cache
OmsKeyCacheMiss | FIXED(20) | Number of key accesses not satisfied by the key cache
OmsKeyVersion | FIXED(20) | Number of key accesses generated within an OMS version
OmsMaxChainLen | FIXED(20) | Maximum list length of the OMS cache data structure
OmsAvgChainLenSearched | FIXED(5) | Average number of list elements of the OMS cache data structure searched for dereferencing an object
OmsRehash | FIXED(5) | Number of resizings of the OMS cache data structure
OmsLockObjWaits | FIXED(20) | Number of lock collisions
OmsLockObjAvgWaitDelay | FIXED(20) | Average wait time for the release of locks (s)
CreateVersion | FIXED(20) | Number of created OMS versions
OpenVersion | FIXED(20) | Number of open operations on OMS versions
CloseVersion | FIXED(20) | Number of close operations on OMS versions
DropVersion | FIXED(20) | Number of deleted OMS versions
StoreInVersion | FIXED(20) | Number of objects altered within an OMS version
DeleteInVersion | FIXED(20) | Number of objects deleted within an OMS version

More Information

Database Administration in CCMS, DB Procedures, OMS Monitor, Class Containers


MONITOR_LOB - SAP Documentation

Object documentation MONITOR_LOB

The monitor system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_LOB contains information about read and write operations for LOB columns (CLOB/BLOB).

Structure

MONITOR_LOB, DESCRIPTION Column
Value | Explanation
BD read lob | Number of read operations for LOB columns
BD write lob | Number of write operations for LOB columns

More Information

MONITOR

LOB Column


MONITOR - SAP Documentation

Object documentation MONITOR

The <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR table contains information from the monitor system tables MONITOR_LOAD, MONITOR_LOB, MONITOR_LOCK, MONITOR_PAGES, MONITOR_REWRITE, MONITOR_ROW and MONITOR_TRANS. It also contains additional information that is given in more detail in the CACHESTATISTICS, LOGSTATISTICS and LOGQUEUESTATISTICS system tables.

Structure

MONITOR
TYPE | CHAR(8)
DESCRIPTION | CHAR(40)
VALUE | FIXED(20)

More Information

CACHESTATISTICS, LOGSTATISTICS, LOGQUEUESTATISTICS


MONITOR_PAGES - SAP Documentation

Object documentation MONITOR_PAGES

The <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_PAGES monitor system table contains information about accesses to the pages.

Structure

MONITOR_PAGES, DESCRIPTION Column
Value | Explanation
Virtual reads | Number of virtual read operations
Virtual writes | Number of virtual write operations
Physical reads | Number of physical read operations
Physical writes | Number of physical write operations
Catalog virtual read | Number of virtual catalog read operations
Catalog virtual writes | Number of virtual catalog write operations
Catalog physical reads | Number of physical catalog read operations
Catalog physical writes | Number of physical catalog write operations
Perm page virtual reads | Number of virtually read permanent pages
Perm page virtual writes | Number of virtually written permanent pages
Perm page physical reads | Number of physically read permanent pages
Perm page physical writes | Number of physically written permanent pages
Temp page virtual reads | Number of virtually read temporary pages
Temp page virtual writes | Number of virtually written temporary pages
Temp page physical reads | Number of physically read temporary pages
Temp page physical writes | Number of physically written temporary pages
LOB page virtual reads | Number of virtually read pages for LOB columns
LOB page virtual writes | Number of virtually written pages for LOB columns
LOB page physical reads | Number of physically read pages for LOB columns
LOB page physical writes | Number of physically written pages for LOB columns
Leaf page virtual reads | Number of virtually read leaf pages
Leaf page virtual writes | Number of virtually written leaf pages
Leaf page physical reads | Number of physically read leaf pages
Leaf page physical writes | Number of physically written leaf pages
Level1 page virtual reads | Number of virtually read index pages at level 1
Level1 page virtual writes | Number of virtually written index pages at level 1
Level1 page physical reads | Number of physically read index pages at level 1
Level1 page physical writes | Number of physically written index pages at level 1
Level2 page virtual reads | Number of virtually read index pages at level 2
Level2 page virtual writes | Number of virtually written index pages at level 2
Level2 page physical reads | Number of physically read index pages at level 2
Level2 page physical writes | Number of physically written index pages at level 2
Level3 page virtual reads | Number of virtually read index pages at level 3
Level3 page virtual writes | Number of virtually written index pages at level 3
Level3 page physical reads | Number of physically read index pages at level 3
Level3 page physical writes | Number of physically written index pages at level 3
Level4 page virtual reads | Number of virtually read index pages at level 4
Level4 page virtual writes | Number of virtually written index pages at level 4
Level4 page physical reads | Number of physically read index pages at level 4
Level4 page physical writes | Number of physically written index pages at level 4
Level5 page virtual reads | Number of virtually read index pages at level 5
Level5 page virtual writes | Number of virtually written index pages at level 5
Level5 page physical reads | Number of physically read index pages at level 5
Level5 page physical writes | Number of physically written index pages at level 5
Level1 page safeness applied | Number of safeness checks on primary b* tree level one
Level1 page safeness approved | Number of successful safeness checks, i.e. the b* tree structure could be changed without locking the complete b* tree
Converter page virtual reads | Always 0
Converter page virtual writes | Always 0
Converter page physical reads | Number of physically read converter pages
Converter page physical writes | Number of physically written converter pages
Clustered virtual reads | Number of clustered virtual reads
Clustered page virtual reads | Number of virtually read clustered pages
Pages marked for reclustering | Number of pages marked for resolving clusters
Cluster compression segment reads | Number of segments (with size DataIOClusterSize) read by cluster compression to free these segments. Equal to number of I/O calls made for cluster compression.
Cluster compression block reads | Number of blocks read into temporary buffer (physical I/O)
Cluster compression pages handled | Number of pages relevant for cluster compression and set to status changed

More Information

MONITOR


MONITOR_ROW - SAP Documentation

Object documentation MONITOR_ROW

The monitor system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_ROW contains information about operations on the row level.

Structure

MONITOR_ROW, DESCRIPTION Column
Value | Explanation
BD add record perm | Number of rows inserted in permanent tables
BD add record temp | Number of rows inserted in temporary tables
BD repl record perm | Number of rows updated in permanent tables
BD repl record perm optimized | Number of rows updated in permanent tables using optimized access
BD repl record perm optimization failed | Number of rows updated in permanent tables, but the optimized access failed. The leaf page number hint from the qualification test could not be used to update the qualified record.
BD repl record temp | Number of rows updated in temporary tables
BD del record perm | Number of rows deleted from permanent tables
BD del record perm optimized | Number of rows deleted from permanent tables using optimized access
BD del record perm optimization failed | Number of rows deleted in permanent tables, but the optimized access failed. The leaf page number hint from the qualification test could not be used to delete the qualified record.
BD del record temp | Number of rows deleted from temporary tables
BD get record perm | Number of rows selected from permanent tables using the key
BD get record temp | Number of rows selected from temporary tables using the key
BD next record perm | Number of rows selected from permanent tables using the predecessor key
BD next record temp | Number of rows selected from temporary tables using the predecessor key
BD prev record perm | Number of rows selected from permanent tables using the successor key
BD prev record temp | Number of rows selected from temporary tables using the successor key
BD select direct record | Number of rows selected using the key
BD select next record | Number of rows selected using the predecessor key
BD select prev record | Number of rows selected using the successor key
BD add to index list perm | Number of insert operations in permanent indexes
BD add to index list temp | Number of insert operations in temporary indexes
BD del from index list perm | Number of delete operations from permanent indexes
BD del from index list temp | Number of delete operations from temporary indexes
BD get index list perm | Number of accesses to permanent indexes
BD get index list perm parallel | Number of parallel accesses to permanent indexes
BD get index list temp | Number of accesses to temporary indexes

More Information

MONITOR


MONITOR_LOAD - SAP Documentation

Object documentation MONITOR_LOAD

This monitor system table <DATABASE_SYSTEM_ADMINISTRATOR>.MONITOR_LOAD contains information about executed SQL statements and access methods.

Structure

MONITOR_LOAD, DESCRIPTION Column
Value | Explanation
Seconds since last init | Seconds since last initialization of the system table
SQL commands | Number of executed SQL statements
PREPAREs | Number of parsed SQL statements
PREPAREs repeated | Number of SQL statements that were parsed again after metadata was changed
EXECUTEs | Number of executions of previously parsed SQL statements
COMMITs | Number of executed COMMIT statements
ROLLBACKs | Number of executed ROLLBACK statements
LOCKs and UNLOCKs | Number of executed LOCK and UNLOCK statements
SUBTRANS BEGINs | Number of SQL statements for opening a subtransaction
SUBTRANS ENDs | Number of SQL statements for closing a subtransaction
SUBTRANS ROLLBACKs | Number of SQL statements for rolling back a subtransaction
CREATEs | Number of executed SQL statements for creating database objects
ALTERs | Number of executed SQL statements for altering database objects
DROPs | Number of executed SQL statements for dropping database objects
SELECTs and FETCHes | Number of executed SQL statements for accessing data
SELECTs and FETCHes, rows read | Number of rows that were read when accessing data
SELECTs and FETCHes, rows qual | Number of rows that were read when accessing data and that satisfied conditions
INSERTs | Number of executed SQL statements for inserting rows
INSERTs, rows inserted | Number of rows inserted
UPDATEs | Number of executed SQL statements for updating rows
UPDATEs, rows read | Number of rows read when updating data
UPDATEs, rows updated | Number of rows updated
DELETEs | Number of executed SQL statements for deleting rows
DELETEs, rows read | Number of rows read when deleting data
DELETEs, rows deleted | Number of rows deleted
Internal DBPROC calls | Number of database procedures executed
External DBPROC calls | Number of external database procedure calls
Internal trigger calls | Number of triggers executed
External trigger calls | Number of external trigger calls
Primary key accesses | Number of search operations with direct access via the key
Primary key accesses (IN strategy) | Number of search operations with direct access via the key and IN search conditions
Primary key accesses (SUBQ strategy) | Number of search operations with access via the key and subqueries
Primary key accesses, rows read | Number of rows that were read by direct access using the key and that satisfied conditions
Primary key accesses, rows qual | Number of rows that were read by direct access using the key and that satisfied conditions
Primary key range accesses | Number of search operations with accesses within a range of keys
Primary key range accesses, rows read | Number of rows read within a range of keys
Primary key range accesses, rows qual | Number of rows read within a range of keys that satisfied the condition
Index accesses | Number of search operations with accesses to an index
Index accesses (IN strategy) | Number of search operations with accesses to an index and IN search conditions
Index accesses (SUBQ strategy) | Number of search operations with accesses to an index and subqueries
Index scan | Number of index searches
Index accesses, rows read | Number of rows that were indirectly accessed via an index
Index accesses, rows qual | Number of rows that were indirectly accessed via an index and that satisfied the condition
Index range accesses | Number of search operations using an index range
Index range accesses, rows read | Number of rows that were indirectly accessed via an index using an index range
Index range accesses, rows qual | Number of rows that satisfied the condition that were indirectly accessed via an index using an index range
Isolated index accesses | Number of search operations completely or partially satisfied by an index without accessing the corresponding base table rows
Isolated index accesses (IN strategy) | Number of search operations with an IN strategy completely or partially satisfied by an index without accessing the corresponding base table rows
Isolated index accesses (SUBQ strategy) | Number of search operations with a subquery strategy completely or partially satisfied by an index without accessing the corresponding base table rows
Isolated index accesses, rows read | Number of keys accessed within the search operations denoted in ISOLATED INDEX ACCESSES
Isolated index accesses, rows qual | Number of keys that were accessed within the search operations denoted in ISOLATED INDEX ACCESSES and that satisfied the condition
Isolated index range accesses | Number of search operations using a part of an index with values within a range without accessing the rows of the base table
Isolated index range accesses, rows read | Number of primary/secondary keys accessed within the search operations denoted by ISOLATED INDEX RANGE ACCESSES
Isolated index range accesses, rows qual | Number of primary/secondary keys that were accessed within the search operations denoted by ISOLATED INDEX RANGE ACCESSES and that satisfied the condition
Table scans | Number of search operations through the whole base table
Table scans, rows read | Number of rows that were accessed within search operations through the whole base table
Table scans, rows qual | Number of rows that were accessed within search operations through the whole base table and that satisfied the condition
Isolated index scans | Number of search operations for which a complete index was accessed without accessing rows of the base table
Isolated index scans, rows read | Number of index rows accessed within the search operations described under ISOLATED INDEX SCANS
Isolated index scans, rows qual | Number of index rows that were accessed within the search operations described under ISOLATED INDEX SCANS that satisfied the condition
Memory sorts / sort&merge | Number of sorting operations in the main memory to build temporary indexes
Memory sorts / sort&merge, rows read | Number of rows read to build temporary indexes
Sorts by insertion | Number of sorting operations by inserts
Sorts by insertion, rows inserted | Number of rows inserted during the sorting operation
Join via Hash | Number of joins using the hash procedure (hash joins)
Hash join failed because of memory | Number of hash joins that failed due to memory problems
Hash join failed because of small buffer | Number of hash joins that failed due to buffer being too small
Join via parallel index read | Number of joins constructed using parallel index read procedure
Join via standard algorithm | Number of joins constructed using standard algorithms
Join via operator algorithm | Number of joins constructed using operator algorithms

More Information

MONITOR

Concepts of the Database System, SQL Optimizer, Search Strategies for Key Column Search Conditions, Search Strategies for Indexed Column Search Conditions, SUBQ CONDITION FOR KEY, SUBQ CONDITION FOR INDEX


CLASSCONTAINER_ROOTS - SAP Documentation

Object documentation CLASSCONTAINER_ROOTS

The system table DOMAIN.CLASSCONTAINER_ROOTS describes the files and containers in which OMS objects are stored.

Structure

CLASSCONTAINER_ROOTS
CLASS_ID | CHAR(8) BYTE | Identification of the container file
SEQUELCONTAINER | FIXED(10) | Index of the sequel container file for objects of variable length (otherwise 0)
ROOT | FIXED(10) | Root of the container file
KEY_PARTITIONCOUNT | FIXED(10) | Number of inversions for persistent objects with key (otherwise 0)
VAROBJ_CONTAINER | CHAR(3) | Container contains objects of variable length ( YES | NO )
DELETED | CHAR(3) | Application deleted the container, but physical deletion by garbage collectors has not yet taken place
MAX_OBJBODYSIZE | FIXED(10) | Maximum object size for objects that can be stored in this container
MAX_OBJPERPAGE | FIXED(10) | Maximum number of persistent objects that fit on one page
MAX_CHAINS | FIXED(10) | No longer in use (always 1)
UNUSED_BYTEPERPAGE | FIXED(10) | Number of unused bytes per page in the container file

More Information

Database Administration in CCMS, Class Containers


GARBAGECOLLECTOR_STATISTICS - SAP Documentation

Object documentation GARBAGECOLLECTOR_STATISTICS

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.GARBAGECOLLECTOR_STATISTICS describes garbage collector activity.

Structure

GARBAGECOLLECTOR_STATISTICS
TASKID | FIXED(10) | ID of the task that is running as a garbage collector
ACTIVE | CHAR(3) | Task is active (YES | NO)
ACTIVATE_COUNT | FIXED(20) | Number of times the task was activated
DELETE_OBJ | FIXED(20) | Number of persistent objects released by the garbage collectors
RELHIST_NORMAL | FIXED(20) | Number of history entries released by the garbage collectors
RELHIST_SENSITIVE | FIXED(38) | NULL value (no longer in use)
RELHIST_TRUNCATE | FIXED(38) | NULL value (no longer in use)
HIST_CREATE_FILE | FIXED(20) | Number of 'Create Container' history entries released by the garbage collectors
HIST_DELETE_OBJ | FIXED(20) | Number of 'Delete Object' history entries released by the garbage collectors
HIST_DROP_FILE | FIXED(20) | Number of 'Drop Container' history entries released by the garbage collectors
HIST_LOCK_OBJ | FIXED(20) | Number of 'Lock Object' history entries released by the garbage collectors
HIST_INSERT_OBJ | FIXED(20) | Number of 'Insert Object' history entries released by the garbage collectors
HIST_NEW_OBJ | FIXED(20) | Number of 'New Object' history entries released by the garbage collectors
HIST_UPDATE_OBJ | FIXED(20) | Number of 'Update Object' history entries released by the garbage collectors
RELPAGE_EMPTY | FIXED(20) | Number of pages released by the garbage collectors because they were empty
RELPAGE_DROPFILE | FIXED(20) | Number of pages that were released due to a 'Drop Container' statement
DROP_FILE | FIXED(1) | Number of 'Drop Container' commands carried out by the garbage collectors
DELETE_ROW | FIXED(20) | Number of table rows deleted by the garbage collectors
DELETE_INDEX | FIXED(20) | Number of primary keys deleted from index trees by the garbage collectors

More Information

Concepts of the Database System, How Databases Log Data Changes


CLASSCONTAINER_KEYS - SAP Documentation

Object documentation CLASSCONTAINER_KEYS

The system table DOMAIN.CLASSCONTAINER_KEYS returns the root of the inversion files for OMS objects with keys.

Structure

CLASSCONTAINER_KEYS
CLASS_ID | CHAR(8) BYTE | Identification of the container file
KEY_PARTITION | FIXED(10) | Index of the key inversion
KEY_ROOT | FIXED(10) | Root of the inversion file

More Information

Database Administration in CCMS, Class Containers


CLASSCONTAINER_CHAINS - SAP Documentation

Object documentation CLASSCONTAINER_CHAINS

The system table DOMAIN.CLASSCONTAINER_CHAINS provides statistics for each file and container in which OMS objects are stored.

Structure

CLASSCONTAINER_CHAINS
CLASS_ID | CHAR(8) BYTE | Identification of the container file
SEQUELCONTAINER | FIXED(10) | Index of the sequel container file for objects of variable length (otherwise 0)
CHAIN_ID | FIXED(10) | No longer in use (always 1)
SUBROOT | FIXED(10) | No longer in use (always the root of the file)
OBJECTCOUNT | FIXED(10) | Number of object boxes used
PAGECOUNT | FIXED(10) | Number of pages
ACTIVE_GC_TASKID | FIXED(10) | No longer in use (always 0)
RELEASEEMPTYPAGES | CHAR(3) | No longer in use (always NULL)

More Information

Database Administration in CCMS, Class Containers


HISTORYINFO - SAP Documentation

Object documentation HISTORYINFO

The system table <DATABASE_SYSTEM_ADMINITRATOR>.HISTORYINFO displays information regarding data history. This history is necessary for providing data for a consistent view.

Structure

HISTORYINFO
FILENO | FIXED(10) | Number of the history file
FIRSTTRANS | CHAR(20) | Oldest transaction that has not yet been processed by the garbage collector
LASTTRANS | CHAR(20) | Most recent transaction that has not yet been processed by the garbage collector
PAGECOUNT | FIXED(10) | Number of pages used by the history file and all undo log files referenced by it


OBJECTLOCKS - SAP Documentation

Object documentation OBJECTLOCKS

The SYSINFO.OBJECTLOCKS system table contains object locks and object lock requests.

Structure

OBJECTLOCKS
OBJECTID | CHAR(25) | Object ID
HOLDERTASKID | FIXED(10) | Task that holds the lock or NULL, if a request is described
REQUESTORTASKID | FIXED(10) | Task that waits for the lock or NULL, if a lock owner is described
LOCKMODE | CHAR(10) | Type of lock (SHARE | EXCLUSIVE)
FILEID | FIXED(20) | ID of the container containing the object identified by the OBJECTID
CLASSID | CHAR(8) BYTE | Identification of the container to which the object belongs

More Information

Database Administration in CCMS, Class Containers


OMS_HEAP_STATISTICS - SAP Documentation

Object documentation OMS_HEAP_STATISTICS

The <DATBASE_SYSTEM_ADMINISTRATOR>.OMS_HEAP_STATISTICS system table describes the statuses of allocators used in SAP liveCache technology.

Structure

OMS_HEAP_STATISTICS
DESCRIPTION | CHAR(40) | Name of the allocator
TOTAL_HEAP_USAGE | FIXED(20) | Currently used memory (bytes)
MAX_TOTAL_HEAP_USAGE | FIXED(20) | Maximum used memory (bytes)
RESERVED | FIXED(20) | Memory managed by the allocator (bytes)
ALLOC_CNT | FIXED(20) | Number of memory allocations
FREE_CNT | FIXED(20) | Number of memory releases
SYSTEM_ALLOC_CNT | FIXED(20) | Number of memory reservations in the base allocator
SYSTEM_FREE_CNT | FIXED(20) | Number of memory releases in the base allocator
TOTAL_SPINLOCKS | FIXED(20) | Number of attempts to get the spin lock
COLLISIONS | FIXED(20) | Number of failed attempts to get the spin lock
TOTAL_SPINLOOPS | FIXED(10) | Number of attempts to get the spin lock without prior release of the CPU
TOTAL_YIELDLOOPS | FIXED(10) | Number of attempts to get the spin lock after prior release of the CPU
MAX_SPINLOOPS | FIXED(10) | Maximum number of attempts to get the spin lock without prior release of the CPU
MAX_YIELDLOOPS | FIXED(10) | Maximum number of attempts to get the spin lock after prior release of the CPU
ERROR_CNT | FIXED(10) | Number of errors detected and automatically corrected by the allocator

More Information

Database Administration in CCMS, Heap Usage, Memory


OMSLOCKS - SAP Documentation

Object documentation OMSLOCKS

The SYSINFO.OMSLOCKS system table contains locks explicitly requested by users.

Structure

OMSLOCKS
ID | CHAR(8) BYTE | ID of the lock object
TASKID | FIXED(10) | ID of the task
LOCKREQUESTTIMEOUT | FIXED(10) | Timeout for the lock request (s)
LOCKMODE | CHAR(18) | Type of lock (NULL value | SHARE | EXCLUSIVE)
REQUESTMODE | CHAR(18) | Type of lock request (NULL value | SHARE | EXCLUSIVE)


OMS_VERSIONS - SAP Documentation

Object documentation OMS_VERSIONS

The DOMAIN.OMS_VERSIONS system table contains information about currently available OMS versions.

Structure

OMS_VERSIONS
OMS_VERSION_ID | CHAR(22) | Identification of the OMS version
CREATE_DATE | DATE | Creation date of the OMS version
CREATE_TIME | TIME | Creation time of the OMS version
TRANSVERSION | CHAR(6) BYTE | Consistent view assigned to the OMS version
MARKED | CHAR(1) | Flag that can be used by the application
AGE_IN_HOURS | FIXED(4) | Age of the OMS version in hours
UNLOADED | CHAR(2) | NO
HEAP_USAGE | FIXED(20) | Size of memory used by the OMS version (bytes)
PAGECOUNT | FIXED(20) | NULL
VERSION_DESC | CHAR(256) | Description that can be entered via the application

More Information

Database Administration in CCMS, OMS Versions


-24907: ERR_DBAWRONG - wrong SYSDBA - SAP Documentation

Background documentation -24907: ERR_DBAWRONG - wrong SYSDBA

Explanation

The user defined as SYSDBA (database administrator) in the DBM server does not have the required authorizations.

User Response

Specify the actual database system administrator.


VARCHAR - SAP Documentation

Object documentation VARCHAR

The data type (data_type) VARCHAR defines an alphanumeric column. Specification of length attribute n is optional. If no other length attribute is specified, then it is assumed that n=1.

VARCHAR [(n)]: 0<n<=8000

VARCHAR [(n)] UNICODE: 0<n<=4000

Use VARCHAR (n) if the values in the column are to be stored with a variable length, irrespective of n.

The data type VARCHAR is specified in the column definition, with a code attribute, if required.

More Information

Column Definition (column_definition)


LOB Column - SAP Documentation

Object documentation LOB Column

The data type (data_type) CLOB or BLOB is used to define an alphanumeric column of any length (not for temporary tables). The required data type is specified in the column definition, with a code attribute, if required.

  • CLOB [ASCII]: A maximum of 2 GB of characters can be written in a LOB column.

  • CLOB UNICODE: A maximum of 2 GB bytes can be written in a LOB column.

  • BLOB: A maximum of 2 GB of characters can be written in a LOB column.

Only a few functions can be applied to a LOB column: DECODE, LENGTH and SUBSTR.

LOB columns cannot be compared to one another. The contents of LOB columns cannot be compared to character strings or other data types.

LOB columns can only contain NOT NULL or a DEFAULT specification as a column attribute.

More Information

LOB columns can be used in the following SQL statements and syntax elements:

  • Data type specification

  • INSERT Statement

  • UPDATE Statement

  • NULL Predicate

  • Selected Columns

Column Definition (column_definition)

Glossary, LOB


INT[EGER] - SAP Documentation

Object documentation INT[EGER]

The data type (data_type) INT[EGER] is the same as the data type FIXED(10,0). However, in contrast to data type FIXED(10,0), only values between -2147483648 and 2147483647 are permitted for the data type INT[EGER].

The data type INT[EGER] is specified during column definition.

More Information

Fixed Point Number (fixed_point_literal)

Column Definition (column_definition)


SMALLINT - SAP Documentation

Object documentation SMALLINT

The data type (data_type) SMALLINT is the same as FIXED(5,0). Its permitted values are between -32768 and 32767.

The data type SMALLINT is specified during column definition.

More Information

Fixed Point Number (fixed_point_literal)

Column Definition (column_definition)


FLOAT - SAP Documentation

Object documentation FLOAT

The data type (data_type) FLOAT(p) defines a floating point number (floating_point_literal). A column is defined that has a floating point number with precision p (0<p<=38).

The data type FLOAT is specified during column definition.

More Information

Column Definition (column_definition)

FLOAT(a,p)


TIME (Time Value) - SAP Documentation

Object documentation TIME (Time Value)

The data type (data_type) TIME defines an alphanumeric column in which time values can be stored.

A time value is a special character string. A time value can be compared to other time values, numbers and to character strings with the code attributes ASCII and UNICODE.

The data type TIME is specified during column definition.

More Information

  • Character String

    Number

  • Code Attribut

  • Column Definition (column_definition)

  • Date and Time Format (datetimeformat)


TIMESTAMP (Time Stamp Value) - SAP Documentation

Object documentation TIMESTAMP (Time Stamp Value)

The data type (data_type) TIMESTAMP defines an alphanumeric column in which time values can be stored.

A time stamp value is a special character string. A time stamp consists of a date value and time value and a microsecond specification.

A time stamp value can be compared to other time stamp values, numbers and to character strings with the code attributes ASCII and UNICODE.

The data type TIMESTAMP is specified during column definition.

More Information

  • Character String

    Number

  • Code Attribut

  • Date Value

    Time Value

  • Column Definition (column_definition)

  • Date and Time Format (datetimeformat)


Character String - SAP Documentation

Object documentation Character String

A character string is a data type (data_type) that consists of a series of alphanumeric characters.

Examples of data types that can be selected for character strings: CHAR[ACTER], VARCHAR, DATE, TIME, TIMESTAMP. In a column definition, a code attribute can be entered for the data types CHAR[ACTER] and VARCHAR.

The following comparison options exist for data types CHAR[ACTER] and VARCHAR:

Character strings with the same code attribute | These character strings can be compared to each other.
Character strings with the code attributes ASCII or UNICODE | These character strings are comparable with the character strings of code attributes ASCII or UNICODE and with data, time, and timestamp values.

More Information

  • Character (character)

  • Data Value

    Time Value

    Timestamp Value

  • Code Attribut

  • Literal (literal)

  • Column Definition (column_definition)


Number - SAP Documentation

Object documentation Number

A number is a special data type (data_type). There are fixed point and floating point numbers:

  • Fixed point number

    A fixed point number is described by the number of significant digits and the number of decimal places. The maximum number of significant digits is 38.

    Examples: FIXED, INT[EGER], SMALLINT

  • Floating point number

    A floating point number consists of a mantissa and an exponent. The mantissa may have up to 38 significant digits. The valid range of values for floating point numbers consists of the intervals from -9.9999999999999999999999999999999999999E+62 to -1E-64 and from +1E-64 to +9.9999999999999999999999999999999999999E+62 and the value 0.0.

    Example: FLOAT

All numbers can be compared to one another.

More Information

Literal (literal)

Column Definition (column_definition)


NULL Value - SAP Documentation

Object documentation NULL Value

The data type (data_type) NULL value (that is, an unspecified value) is a special value. Its relationship to any other value is always unknown.

More Information

NULL predicate (null_predicate)

Special NULL Value


Special NULL Value - SAP Documentation

Object documentation Special NULL Value

A special NULL value is a special data type (data_type) and is the result of arithmetic operations that lead to an overflow or a division by 0.

The special NULL value is only permitted for output columns and for columns in the ORDER clause. If an overflow occurs in an arithmetic operation or a division by 0 at another point, the SQL statement is abnormally terminated.

The comparison of a special NULL value with any value is always undefined. As far as sorting is concerned, the special NULL value is greater than all non-NULL values, but less than the NULL value.


Updateable Join View Table - SAP Documentation

Object documentation Updateable Join View Table

More detailed information is provided here to supplement the general definition of an updateable join view table (CREATE VIEW Statement (create_view_statement).

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.

Without limiting the generality, it is assumed that the definition of the join view table V in the FROM clause contains the base tables T1,...,Tn (n>1).

  • Let Ti and Tj be two base tables selected by V.

    Let Rij be a referential CONSTRAINT definition of Ti and Tj in which Ti is the referencing table and Tj the referenced table (referenced_table).

    Let PKj1,...,PKjm be the key columns of Tj.

    Let FKi1,...,FKim be the corresponding foreign key columns of Ti.

    The referential CONSTRAINT definition is relevant for V if the JOIN predicate (PKj1=FKi1 AND ... AND PKjm=FKjm) is part of the search condition of V.

  • Let Ti and Tj be two base tables selected by V and Rij a referential CONSTRAINT definition of Ti and Tj that is relevant for V.

    Ti is the predecessor of Tj (Ti<Tj) if Rij is the only referential CONSTRAINT definition of Ti and Tj that is relevant for V.

  • Let Rij be a referential CONSTRAINT definition that is relevant for V.

    Rij defines a 1 : 1 relationship between Ti and Tj if the foreign key columns of Rij make up the key columns of Ti.

  • Let Rij be a referential CONSTRAINT definition that is relevant to V and s a key column of Tj or a foreign key column of this referential CONSTRAINT definition of Ti. The column s can be derived from V if exactly one of the following conditions is satisfied:

    - s is a selected column of V.

    - There is a key column or a foreign key column s' of a referential CONSTRAINT definition relevant to V, which can be derived from V, and the JOIN predicate s = s' is part of the search condition of V.

  • A column v of V corresponds to a column s of an underlying base table T, if one of the following conditions is satisfied:

    - v is the ith column of V and s is the ith selected column of V

    - v corresponds to a key column PK in Tj, belonging to a referential CONSTRAINT definition Rij relevant to V, and s is the foreign key column of Ti assigned to PK

    - v corresponds to a foreign key column FK in Ti, belonging to a referential CONSTRAINT definition Rij relevant to V, and s is the key column of Tj assigned to FK.

A join view table V is updateable if the following conditions are satisfied:

  • Each base table Ti (1 <= i <= n) has a key defined by the user.

  • The database system must be able to determine a processing sequence for the underlying base tables; an order Ti1,...,Tin of the tables T1,...,Tn must exist such that j < k can be deduced from Tij<Tik. The columns of V from which the key columns of Ti1 can be derived make up the key of V. Ti1 is called the key table of V. The order of the tables does not have to be unique.

  • Starting with a row in the key table of V, it must be possible to assign each underlying base table exactly one row; that is, there is a sequence of tables Ti1,...,Tij for each table Tij (1 <= j <= n) such that Ti1 < .. < Tij is true. This sequence is unique for each base table referred to by V.

  • It must be possible to derive the key columns and foreign key columns of all referential CONSTRAINT definitions relevant to V from the columns of V.

  • The JOIN predicates needed to recognize the relevance of a referential CONSTRAINT definition must be specified in parts of the search condition defined with the WITH CHECK OPTION. If the view definition contains base tables only, this means that the view table must be defined with the WITH CHECK OPTION. If a view table V is derived from a view table V' and if V' was defined with the WITH CHECK OPTION, then V inherits the CHECK OPTION for the part of the qualification passed on by V'.


ALTER INDEX Statement (alter_index_statement) - SAP Documentation

Background documentation ALTER INDEX Statement (alter_index_statement)

The ALTER INDEX statement (alter_index_statement) controls how an index is used for data queries.

Structure

Syntax Syntax

  1. <alter_index_statement> ::=
  ALTER INDEX <index_name> [ON <table_name>] ENABLE
| ALTER INDEX <index_name> [ON <table_name>] DISABLE
| ALTER INDEX <index_name> [ON <table_name>] INIT USAGE
End of the code.
Explanation

If a schema is not specified in the table name, the current schema is accepted implicitly. The current database user must have the INDEX privilege for the columns.

When a CREATE INDEX statement is executed, an index is generated across the specified columns. This index is modified accordingly for all of the following SQL statements for data manipulation (INSERT statement, UPDATE statement, DELETE statement). With all other SQL statements in which individual rows in a table are specified, the database system can use this index to speed up the search for these rows.

ALTER INDEX ... DISABLE

The index can no longer be used for this search, however it is still changed when the SQL statements INSERT, UPDATE or DELETE are used.

ALTER INDEX ... ENABLE

The index can be used again for the search.

ALTER INDEX ... INIT USAGE

The INDEX_USED column in the system table DOMAIN.INDEXES is initialized with 0. This means that the mechanism that counts how frequently an index is used is restarted.

More Information

Privileges: Overview


ADD Definition (add_definition) - SAP Documentation

Background documentation ADD Definition (add_definition)

You can define additional table properties by specifying an ADD definition (add_definition) in the ALTER TABLE statement.

Structure

Syntax Syntax

  1. <add_definition> ::=
  ADD <column_definition>,...
| ADD (<column_definition>,...)
| ADD <key_definition>
| ADD <referential_constraint_definition>
End of the code.
Examples

SQL Tutorial, Tables, Primary Key, Constraints, Foreign Key Dependencies Between Tables

Adding a Column Definition: ADD <column_definition>

You can extend the table specified in the ALTER TABLE statement to include these columns by specifying column definitions (column_definition). These specifications must not exceed the maximum number of columns allowed and the maximum length of a row.

Note Note

The memory requirements for each column are increased by one character (for normal memory requirements, see Memory Requirements of a Column Value According to Data Type), if the length described is less than 31 characters and the column does not have the data type VARCHAR.

End of the note.

All the rows of the newly defined columns contain the NULL value if a default value has not been defined by a DEFAULT specification for these columns. If the NULL value impairs a CONSTRAINT definition of the table, the ALTER TABLE statement fails.

If you insert LOB columns, you cannot specify a DEFAULT specification. If you want to define a default value for a LOB column, you can define the LOB column using ADD definition and then use the MODIFY definition to define a default value.

In every other respect, specifying a column definition has the same effect as specifying a column definition in a CREATE TABLE statement.

  • If view tables are defined for the specified table, if alias names are defined for one of these view tables, and if the view tables reference the columns in the table with *, the ALTER TABLE statement will fail.

  • If view tables are defined for the specified table, if no alias names are defined, and if the view tables reference the columns in the table with *, this view table contains the columns added to the base table by the ADD definition.

Adding a CONSTANT Definition: ADD <constant definition>

All the rows in the table must fulfill the condition defined by the search condition of the CONSTRAINT definition.

Adding a Key Definition: ADD <key definition>

A key is defined for the table specified in the ALTER TABLE statement. At the time of execution, the table must only contain the key column SYSKEY generated by the database system. The columns specified in the key definition must be columns in the table and fulfill the key properties (none of the columns may contain NULL values and no two rows may contain the same values in all of the columns defined in the key definition). The new key is stored in the table metadata. The key column SYSKEY is omitted. This is an extremely lengthy procedure for tables with a large number of rows, since extensive copy operations are carried out.

If a primary key is defined for the table specified in the ALTER TABLE statement and this key has exactly the same structure as an existing index, then this existing index is deleted.

Inserting a Referential CONSTRAINT Definition: ADD <referential_constraint_definition>

A constraint (integrity condition) is defined for the table specified in the ALTER TABLE statement. The columns specified in the referential CONSTRAINT definition must be columns in the table. All of the rows in the table must satisfy the integrity condition defined by the referential CONSTRAINT definition.


Utilities - SAP Documentation

Component documentation Utilities

This documentation describes the following SAP MaxDB software:

  • Global Listener and X Servers: Communication servers of the database system

  • XUSER: Command line tool for creating and managing XUSER entries, which simplify logging on to database tools and interfaces

  • XCONS: Command line tool for showing information about the resources used by a database and database-internal processes


Deleting XUSER Entries - SAP Documentation

Procedure documentation Deleting XUSER Entries

Procedure

xuser [-U <user_key>] [-c <os_user>\<domain>] clear

To delete all XUSER entries assigned to your operating system user, do not specify any options.

Caution Caution

XUSER is not a tool for users. It only manages XUSER entries for these users in the XUSER program. Deleting an XUSER entry does not mean that the corresponding user is also deleted. To delete users, use Database Studio or Database Manager CLI.

End of the caution.


XCONS - SAP Documentation

Component documentation XCONS

You can use the command line tool XCONS (database console) to view information about SAP MaxDB databases, such as:

  • Operating system resources used by the database system

  • Distribution of the database sessions to threads

  • Status of the active database sessions

More information: XCONS Options for Displaying Information about the Database

Recommendation Recommendation

Only use XCONS in production systems if you have a sound knowledge of databases and operating systems.

End of the recommendation.

You can call up XCONS from the command line, using Database Manager CLI or using the database console in CCMS (in SAP systems).

XCONS can be used on all operating systems supported by the database system. It is a component of the SAP MaxDB software.


Global Listener and X Servers - SAP Documentation

Component documentation Global Listener and X Servers

The global listener and the X servers are the communication servers of the SAP MaxDB database system. They are located on the database computer. Applications (via interfaces) and tools need them to connect to databases that are located on remote database computers.

Note Note

The JDBC interface requires an X server even for local communication. Therefore all tools and applications that use the JDBC interface to connect to a database also need an X server for local communication, for example Database Studio.

End of the note.

There is one X server acting as a global listener on each database computer, and one X server for each SAP MaxDB installation. This means that on each database computer, there are at least one global listener and one X server.

Note Note

For the communication between older clients and databases as of version 7.8 as well as for communication between clients as of version 7.8 and older databases, the global listener acts as X server (downward-compatibility). Only for communication between clients and databases that are both of version ≥ 7.8, the global listener additionally provides the port-mapping function as described below.

End of the note.

To connect to a remote database, you have the following options:

  • You specify the database name, the port number for the database and the database computer.

    You are then directly connected to the X server of the installation to which the database belongs, and this X server connects you to the database.

  • You only specify the database name and the database computer. Internally, the system executes the following steps:

    1. The global listener receives the connection request and sends back the port number of the database.

    2. You are then directly connected to the X server of the installation to which the database belongs, and this X server connects you to the database.

Ports and Protocols of the SAP MaxDB X Servers
Scope | Default Port | Function of the X Server | Protocol | Protocol Identifier
All installations on the database computer | 7210 | Global listener | TCP/IP | remote://
 | 7269 | Global listener with SAP networtk protocol NI (for connections via SAPRouter, only available in SAP systems) | NI (based on TCP/IP) | sapni://
 | 7270 | Global listener with SAP networtk protocol NI and SAP encryption library (for connections via SAPRouter, only available in SAP systems) | SSL/TLS NISSL (based on TCP/IP) | remotes:// sapnis://
First installation <installation_1> on the database computer | 7200 | X server for <installation_1> | TCP/IP | remote://
Second installation <installation_2> on the database computer | 7203 | X server for <installation_2> | TCP/IP | remote://
Separate Database Studio installation | 7299 | X server for the separate Database Studio installation, only used by the system to access the local user management database .UMDB | TCP/IP | remote://

Connections to the database via SAPRouter are always established via the global listener. These connections use the NI or the NISSL protocol with designated ports.

For more information, see Concepts of the Database System, Network Communication.

SAP MaxDB Global Listener and Installation-Specific X Servers: Processes and Services
 | Process Name (Microsoft Windows) | Service Name (Microsoft Windows) | Process Name (Unix/Linux)
Global listener | serv.exe | XServer | globallistener
Installation-specific X server at<port> | serv.exe | XServer-<port> | vserver
NI server (for connections with SAPRouter, in SAP systems only) | - (part of the global listener) | - | niserver
NISSL server (for SSL connections with SAPRouter, in SAP systems only) | - (part of the global listener) | - | nisslserver

Communication between clients on remote computers and the X server can be encrypted with SSL/TLS in SAP systems.

For more information, see Database Administration, Encryption.

Features

  • Starting the Global Listener and/or Installation-Specific X Servers

  • Stopping the Global Listener and/or Installation-Specific X Servers

More Information

SAP MaxDB Security Guide, Accessing SAP MaxDB Databases Behind a Firewall


XUSER - SAP Documentation

Component documentation XUSER

With the XUSER command line tool, you can store user logon data (user name and password, database name) for all user types. This simplifies logon to databases.

SAP systems use XUSER for the authorization of work processes. Exception: SAP liveCache systems that use central authorization. More information: SAP note 39439

You create XUSER entries containing the logon data and store them as user keys. When logging on to a database, you only specify the user key. XUSER entries are stored separately for each operating system user. On Microsoft Windows, they are stored in the registry, on Unix and Linux, they are stored in the file system (.XUSER.62 in the home directory of the special operating system user for SAP MaxDB). The data can only be accessed by the operating system user who owns the data.

Operating system users can define up to 32 user keys for themselves. If several users are working with the same computer but log on under different user names to the same database, individual user data can be managed separately.

  • Using a User Key when Logging On to a Database

  • Creating or Changing XUSER Entries

  • Displaying Data for XUSER Entries

  • Deleting XUSER Entries

You can call XUSER from the command line or from Database Manager CLI. Not all XUSER functions are available in Database Manager CLI however.

More information: Database Manager CLI, -ux: Logging on to the XUSER Program

XUSER can be used on all operating systems supported by the database system. It is a component of the SAP MaxDB software.

Constraints

  • Some database tools (for example Loader) and applications that use the ODBC interface cannot access XUSER data.

  • XUSER cannot be used to manage the actual users. You can only access a database using a user stored under an XUSER entry if this user has actually been created for this database.

  • For Unicode-capable databases only: You can only import Unicode user names and passwords into XUSER from a Unicode file (by using the XUSER option -b), but you cannot enter them directly on the command line.


Starting the Global Listener and/or Installation-Specific X Servers - SAP Documentation

Procedure documentation Starting the Global Listener and/or Installation-Specific X Servers

On Microsoft Windows, the SAP MaxDB installation program registers the global listener and all X servers as services, sets their Startup Type to Automatic, and starts them. From then on, they are automatically started at system startup. You do not have to start them manually.

On Unix and Linux, the global listener and the X servers are not installed as services. You have to start the global listener manually or create a startup script for it. You can configure the startup behavior of the installation-specific X servers in the Installations.ini file using the XserverAutostart flag (system default: YES). When the global listener is started, it starts all installations-specific X servers for which XserverAutostart=YES. For more information, see Database Administration, Configuration Files. The global listener also automatically starts the NI and NISSL servers.

Note Note

If an installation-specific X server is not running, it is not started automatically when a request to a database belonging to that installation arrives.

End of the note.

Procedure

Starting the Global Listener

<global_programs_path>\bin\sdbgloballistener start

The global listener then automatically starts all other X servers on the database computer.

Note Note

If the global listener is already running, and you issue this command, the other X servers are not started automatically.

End of the note.

You can display the global programs path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalProgPath

For more information, see Database Manager CLI, dbm_getpath.

sdbgloballistener: Start Options

Option

Description

-D <debugging_level>

You can specify values from 0 (no debugging information is written) to 9 (maximum debugging information). The default value is 0.

-F

If you set this option, the program does not determine the computer name of the application logging on to the DNS server (no reverse DNS lookup).

If it is taking a long time to connect to a remote database, restart the program with this option. Like this, you can find out whether the DNS server is responsible for the slow connection.

-S <tcp_port>[,N:<ni_port][,E:<ssl_port>]

Only starts the installation-specific X server with the corresponding port number

Note that to specify NI and SSL port numbers, you must use the sdbgloballistener program (not the x_server program).

-V

Displays the version of the global listener and the X servers.

-w

On Unix and Linux, only in SAP systems

Restricts the command to the SAP NISSL connection

-W

On Unix and Linux, only in SAP systems

Suppresses automatic use of SAP NISSL

-y

On Unix and Linux, only in SAP systems

Restricts the command to the SAP NI connection

-Y

On Unix and Linux, only in SAP systems

Suppresses automatic use of SAP NI and SSL

-Z <file_size>

Specifies the size of the xserver_<computer_name>.prt log file (in KB). <computer_name> is the name of the computer on which the global listener is running.

More information: Database Administration, Log Files
Starting Installation-Specific X Servers

<installation_path>\bin\x_server -S <tcp_port> [<options>] start

Ports and Protocols of the SAP MaxDB X Servers
Scope | Default Port | Function of the X Server | Protocol | Protocol Identifier
All installations on the database computer | 7210 | Global listener | TCP/IP | remote://
 | 7269 | Global listener with SAP networtk protocol NI (for connections via SAPRouter, only available in SAP systems) | NI (based on TCP/IP) | sapni://
 | 7270 | Global listener with SAP networtk protocol NI and SAP encryption library (for connections via SAPRouter, only available in SAP systems) | SSL/TLS NISSL (based on TCP/IP) | remotes:// sapnis://
First installation <installation_1> on the database computer | 7200 | X server for <installation_1> | TCP/IP | remote://
Second installation <installation_2> on the database computer | 7203 | X server for <installation_2> | TCP/IP | remote://
Separate Database Studio installation | 7299 | X server for the separate Database Studio installation, only used by the system to access the local user management database .UMDB | TCP/IP | remote://
x_server: Start Options

Option

Description

-D <debugging_level>

You can specify values from 0 (no debugging information is written) to 9 (maximum debugging information). The default value is 0.

-F

If you set this option, the program does not determine the computer name of the application logging on to the DNS server (no reverse DNS lookup).

If it is taking a long time to connect to a remote database, restart program with this option. Like this, you can find out whether the DNS server is responsible for the slow connection.

-S <tcp_port>

Only starts the installation-specific X server with the corresponding port number

-V

Displays the version of the installation-specific X server.

-Z <file_size>

Specifies the size of the xserver_<computer_name>.prt log file (in KB). <computer_name> is the name of the computer on which the X server is running.

More information: Database Administration, Log Files

Example

In the following example, the global listener was not running. Upon startup, it starts the installation-specific X servers of the Installation_2009_07–21 installation and the DatabaseStudio installation.

sdbgloballistener start

INF 19720 XServer on port 7200 started

INF 20010 installation Installation_2009-07-21 - path: C:\Program Files\sdb\ Installation_2009-07-21

INF 19720 XServer on port 7299 started

INF 20010 installation DatabaseStudio - path: C:\Program Files\sdb\DatabaseStudio

INF 19720 sdbgloballistener on port 7210 started

In the following example, only the X server of the Installation_2009_07–21 installation (TCP port 7200) is started.

x_server -S 7200 start

INF 19720 XServer on port 7200 started

INF 20010 installation Installation_2009-07-21 - path: C:\Program Files\sdb\ Installation_2009-07-21

More Information

Concepts of the Database System,

  • Network Communication

  • Processes

  • Services


Stopping the Global Listener and/or Installation-Specific X Servers - SAP Documentation

Procedure documentation Stopping the Global Listener and/or Installation-Specific X Servers

Caution Caution

If you stop the X server of the installation to which a database belongs, that database cannot be accessed by database tools and applications that are located on remote computers any longer.

The JDBC interface requires an X server even for local communication.

End of the caution.

Prerequisites

On Unix and Linux: You are logged on as an operating system user belonging to the <sdba_group>.

More information: Database Administration, Special Operating System Users and Groups (Unix and Linux)

Procedure

Stopping the Global Listener

<global_programs_path>\bin\sdbgloballistener [-all] stop

If you specifiy the -all option, all installation-specific X servers are stopped as well.

Note Note

You can display the global programs path using the dbm_getpath DBM command:

dbmcli dbm_getpath GlobalProgPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.
Stopping Installation-Specific X Servers

<installation_path>\bin\x_server [-S <tcp_port>] stop

If you do not specify a port, the X server belonging to the path from which you have issued the command is stopped.


Creating or Changing XUSER entries - SAP Documentation

Procedure documentation Creating or Changing XUSER entries

Procedure

Creating New XUSER Entries

You can either create new XUSER entries interactively or import them from an XUSER file.

The DEFAULT user key already exists. As per the system default there is no data stored under this key yet. When you define the first XUSER entry, the data specified is stored under the DEFAULT user key. If you specify a key other than DEFAULT in this command, the data is stored under the specified key and under the existing DEFAULT user key as well.

Changing XUSER Entries

You change an existing XUSER entry by completely overwriting its data.

Operating system users can usually only change their own XUSER entries.

Exceptions:

  • The operating system user that has defined the DEFAULT user key can change this XUSER entry.

  • On Microsoft Windows, an operating system user who belongs to the Administrators group can change the XUSER entries of other operating system users. This is necessary where an operating system user that exists for an XUSER entry is not able to log on to the operating system interactively.

Syntax

xuser [<options>] set

XUSER: Options
Option | Description
-A | The XUSER program interprets the entries as ASCII8. The default value for the character set is UTF-8.
-b <file_name> | XUSER reads the XUSER entries from the XUSER file <file_name> More information: Importing XUSER Entries from a File
-c <domain>\<os_user> | On Microsoft Windows only; to use this option, you need administration privileges. Changes the XUSER entry for operating system user <os_user> of the <domain>.
-d <database_name> | If you do not specify a database name, no database is assigned to the XUSER entry.
-e <encryption> | Only in SAP systems <encryption> type used for connection to database At present you can only select SSL for <encryption>. If you are not using encryption, omit this option.
-h | Displays help
-l <isolation_level> | Isolation level For application programs only If you do not specify an <isolation_level>, the XUSER program uses the value -1.
-n <database_computer> | Name of the computer on which the database is running The character string is case-sensitive. If you do not specify a <database_computer>, the XUSER program uses the local computer.
-S <SQL_mode> | SQL Mode If you do not specify an <SQL_mode>, the XUSER program uses the INTERNAL SQL mode.
-t <timeout> | Timeout value in seconds Possible values: -1, <seconds>, 0 -1: The default value for the database is transferred to the XUSER program. 0: No timeout If you do not specify a <timeout>, the XUSER program uses the value -1.
-U <user_key> | User key of the XUSER entry, case-sensitive Character string with maximum of 18 characters (9 characters in Unicode)
-u <user_name>,<password> | User name (database user or DBM operator) and password If user name or password contain lowercase letters or special characters, enclose these in quotation marks. The XUSER program otherwise converts lowercase letters to uppercase letters automatically.
-V | Display the version of the XUSER program

Example

As operating system user ANNA, you create an XUSER entry with the user key ag. Under this XUSER user key, you store your log-on data for the DEMODB database: DBM operator name anna_ghobadi and password may.

xuser -U ag -d DEMODB -u anna_ghobadi,may


Using a User Key when Logging On to a Database - SAP Documentation

Procedure documentation Using a User Key when Logging On to a Database

Several database tools and interfaces support the XUSER program and logon to a database with a user key.

Procedure

To log on to a database with a user key, specify the option -U <user_key> [<options>] when you log on. <user_key> is the user key saved in the XUSER program.

Note Note

The user key is case sensitive.

The user stored under the specified user key must actually exist in the database.

End of the note.

If you also specify log-on options, these override the corresponding information in the XUSER entry.

If you log on to XUSER using SQL applications and do not specify a user key, the logon is carried out using the user data stored under the user key DEFAULT.

If you use Database Manager to connect to XUSER, and do not specify a user key, then the connection is made with the user data saved under the user name DBMUSR.

Example

You log on to Database Manager CLI using the user key ag.

dbmcli -U ag

The user key ag contains the DBM user name anna_ghobadi and the password may for the DEMODB database.


Displaying Data for XUSER Entries - SAP Documentation

Procedure documentation Displaying Data for XUSER Entries

Procedure

xuser [-U <user_key>] [-c <os_user>\<domain>] list

To display data for all XUSER entries stored, use the command for your operating system user without any options.


Importing XUSER Entries from a File - SAP Documentation

Procedure documentation Importing XUSER Entries from a File

Procedure

  1. Using a text editor, create the file from which you want to import XUSER entries.

    On each line of the file, specify the options for an XUSER entry and the set or clear command.

    You cannot use the –b option in the file.

    You can use any name for the file.

  2. To import a file into XUSER, enter the following command:

    xuser -b <file>

Example

You import a file containing the following commands:

Example Example

  1. -U MK –u MONA,RED –d DEMODB –n GENUA –t 90 –l 1 set
  2. -U DK –u DAVID,BLUE –d DEMODB set
End of the code.

This creates the following XUSER entries:

  • User key MK, user MONA, password RED, database name DEMODB, computer GENUA, timeout 90 seconds, isolation level 1

  • User key DK, user DAVID, password BLUE, database name DEMODB


ALTER USER Statement (alter_user_statement) - SAP Documentation

Background documentation ALTER USER Statement (alter_user_statement)

The ALTER USER statement (alter_user_statement) changes the properties assigned to a database user.

Structure

Syntax Syntax

  1. <alter_user_statement> ::=
  ALTER USER <user_name>
    [<user_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>]
   | DEFAULT ROLE NONE
   | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]

<user_mode> ::=
  DBA
| RESOURCE
| STANDARD

<ascii_or_unicode> ::=
  ASCII
| UNICODE

<connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges, Roles

Explanation

At least one of the optional clauses must be specified. The user name specified must denote a defined database user who is not a member of a user group.

The current database user must have right of ownership for the user for whom properties are to be changed. The specified database user cannot be logged on to the database system when the ALTER USER statement is executed.

user_mode DBA | RESOURCE | STANDARD

You can use user_mode to specify the user class for the database user. The database user class specifies the operations that the defined database user can execute.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

  • DBA: This specification means that the database user class DBA is to be assigned to the specified database user. Only the database system administrator can assign this database user class.

  • RESOURCE: This specification means that the database user class RESOURCE is to be assigned to the specified database user. If the database user had previously been assigned the database user class DBA, the right of ownership/authorization for all database users that this user has created is withdrawn for this user. The database system administrator becomes the new owner.

  • STANDARD: This specification means that the current database user class is withdrawn for this database user and that they lose the right to create their own base tables. All existing base tables created by the database user are deleted.

  • No database user class: If a database user class has not been specified, the user class of the database user remains unchanged.

TIMEOUT

The timeout value is specified in seconds and must be between 30 and 32400. Only the database system administrator can define database users with the timeout value 0.

If the NULL value is specified, the value defined previously is canceled.

COSTLIMIT

This specification limits costs by preventing specified database users from executing QUERY statements or INSERT statements in the form of INSERT...SELECT... beyond a specified degree of complexity, which would otherwise be cost-intensive. COSTLIMIT specifies the estimated SELECT cost value beyond which the SQL statement is not executed.

Before these SQL statements are executed, the costs expected to result from this statement are estimated. This SELECT cost estimate can be output using the EXPLAIN statement. In interactive mode, the estimated SELECT cost value is compared with the COSTLIMIT value specified for the database user. The COSTLIMIT value is ignored with QUERY statements or INSERT statements of the form INSERT...SELECT... that are embedded in a programming language.

If the NULL value is specified, the value defined previously is canceled.

DEFAULT ROLE

DEFAULT ROLE defines which of the roles assigned to the database user/user group is activated automatically when a database session is opened.

  • ALL: All roles assigned to the database user/user group are activated when a session is opened. EXCEPT can be used to exclude specified roles from activation.

  • NONE: None of the roles are active when a database session is opened by a database user/member of a database user group.

  • Role name specified: The roles specified here must exist and be assigned to the database user/user group. They are activated automatically when a database session is opened for a database user/member of a database user group.

[NOT] EXCLUSIVE

If the EXCLUSIVE syntax rule is not specified, NOT EXCLUSIVE is assumed implicitly.

  • EXCLUSIVE: This prevents the specified database user from opening two different database sessions simultaneously.

  • NOT EXCLUSIVE: Allows the database user to open several database sessions simultaneously.

DEFAULTCODE

The value of the special database parameter DefaultCodePage is overridden with the code attribute ASCII or UNICODE specified in syntax rule DEFAULTCODE <ascii_or_unicode> for objects of the specified database user.

ENABLE CONNECT | DISABLE CONNECT

You can use connect_mode to define whether a database user can open database sessions. For CREATE USERGROUP statement this is only valid however if CONNECT mode (connect_mode) is not specified in the CREATE USER statement.

If CONNECT mode is not specified, ENABLE CONNECT is implicitly assumed. ENABLE and DISABLE cannot both be specified at the same time.

  • ENABLE CONNECT: The database user (members of the database user group) can open database sessions.

  • DISABLE CONNECT: The database user (members of the database user group) cannot open database sessions. ALTER USER|USERGROUP statement: The database sessions of the specified database user (members of the specified database user group) are terminated. You can enable the individual members of a database user group to open database sessions again using the ALTER USER statement.

More Information

CREATE USER statement (create_user_statement).

ALTER USER GROUP Statement (alter_usergroup_statement)


ALTER USERGROUP Statement (alter_usergroup_statement) - SAP Documentation

Background documentation ALTER USERGROUP Statement (alter_usergroup_statement)

The ALTER USERGROUP statement (alter_usergroup_statement) changes the properties assigned to a user group.

Structure

Syntax Syntax

  1. <alter_usergroup_statement> ::=
  ALTER USERGROUP <usergroup_name>
    [<usergroup_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>]
   | DEFAULT ROLE NONE
   | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]

<usergroup_mode>::=
  RESOURCE
| STANDARD

<ascii_or_unicode>::=
  ASCII
| UNICODE

<connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT
End of the code.
Explanation

At least one of the optional clauses must be specified. The specified user group must be a defined user group.

The current database user must have the right of ownership for the user group for which the properties are to be changed. The members of the specified user group must not be logged onto the database system when the ALTER USERGROUP statement is executed.

usergroup_mode RESOURCE | STANDARD

You use usergroup_mode to specify a database user class for this user group.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

  • RESOURCE: This specification means that the user group is to be assigned to the database user class RESOURCE.

  • STANDARD: This specification means that the user group will have its current database user class withdrawn and will lose the right to hold its own data. All existing base tables created by the user group are deleted.

  • No database user class: If a database user class has not been specified, the database user class of the user group remains unchanged.

TIMEOUT

The timeout value is specified in seconds and must be between 30 and 32400. Only the database system administrator can define database users with the timeout value 0.

If the NULL value is specified, the value defined previously is canceled.

COSTLIMIT

This specification limits costs by preventing specified database users from executing QUERY statements or INSERT statements in the form of INSERT...SELECT... beyond a specified degree of complexity, which would otherwise be cost-intensive. COSTLIMIT specifies the estimated SELECT cost value beyond which the SQL statement is not executed.

Before these SQL statements are executed, the costs expected to result from this statement are estimated. This SELECT cost estimate can be output using the EXPLAIN statement. In interactive mode, the estimated SELECT cost value is compared with the COSTLIMIT value specified for the database user. The COSTLIMIT value is ignored with QUERY statements or INSERT statements of the form INSERT...SELECT... that are embedded in a programming language.

If the NULL value is specified, the value defined previously is canceled.

DEFAULT ROLE

DEFAULT ROLE defines which of the roles assigned to the database user/user group is activated automatically when a database session is opened.

  • ALL: All roles assigned to the database user/user group are activated when a session is opened. EXCEPT can be used to exclude specified roles from activation.

  • NONE: None of the roles are active when a database session is opened by a database user/member of a database user group.

  • Role name specified: The roles specified here must exist and be assigned to the database user/user group. They are activated automatically when a database session is opened for a database user/member of a database user group.

[NOT] EXCLUSIVE

If the EXCLUSIVE syntax rule is not specified, NOT EXCLUSIVE is assumed implicitly.

  • EXCLUSIVE: This prevents the specified database user from opening two different database sessions simultaneously.

  • NOT EXCLUSIVE: Allows the database user to open several database sessions simultaneously.

DEFAULTCODE

The value of the special database parameter DefaultCodePage is overridden with the code attribute ASCII or UNICODE specified in syntax rule DEFAULTCODE <ascii_or_unicode> for objects of the specified database user.

ENABLE CONNECT, DISABLE CONNECT

You can use connect_mode to define whether a database user can open database sessions. For CREATE USERGROUP statement this is only valid however if CONNECT mode (connect_mode) is not specified in the CREATE USER statement.

If CONNECT mode is not specified, ENABLE CONNECT is implicitly assumed. ENABLE and DISABLE cannot both be specified at the same time.

  • ENABLE CONNECT: The database user (members of the database user group) can open database sessions.

  • DISABLE CONNECT: The database user (members of the database user group) cannot open database sessions. ALTER USER|USERGROUP statement: The database sessions of the specified database user (members of the specified database user group) are terminated. You can enable the individual members of a database user group to open database sessions again using the ALTER USER statement.

More Information

CREATE USERGROUP Statement (create_usergroup_statement)

ALTER USER Statement (alter_user_statement)


ALTER PASSWORD Statement (alter_password_statement) - SAP Documentation

Background documentation ALTER PASSWORD Statement (alter_password_statement)

The ALTER PASSWORD statement (alter_password_statement) is required to alter the password of a database user.

Structure

Syntax Syntax

  1. <alter_password_statement> ::=
  ALTER PASSWORD <old_password> TO <new_password>
| ALTER PASSWORD <user_name> <new_password>

<old_password> ::=
  <password>

<new_password> ::=
  <password>
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges

Explanation

You can change the password for the current database user using ALTER PASSWORD <old_password> TO <new_password>. The old password must be the same as the password stored in the database catalog for the current user.

If you want to change a password for a database user using user_name, then the current database user must be the database system administrator.

The new password must be specified in the CONNECT statement when the user next opens a database session.

More Information

Database Administration, Conventions for User Names and Passwords


ALTER TABLE Statement (alter_table_statement) - SAP Documentation

Background documentation ALTER TABLE Statement (alter_table_statement)

The ALTER TABLE statement (alter_table_statement) changes the properties of a base table.

Structure

Syntax Syntax

  1. <alter_table_statement> ::=
  ALTER TABLE <table_name> <add_definition>
| ALTER TABLE <table_name> <alter_definition>
| ALTER TABLE <table_name> <column_change_definition>
| ALTER TABLE <table_name> <drop_definition>
| ALTER TABLE <table_name> <modify_definition>
| ALTER TABLE <table_name> <referential_constraint_definition>
| ALTER TABLE <table_name> <sample_definition>
| ALTER TABLE <table_name> [NOT] CACHE
| ALTER TABLE <table_name> [NOT] NOCACHE
End of the code.
Examples

SQL Tutorial, Tables, Primary Key, Constraints, Foreign Key Dependencies Between Tables

Explanation
ALTER TABLE Statement

ADD Definition

Defines additional table properties.

ALTER Definition

Changes a CONSTRAINT or key definition.

COLUMN Change Definition

Changes column properties.

DROP Definition

Deletes table properties.

MODIFY Definition

Changes data types and column attributes.

Referential CONSTRAINT Definition

Defines a new referential constraint.

SAMPLE Definition

Defines a number of rows which the database system is to take into account when it determines table statistics (sample size).

You can exclude individual tables from an UPDATE STATISTICS run by setting a sample size of 0 for these tables.

If the name of the schema is not specified in the table name, the current schema is used. The table name must be the name of an existing base table. The table must not be a temporary base table. The current database user must have the ALTER privilege for the specified table.

CACHE

The specification of CACHE for a table means that data from the table (row values, LOB values, index data) that has been read into the data cache once remains there, as far as possible.

An area is reserved in the data cache for all tables with the CACHE option. The size of this reserved area is defined by the database parameter DataCachePinAreaSize. Data is only replaced in this reserved data cache area if inserting a new data page into the reserved area would cause the permitted size of this reserved area to be exceeded.

The CACHE option is particularly suited for tables that are accessed very frequently.

If CACHE is specified, you cannot specify NOCACHE. The specification of NOT CACHE for a table means that the CACHE option is revoked.

NOCACHE

The specification of NOCACHE for a table means that data from the table (row values, LOB values, index data) that is read into the data cache is removed from the data cache very quickly.

The NOCACHE option is suitable for tables for which a long retention of the data in the data cache is not useful, either because the table is very seldom accessed or because there is no locality of accesses.

If NOCACHE is specified, you cannot specify CACHE. The specification of NOT NOCACHE for a table means that the NOCACHE option is revoked.

More Information

Privileges: Overview


ALTER Definition (alter_definition) - SAP Documentation

Background documentation ALTER Definition (alter_definition)

By specifying an ALTER definition (alter_definition) in the ALTER TABLE statement, you can change a CONSTRAINT definition or a key definition.

Structure

Syntax Syntax

  1. <alter_definition> ::=
  ALTER CONSTRAINT <constraint_name> CHECK <search_condition>
| ALTER <key_definition>
End of the code.
Examples

SQL-Tutorial, Primary Key, Constraints

Explanation

By specifying an ALTER definition you can change a CONSTRAINT definition or a key definition.

Changing a CONSTRAINT Definition: ALTER CONSTRAINT <constraint_name>

The constraint name must identify a CONSTRAINT definition in the table. If the specified search condition is not violated by any row in the table, it replaces the existing search condition of the CONSTRAINT definition. Otherwise, the ALTER TABLE statement fails.

Changing a Key Definition: ALTER <key_definition>

The key specified by the key definition replaces the current key in the table. The columns specified in the key definition must identify columns in the table and have the key property. No key column can therefore have a NULL value and no two rows in the table may have the same values in all key columns.

If a column of the key to be replaced is a referenced column (referenced_column) of a referential CONSTRAINT definition, the ALTER TABLE statement fails.

This may take some time, particularly with longer tables, since extensive copy operations are carried out.


Arithmetic Function (arithmetic_function) - SAP Documentation

Background documentation Arithmetic Function (arithmetic_function)

An arithmetic function (arithmetic_function) is a function that produces a numerical value.

Structure

Syntax Syntax

  1. <arithmetic_function> ::=
  ABS(<expression>)
| CEIL(<expression>)
| EXP(<expression>)
| FIXED(<expression>[,<unsigned_integer>[,<unsigned_integer>]])
| FLOAT(<expression>,<unsigned_integer>)
| FLOOR(<expression>)
| INDEX(<string_spec>,<string_spec>[,<expression>[,<expression>]])
| LENGTH(<expression>)
| LN(<expression>)
| LOG(<expression>)
| NOROUND(<expression>)
| PI
| POWER(<expression>,<expression>)
| ROUND(<expression>[,<expression>])
| SIGN(<expression>)
| SQRT(<expression>)
| TRUNC(<expression>[,<expression>])

<string_spec> ::=
  <expression>
End of the code.
Explanation

Only expressions that produce an alphanumeric value are permitted as string specification string_spec in the INDEX function.

More Information

Functions: Overview


General CASE Statement (searched_case_statement) - SAP Documentation

Background documentation General CASE Statement (searched_case_statement)

The general CASE statement (searched_case_statement) is a syntax element that can be used in a routine to define a database procedure (see CREATE DBPROC[EDURE] statement), a database function (see CREATE FUNCTION statement), or a trigger (see CREATE TRIGGER statement).

Structure

Syntax Syntax

  1. <searched_case_statement> ::=
  CASE
    <searched_case_when_clause>...
    [<case_else_clause>]
  END [CASE]

<searched_case_when_clause> ::=
  WHEN <search_condition> THEN <statement>;

<case_else_clause> ::=
  ELSE <statement>;
End of the code.
Explanation

A CASE statement (case_statement) allows the conditional execution of a statement depending on search conditions or equality of operands.

For a general CASE statement (searched_case_statement), the first fulfilled search condition is determined, the associated statement executed, and the CASE statement then ended.

Example Example

CASE

WHEN digit = 0 THEN toCHAR = 'zero';

WHEN digit = 1 THEN toCHAR = 'one';

WHEN digit = 2 THEN toCHAR = 'two';

WHEN digit = 3 THEN toCHAR = 'three';

WHEN digit = 4 THEN toCHAR = 'four';

WHEN digit = 5 THEN toCHAR = 'five';

WHEN digit = 6 THEN toCHAR = 'six';

WHEN digit = 7 THEN toCHAR = 'seven';

WHEN digit = 8 THEN toCHAR = 'eight';

WHEN digit = 9 THEN toCHAR = 'nine';

ELSE STOP(-29000, 'no digit');

END CASE

End of the example.

If no matching literal or fulfilled search condition exists in a CASE statement, the statement defined in the ELSE branch is executed.

If there is no ELSE branch, the runtime error -28901 is returned.

More Information

Simple CASE Statement (simple_case_statement)


Expression (expression) - SAP Documentation

Background documentation Expression (expression)

An expression specifies a value that is generated, if required, by applying arithmetic operators to values.

A list of expressions (expression_list) is often used in an SQL statement.

A distinction is made between the following arithmetic operators:

  • Additive operators

    + addition

    - subtraction

  • Multiplicative operators

    * multiplication

    / division

    DIV integer division

    MOD remainder after integer division

Structure

Syntax Syntax

  1. <expression> ::= <term>
| <expression> + <term>
| <expression> - <term>
| (<expression>)
| -(<expression>)

<expression_list> ::=
  (<expression>,...)
<term> ::=
  <factor>
| <term> * <factor>
| <term> / <factor>
| <term> DIV <factor>
| <term> MOD <factor>

<factor> ::=
  [<sign>] <value_spec>
| [<sign>] <column_spec>
| [<sign>] <function_spec>
| [<sign>] <set_function_spec>
| <scalar_subquery>
| <expression>

<sign>::=
  +
| -
End of the code.
Examples

SQL Tutorial, Arithmetic Operations

Explanation

The arithmetic operators can only be applied to numeric data types.

 | Expression Result
expression | Value with any data type
factor provides a NULL value | NULL Value
factor provides a special NULL value | Special NULL Value
expression leads to a division by 0 | Special NULL Value
expression leads to an overflow of the internal temporary result | Special NULL Value

If no parentheses are used, the operators have the following precedence:

  1. The sign (+ | -) has a higher precedence than the additive and multiplicative operators.

  2. The multiplicative operators have a higher precedence than the additive operators.

  3. The multiplicative operators have different priorities.

  4. The additive operators have different priorities.

  5. Operators with the same precedence are evaluated from left to right.

Operands are Fixed Point Numbers
Operand a | Operand b | Result
Fixed point number (p Accuracy s Number of decimal places) | Fixed point number (p' Accuracy s' Number of decimal places) | Fixed point number (p'' Accuracy s'' Number of decimal places) or floating point number

The data type of the result depends on the operation as well as on the precision and number of decimal places of the operands.

Note that the data type of a column determines its name, and not the precision and number of decimal places in the current value.

Operands are Fixed Point Numbers, Operands are +, - , * or /

The result of addition, subtraction, and multiplication is generated from a temporary result which can have more than 38 valid digits. If the temporary result has no more than 38 valid digits, the final result is equal to the temporary result. Otherwise, a result is generated as a floating point number with 38 places. Decimal places are truncated if necessary.

Conditions for Accuracy and Decimal Places for Operands a and b | Operator | Result
max(p-s,p'-s') | +, - | A fixed point number p''=max(p-s,p'-s')+max(s,s')+1 s''=max(s,s')
(p+p')<=38 | * | A fixed point number p''=p+p' s''=s+s'
(p-s+s')<=38 | / | A fixed point number p''=38 s''=38-(p-s+s') Special NULL value, if b=0
Operands are integers, operators are DIV, MOD
Conditions for Operands a and b | Operator | Result
ABS(a)<1E38 and ABS(b)<1E38 and b<>0 | DIV | TRUNC(a/b)
b=0 | DIV | Special NULL value
ABS(a)>=1E38 and b<>0 or ABS(b)>=1E38 | DIV | Error message
ABS(a)<1E38 and ABS(b)<1E38 and b<>0 | MOD | a-b*(a DIV b)
b=0 | MOD | a
ABS(a)>=1E38 and b<>0 or ABS(b)>=1E38 | MOD | Error message
An operand is a floating point number

If one operand is a floating point number, the result of the arithmetic operation is a floating point number.


Authorization - SAP Documentation

Background documentation Authorization

SQL statements for authorization

SQL Statements for Authorization
CREATE USER Statement | DROP USER Statement | ALTER USER Statement RENAME USER Statement GRANT USER Statement
CREATE USERGROUP Statement | DROP USERGROUP Statement | ALTER USERGROUP Statement RENAME USERGROUP Statement GRANT USERGROUP Statement
ALTER PASSWORD Statement |  |
CREATE ROLE Statement | DROP ROLE Statement |
GRANT Statement | REVOKE Statement |

Example

SQL Tutorial, Authorization

More Information

SQL Statements: Overview

SQL Reference Manual


General CASE Function (searched_case_function) - SAP Documentation

Background documentation General CASE Function (searched_case_function)

The general CASE function (searched_case_function) is a special function that analyzes a quantity of search conditions to determine a result expression.

Structure

Syntax Syntax

  1. <searched_case_function> ::=
  CASE
    WHEN <search_condition> THEN <result_expression>
    [...]
    [ELSE <default_expression>]
  END

<result_expression>::=
  <expression>

<default_expression>::=
  <expression>
End of the code.
Examples

SQL Tutorial, Functions

Explanation

CASE checks the search conditions (search_condition) in succession. As soon as a search condition that is true is found, the result of the general CASE function is the value of the expression result_expression that belongs to the search condition.

If no true search expression is found, then CASE gets the result of the expression default_expression. If default_expression is not specified, the result of CASE is the NULL value.

All search conditions without ROWNO Predicate are permissible. The data types of the expressions result_expression and default_expression must be comparable.

More Information

Simple CASE Function (simple_case_function)


Alias Name (alias_name) - SAP Documentation

Background documentation Alias Name (alias_name)

An alias name (alias_name) is a new column name that specifies the name of a column in the following types of tables:

  • View table

  • Tables defined with a recursive DECLARE CURSOR statement

Structure

Syntax Syntax

  1. <alias_name> ::=
  <identifier>
End of the code.
Explanation

An error message is output if the name consists of more than 32 characters.

More Information

SQL statement for defining an alias name

CREATE VIEW Statement

Recursive DECLARE CURSOR statement


archive_stage - SAP Documentation

Background documentation archive_stage

To increase your data security, make one or several copies of the backup files of log backups using backup tools or operating system commands. The system checks whether the copying was successful.

With the help of the command options you can control whether the copied files should be compared with the original files for security reasons, and whether the original files should be deleted after copying.

Log backups that are created using the automatic log backup function can only be written to files. To archive those log backups on other data carriers, you can use operating system commands. All other log backups can be archived using the archive_stage command.

For example, you can transfer the content of the backup files into pipes, so that they can be read and archived using one or more backup tools of other providers. The backup tools can archive the data read from the pipes either once, or for security reasons, multiple times. The backup tools used can even be combinations of tools from different providers.

The archiving process with the help of the archive_stage command allways ensures that the content of any number of copies is identical to their original log backup. This also applies if the active automatic log backup function is running and has meanwhile written new backup files.

Example Example

If you want to archive the same backup files multiple times on different data carriers, call Database Manager CLI in session mode. First use the archive_stage command described here plus the KEEP option, entering a data carrier (1) onto which you want to copy the backup files. Then execute the archive_stage_repeat command, entering an additional data carrier (2). This way the same group of backup files is copied again.

All copies of the backup files are assigned their own external backup IDs and are entered in the backup history.

After the system has executed the DBM command, information about the archived backup files is displayed.

End of the example.

Prerequisites

  • You have the server permission Backup.

  • The backup template for the data carrier is defined for backup type LOG (see medium_put).

Structure

archive_stage <archive_medium> <log_medium> [NOVERIFY] [KEEP] [FNL <list>]

Options

Option

Description

<archive_medium>

Name of the backup template to be used for archiving

<log_medium>

Name of the backup template with which the log backup has been created

NOVERIFY

The system only performs the standard checks to determine whether the copying was successful. The system displays error messages where appropriate, as well as the output of the backup tools.

If you do not specify this option, then the system additionally compares the content of the archived files with the content of the original files (system default).

KEEP

The original log backup files are archived but are not deleted afterwards.

If you do not specify this option, then the original log backup files are deleted after they have been successfully archived on the data carrier (system default).

FNL

File Number List: Keyword for the list of files to be archived

Only specify this keyword and the list of file numbers if you are sure that particular log backup files were created but are not listed in the backup history due to an error. This would be the case, for example, if the log backup files with the number 10 and 12 are listed in the backup history, but number 11 is missing.

<list>

File name or range of file names:

You can omit leading zeros. Separate multiple values using commas.

If you do not specify a file list, the system copies all the log backup files that exist at the start of the archiving process, were created using the specified backup template, and are listed in the backup history.

Result

OK

Processed Stage Files <number>

Bytes Processed <number>

Deleted Stage Files <number>

Remaining Stage Files <number>

Values for the Reply Fields
Value | Description
Processed Stage Files | Processed log backup files
Bytes Processed | Processed bytes
Deleted Stage Files | Deleted log backup files
Remaining Stage Files | Remaining log backup files
<number> | Number

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB:

>dbmcli -u OLEG,MONDAY -d DEMODB

dbmcli on DEMODB>

Create a single copy of the original backup files 1 and 3-10. They were backed up using the backup template DemoAutoLog and should now be backed up again for archiving purposes using the backup template ARCHDATACARRIER_1. The original backup files should not be deleted afterwards:

dbmcli on DEMODB>archive_stage ARCHDATACARRIER_1 DemoAutoLog NOVERIFY KEEP FNL 1,3-10

OK

Processed Stage Files 9

Bytes Processed 12845056

Deleted Stage Files 0

Remaining Stage Files 2

More Information

Database Administration, Archiving Backup Files


Key Definition (key_definition) - SAP Documentation

Background documentation Key Definition (key_definition)

A key definition (key_definition) in a CREATE TABLE statement or an ALTER TABLE statement defines the key of a base table. The key definition is introduced by the keywords PRIMARY KEY.

Structure

Syntax Syntax

  1. <key_definition> ::=
  PRIMARY KEY (<column_name>,...)
End of the code.
Examples

SQL Tutorial, Primary Key

Explanation

The column name (column_name) must identify a column in the base table. The specified column names are key columns in the table.

A key column must not identify a column of the data type LOB and is always a NOT NULL column. The database system ensures that no key column has a NULL value and that no two rows of the table have the same values in all key columns.

More Information

Restrictions for SQL Statements


UPDATE Statement (update_statement) - SAP Documentation

Background documentation UPDATE Statement (update_statement)

The UPDATE statement (update_statement) changes column values in table rows.

Structure

Syntax Syntax

  1. <update_statement> ::=
  UPDATE [OF] <table_name>
    [<reference_name>]
    SET <set_update_clause>,...
    [KEY <key_spec>,...] <!  This SQL clause is
          no longer recommended to be used and
          might be removed from future versions.  !>
    [WHERE <search_condition>]
    [IGNORE TRIGGER]
    [NOWAIT]
| UPDATE [OF] <table_name>
    [<reference_name>]
    SET <set_update_clause>,...
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
| UPDATE [OF] <table_name>
    [<reference_name>]
    (<column_name>,...)
    VALUES (<extended_value_spec>,...)
    [KEY <key_spec>,...]
    [WHERE <search_condition>]
    [IGNORE TRIGGER]
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>
| UPDATE [OF] <table_name>
    [<reference_name>]
    (<column_name>,...)
    VALUES (<extended_value_spec>,...)
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>

<set_update_clause> ::=
  <column_name> = <extended_expression>
| <column_name>,... = (<extended_expression>,...)
| (<column_name>,...) = (<extended_expression>,...)
| <column_name> = <subquery>
| (<column_name>,...) = <subquery>
End of the code.
Examples

SQL Tutorial, Inserting, Changing and Deleting Rows

Explanation

The table name must identify an existing base table, view table, or synonym.

Columns whose values are to be updated are known as target columns. You can specify one or more target columns plus new values for these columns after you specify the table name and, if required, the reference name.

  • All target columns must identify columns in the table specified, and each target column may only be listed once.

  • The current user must have the UPDATE privilege for each target column in the specified table. If the table name identifies a view table, it is possible that even the owner of the view table may not be able to update column values as the view table is not updateable.

  • If the table specified is a view table, only column values from rows in the underlying base tables for the view table are updated. The target columns of the table specified correspond to the columns in the underlying base tables of the view table in such cases. The term “target column” always refers to the corresponding column in the base table in the following description.

See also: Data Type of the Target Column and Data Type of the Value to be Inserted, Privileges: Overview

Which rows are updated?

You set which rows in the table are to be updated by specifying one of the following:

  • Optional key specification (key_spec) and optional search condition (search_condition)

    Key specification and no search condition: A row with the specified key values already exists. The corresponding values are then assigned to the target columns in this row. No rows are updated if a row with the specified key values does not exist.

    Key specification and a search condition: A row with the specified key values already exists. The search condition is applied to this row. If the search condition is satisfied, the corresponding values are assigned to the target columns in this row. No rows are updated if a row with the specified key values does not exist or if a search condition is applied to a row and not fulfilled.

    No key specification and a search condition: The search condition is applied to each row in the specified table. The corresponding values are assigned to the target columns for all rows that satisfy the search condition.

  • When using CURRENT OF so that the cursor position within the result table result_table_name is specified: If the cursor is not positioned on a row of the result table, no row will be changed.

  • If none of the above are specified, all rows in the table specified are updated.

  • If no row is found that satisfies the conditions defined by the optional clauses, the following message appears: 100 row not found.

If the table name specifies a join view table, columns may exist that can only be updated together with other columns.

Key Specification (key_spec)

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.

Values in key columns that have been defined by a user in a CREATE TABLE statement or ALTER TABLE statement can also be updated. If the implicitly-created key column SYSKEY exists, this cannot be updated.

Determining the Column Combination for a Column in a Join View Table

To determine the combination of columns for a given column v in a join view table, proceed as follows:

  1. Define the base table Tj containing the column to which v corresponds.

  2. Define the unique table sequence Ti1 ... Tik that contains Tj.

  3. Define the last table Ti1 in this sequence that has a 1:1 relationship with the key table.

  4. The columns in the join view table corresponding to the foreign key columns of Ti1 in the referential CONSTRAINT definition between Ti1 and Ti1+1 relevant for the join view table, are elements of the column combination.

  5. All columns of the join view table corresponding to columns of the tables Ti1+1 ... Tik are elements of the column combination.

To update the column value for the relevant column, a value must be specified for each column in the column combination. This applies for all target columns that fulfill one of the following conditions:

  • The target columns are located in a base table that is not a key table of the join view table and does not have a 1:1 relationship with the join view table key table.

  • The target columns are foreign key columns of a referential CONSTRAINT definition that is relevant for the join view table.

SET <set_update_clause>

The expression in a SET UPDATE clause set_update_clause cannot contain a set function. The subquery must produce a results table with no more than one row. The number of columns must be equal to the number of target columns specified.

VALUES (<extended_value_spec>)

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.

The number of specified values extended_value_spec must be identical to the number of target columns. The ith value specification is assigned to the ith target column.

IGNORE TRIGGER

You specify IGNORE TRIGGER to ensure that no UPDATE trigger is executed by the UPDATE statement. This prevents endless recursion if updated rows are updated again in the trigger. You can use IGNORE TRIGGER only within a CREATE TRIGGER statement.

CURRENT OF

If CURRENT OF is specified, the table name in the FROM clause of the QUERY statement used to construct the result table result_table_name, must be identical to the table name in the UPDATE statement.

If CURRENT OF is specified and the cursor is positioned on a row in the results table, the corresponding values are assigned to the target columns of the corresponding row. This is the row in the table specified in the FROM clause of the QUERY statement used to form the row of the results table. It is essential that the results table was specified using FOR UPDATE. It is impossible to predict whether or not the updated values in the corresponding row are visible the next time this row in the results table is accessed.

NOWAIT

If you specify NOWAIT, the system does not wait for the lock to be released where a lock collision occurs. Instead, it returns an error message immediately.

Reasons for an UPDATE Statement Failure

If CONSTRAINT definitions exist for base tables in which rows were updated using the UPDATE statement, each updated row is checked against the CONSTRAINT definitions. The UPDATE statement fails if this is not the case for one or more of the modified rows.

For each row in which the value of foreign key columns has been updated with the UPDATE statement, the database system checks whether each resulting foreign key exists as a key or as a value of an index defined with UNIQUE in the corresponding referenced table referenced_table. The UPDATE statement fails if this is the case for one or more of the modified rows.

For each row in which the value of a referenced column referenced_column of a referential CONSTRAINT definition is to be updated using the UPDATE statement, the database system checks whether there are rows in the corresponding foreign key table that contain the current column values as foreign keys. The UPDATE statement fails if this is the case for one or more rows.

If triggers are defined for base tables in which rows are to be updated with the UPDATE statement, for execution after an UPDATE statement, these are executed accordingly. The UPDATE statement will fail if one of these triggers fails.

Data Type LOB

The UPDATE statement can only be used to assign a value to columns with the data type LOB if it contains a parameter or NULL specification. The assignment of values to LOB columns is therefore only possible with some database tools.

More Information

Data Manipulation


ORDER Clause (order_clause) - SAP Documentation

Background documentation ORDER Clause (order_clause)

The ORDER clause (order_clause) specifies a sort sequence for a result table.

Structure

Syntax Syntax

  1. <order_clause> ::=
  ORDER BY <sort_spec>,...

<sort_spec> ::=
  <unsigned_integer> [ASC | DESC]
| <expression> [ASC | DESC]
End of the code.
Examples

SQL Tutorial, Selecting and Arranging Rows

Explanation

The sort columns specified in the ORDER clause determine the sequence of the sort criteria.

A number n specified in the sorting specification (sort_spec) identifies the nth column in the result table. The number n must be less than or equal to the number of columns in the result table.

If a QUERY expression consists of more than one QUERY specification, sort specifications must be specified in one of the following forms:

Syntax Syntax

  1. <sort_spec> ::=
  <unsigned_integer> [ASC | DESC]
| <column_spec> [ASC | DESC]
End of the code.

As the column specification column_spec in this case, you can either use a reference name reference_name or a column name column_name from the list of selected columns of the first QUERY specification.

Scalar subqueries are not permissible in an ORDER clause.

ASC/DESC

The default setting is ASC.

  • ASC: The values are sorted in ascending order.

  • DESC: the values are sorted in ascending order.

Further Explanations

If a QUERY specification was specified with DISTINCT, the total of the internal lengths of all sorting columns must not exceed 1016 characters; otherwise it can comprise 1020 characters.

Column names in the sort specifications must be columns in the tables of the FROM clause or identify a result_column_name in the selected columns of the QUERY specification.

If DISTINCT or a set function was used in a selected column, the sort specification must identify a column in the result table.

Values are compared in accordance with the rules for the comparison predicate. Within sorting order, NULL values are greater than non-NULL values and special NULL values are greater than non-NULL values but less than NULL values.

More Information

Restrictions for SQL Statements

SELECT Statement (select_statement)

QUERY Expression (query_expression)


Table Expression (table_expression) - SAP Documentation

Background documentation Table Expression (table_expression)

A table expression (table_expression) specifies a simple or a grouped result table.

Structure

Syntax Syntax

  1. <table_expression> ::=
  <from_clause> [<where_clause>] [<group_clause>] [<having_clause>]

<from_clause> ::=
  FROM <from_table_spec>,...

<where_clause> ::=
  WHERE <search_condition>

<group_clause> ::=
  GROUP BY <expression>,...

<having_clause> ::=
  HAVING <search_condition>

<from_table_spec> ::=
  <table_name> [AS] [<reference_name>]
| <result_table_name> [AS] [<reference_name>]
| (<query_expression>) [AS] [<reference_name>]
| <joined_table>
| (<from_table_spec>,...)
End of the code.
Examples

SQL Tutorial, Selecting and Arranging Rows, Creating Groups: GROUP BY, HAVING

Explanation

A table expression produces a temporary result table. If there are no optional clauses, this temporary result table is the result of the FROM clause. Otherwise, each specified clause is applied to the result of the previous condition and the table is the result of the last specified clause. The temporary result table contains all of the columns in all the tables listed in the FROM clause.

The order of the GROUP and HAVING clauses is random.

FROM Clause (from_clause)

The FROM clause from_clause specifies a table. This table can be derived from several base, view, and result tables. The number of underlying tables in a FROM clause is equal to the total number of underlying tables in each FROM TABLE specification from_table_spec. The number of underlying tables in a FROM clause must not exceed 64.

The database user must have the SELECT privilege for each specified table or for at least one column in the specified table.

The result of a FROM clause is a table that is generated from the specified tables as follows:

  • If the FROM clause comprises a single FROM TABLE specification, the result is the specified table.

  • If the FROM clause contains more than one FROM TABLE specification, a result table is built that includes all possible combinations of all rows of the first table with all rows of the second table, etc. From a mathematical perspective, this is the Cartesian product of all the tables.

This rule describes the effect of the FROM clause, not its actual implementation.

WHERE Clause (where_clause)

The WHERE clause where_clause specifies the conditions for building a result table.

The search condition search_condition is applied to each row in the temporary result table formed by the FROM clause. The result of the WHERE clause is a table that only contains those rows from the result table for which the search condition is true.

The search condition may only contain column specifications for which the user has the SELECT privilege.

Each column specification directly contained in the search condition must uniquely identify a column from the tables specified in the FROM clause of the table expression. If necessary, the column name must be qualified with the table identifier. If reference names reference_name are defined in the FROM clause for table names, they must be used as table identifiers in the search condition.

Expressions expression in the search condition must not contain a set function, except in the exception below:

Example Example

SELECT ... FROM uppertab,... HAVING ...

(SELECT ... WHERE MIN(uppertab, ...)... )

The SELECT statement is allowed in the specified format.

End of the example.

In a subquery used in a HAVING clause, it is possible to use WHERE clauses that contain set functions for the columns of the table specified in the SELECT ... HAVING statement.

In the case of correlated subqueries, a column specification can identify a column in a table that was specified in a FROM clause of a different table expression in the QUERY specification.

Each subquery in the search condition is usually evaluated only once. In the case of a correlated subquery, the subquery is executed for each row in the result table generated by the FROM clause.

GROUP Clause (group_clause)

The GROUP clause group_clause specifies grouping criteria for a result table.

Each column name specified in the GROUP clause must identify a result_column_name in the selected columns of the QUERY specification or uniquely identify a column in the tables on which the QUERY specification is based. If necessary, the column name must be qualified with the table identifier.

The GROUP clause allows the set functions AVG, COUNT, MAX/MIN, STDDEV, SUM, and VARIANCE to be applied not only to the entire result table, but also to groups of rows within a result table. A group is defined by the grouping columns specified in GROUP BY. All rows of a group have the same values in the grouping columns. Rows containing the NULL value in a grouping column are combined to form a group. The same is true for the special NULL value.

GROUP BY generates one row for each group in the result table. The selected columns in the QUERY specification, therefore, may contain only those grouping columns, operations on the grouping columns, and expressions that use the functions SUM, AVG, MAX/MIN, COUNT, STDDEV, and VARIANCE.

If no rows satisfy the conditions indicated in the WHERE clause and a GROUP clause was specified, the result table is empty.

Specifying scalar subqueries is not permissible in a GROUP clause.

HAVING Clause (having_clause)

The HAVING clause having_clause specifies the properties of a group.

Each expression in the search condition search_condition that does not occur in the argument of a set function must identify a grouping column.

If the HAVING clause is used without a GROUP clause, the result table built so far is regarded as a group.

The search condition is applied to each group in the result table. The result of the HAVING clause is a table that only contains those groups for which the search condition is true.

FROM TABLE Specification (from_table_spec)

Each FROM TABLE specification from_table_spec in a FROM clause specifies either no table identifier, one table identifier, or any number of table identifiers.

Reference Name (reference_name)

If a FROM TABLE specification does not contain a reference name, the table name table_name or result table name result_table_name is the table identifier. If a FROM TABLE specification contains a reference name, the reference name is the table identifier.

Each reference name must be different from each identifier that specifies a table name. If a result table name is a table identifier, there must not be any table identifiers table_name in the form [<schema_name>.]<result_table_name>. Each table identifier must differ from every other table identifier.

The validity range of the table identifiers is the entire QUERY specification within which the FROM TABLE specification is used. If column names are to be qualified within the QUERY specification, table identifiers must be used for this purpose.

Reference names are essential for formulating JOIN conditions within a table. For example, FROM HOTEL, HOTEL X defines a reference name X for the second occurrence of the HOTEL table. Reference names are also necessary sometimes to formulate correlated subqueries. Similarly, a reference name is required if a column in the result of a QUERY expression can only be identified uniquely by specifying the reference name.

Number of Underlying Tables

If a FROM TABLE specification denotes a base table, result table, or the result of a QUERY expression, the number of tables underlying this FROM TABLE specification is equal to 1.

If a FROM TABLE specification denotes a complex view table, the number of tables underlying this FROM TABLE specification is equal to 1.

If a FROM TABLE specification denotes a view table that is not a complex view table, the number of underlying tables is equal to the number of tables underlying the FROM clause of the view table.

If a FROM TABLE specification denotes a joined table joined_table, the number of tables underlying this FROM TABLE specification is equal to the total number of underlying tables of the FROM TABLE specifications contained in it.

QUERY Expression (query_expression)

A FROM TABLE specification that contains a QUERY expression query_expression specifies a table identifier only if a reference name reference_name is specified.

If a FROM TABLE specification contains a QUERY expression, a result table is built that matches this QUERY expression. This result table obtains a system-internal name that collides neither with an unnamed nor a named result table. While the FROM condition is being processed, the result of the QUERY expression is used in the same way as a named result table and is deleted implicitly after processing.

A table expression in which at least an OUTER JOIN indicator or OUTER JOIN TYPE (LEFT | RIGHT | FULL) is specified (see JOIN predicate for more on this) is subject to strict restrictions when it is to be based on more than two tables. For this reason, a QUERY expression is frequently required to formulate a QUERY specification that is to be based on at least three tables and in which at least one OUTER JOIN indicator is used in a JOIN predicate.

JOINED TABLE (joined_table)

A FROM TABLE specification containing a joined table joined_table specifies the number of table identifiers that are specified by the FROM TABLE specifications it contains.

(<from_table_spec>,...)

You can use round brackets to control the evaluation of table information, especially if several tables are being used in the table expression. The transformation of bracketed information to prepare the evaluation only takes place when automatic transformation of SQL statements is activated (Special Database Parameters EnableQuery=EXTENDED and EnableQueryRewrite=YES).

Example Example

The SQL statement

SELECT * FROM (t1,t2),(t3,t4)

is transformed as follows:

SELECT * FROM (SELECT * FROM t1,t2),(SELECT * FROM t3,t4)

End of the example.

More Information

Restrictions for SQL Statements

Privileges: Overview


SINGLE SELECT Statement (single_select_statement) - SAP Documentation

Background documentation SINGLE SELECT Statement (single_select_statement)

A SINGLE SELECT statement (single_select_statement) specifies a single-row result table and assigns the values of this result table to parameters.

Structure

Syntax Syntax

  1. <single_select_statement> ::
  SELECT [<distinct_spec>] <select_column>,...
    INTO <parameter_spec>,... FROM <from_table_spec>,...
    [<where_clause>] [<group_clause>] [<having_clause>]
    [<lock_option>]
End of the code.
Explanation

The number of rows in the result table must not be greater than one. If the result table is empty or contains more than one row, corresponding messages or error codes are issued and no values are assigned to the parameters specified in the parameter specifications. If the result table is empty, the message 100 – Row not found is displayed.

If the result table contains just one row, the values of this row are assigned to the corresponding parameters. The FETCH statement rules apply for assigning the values to the parameters.

The order of the GROUP and HAVING clauses is random.

A LOB column can be specified in a selected column select_column in the uppermost sequence of selected columns in a SINGLE SELECT statement only if the DISTINCT specification (distinct_spec) DISTINCT was not used there.

More Information

Data Query


User Group Name (usergroup_name) - SAP Documentation

Background documentation User Group Name (usergroup_name)

A user group name (usergroup_name) identifies a user group.

Structure

Syntax Syntax

  1. <usergroup_name> ::=
  <identifier>
End of the code.
Explanation

An error message is output if the name consists of more than 32 characters.

More Information

CREATE USERGROUP Statement

ALTER USERGROUP Statement

RENAME USERGROUP Statement

DROP USERGROUP Statement

GRANT USERGROUP Statement


User Name (user_name) - SAP Documentation

Background documentation User Name (user_name)

A user name (user_name) identifies a database user.

Structure

Syntax Syntax

  1. <user_name> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges

Explanation

An error message is output if the name consists of more than 32 characters.

More Information

CREATE USER Statement

ALTER USER Statement

ALTER PASSWORD Statement

RENAME USER Statement

DROP USER Statement

GRANT USER Statement

Database Administration, Database Users


RENAME USER Statement (rename_user_statement) - SAP Documentation

Background documentation RENAME USER Statement (rename_user_statement)

The RENAME USER statement (rename_user_statement) changes the name of a database user.

Structure

Syntax Syntax

  1. <rename_user_statement> ::=
  RENAME USER <user_name> TO <new_user_name>

<new_user_name> ::=
  <user_name>
End of the code.
Explanation

The database user that you want to modify must exist. The user name must identify a database user whose owner is the current user.

The new user name (new_user_name) must not be identical to the name of an existing database user, user group, schema, or role.

The database user you want to modify must not be logged on to the database system when the RENAME USER statement is executed. This does not apply when the database system administrator changes its name.

When the database system administrator changes its name, then the current transaction is implicitly ended by a COMMIT statement. After the database system administrator has been successfully changed, a COMMIT instruction is implicitly executed.

The database system automatically adapts the objects that are dependent on the database user to be modified to the new user name.

More Information

Database Administration, Database Users


SQL SAVEPOINT Statements (savepoint/rollback_to_/release_savepoint_statement) - SAP Documentation

Background documentation SQL SAVEPOINT Statements (savepoint/rollback_to_/release_savepoint_statement)

Within a transaction, subtransactions can be defined to make a series of database operations within a transaction appear as a unit with regard to modifications to the database.

The SAVEPOINT statement is used to define an SQL savepoint – and therefore the start of a subtransaction within a transaction – and to assign this SQL savepoint a name. A subsequent ROLLBACK TO statement with the SQL savepoint name reverses any modifications that have been made in the meantime, without affecting the database operations that were executed within the transaction before the start of this subtransaction. The SQL savepoint is also deleted in the process. It is also possible to delete SQL savepoints using the RELEASE SAVEPOINT statement.

Caution Caution

An SQL savepoint defined by a SAVEPOINT statement is not a savepoint. More information about savepoints: Concepts of the Database System, Savepoint

End of the caution.

Structure

Syntax Syntax

  1. <savepoint_statement> ::=
  SAVEPOINT <sql_savepoint_name>

<rollback_to_statement> ::=
  ROLLBACK TO [SAVEPOINT] <sql_savepoint_name>

<release_savepoint_statement> ::=
  RELEASE SAVEPOINT <sql_savepoint_name>

<sql_savepoint_name> ::=
  <identifier>
End of the code.
SAVEPOINT Statement

The SAVEPOINT statement opens a subtransaction. This means the database system records the current position (SQL savepoint) in the transaction and assigns it the name sql_savepoint_name. The SQL savepoint is identified as active. Any sequence of SQL statements can then follow within one transaction. The sequence of SQL statements can contain other SAVEPOINT statements; however, no more than 50 SQL savepoints can be active in one transaction.

Names of SQL savepoints in a transaction must be different. If an SQL savepoint name is assigned twice within a transaction, the SQL savepoint in this transaction defined by the first SAVEPOINT statement becomes inactive.

ROLLBACK TO Statement

A ROLLBACK TO statement reverses all database modifications made in the active transaction following the SAVEPOINT statement.

The SQL savepoint specified in the ROLLBACK TO statement must be an active SQL savepoint in the transaction. All SQL savepoints created after this SQL savepoint are inactive. All SQL savepoints created before this SQL savepoint retain the same state.

The specified SQL savepoint also remains active after the ROLLBACK TO statement has been executed. This means the ROLLBACK TO statement can be executed in the same transaction more than once by specifying the same SQL savepoint name.

RELEASE SAVEPOINT Statement

An SQL savepoint can be deactivated by a RELEASE SAVEPOINT. The SQL savepoint specified in the RELEASE SAVEPOINT statement must be an active SQL savepoint in the transaction.

All SQL savepoints activated after this SQL savepoint are also deactivated. All SQL savepoints created before this SQL savepoint retain the same state.

Further Explanations

The SQL SAVEPOINT statements do not affect locks assigned to the transaction. In particular, these SQL statements do not release any locks. Locks are only released by COMMIT or ROLLBACK.

Subtransactions are particularly useful for keeping the effects of database procedures atomic in the sense that they either fulfill all their tasks or else have no effect. To this end, a SAVEPOINT statement is specified initially. If the subroutine could not fulfill its tasks, all the modifications made by the database procedure can be reversed by a ROLLBACK TO statement.

The COMMIT statement and the ROLLBACK statement close any open subtransactions implicitly.

More Information

Transactions

SUBTRANS Statement (subtrans_statement)


RENAME SYNONYM Statement (rename_synonym_statement) - SAP Documentation

Background documentation RENAME SYNONYM Statement (rename_synonym_statement)

The RENAME SYNONYM statement (rename_synonym_statement) changes the name of a synonym.

Structure

Syntax Syntax

  1. <rename_synonym_statement> ::=
  RENAME [PUBLIC] SYNONYM <old_synonym_name> TO <new_synonym_name>

<old_synonym_name> ::=
  <synonym_name>

<new_synonym_name> ::=
  <synonym_name>
End of the code.
Explanation

The old synonym name old_synonym_name must have been generated by the current database user.

If PUBLIC is specified, the old synonym must be defined as PUBLIC.

A table of the current database user with the new synonym name (new_synonym_name) must not exist already.


CASCADE Option (cascade_option) - SAP Documentation

Background documentation CASCADE Option (cascade_option)

A CASCADE option (cascade_option) determines the deletion behavior for objects (e.g. tables, users). This means you define whether certain dependencies are to be taken into account when objects are deleted.

Structure

Syntax Syntax

  1. <cascade_option> ::=
  CASCADE
| RESTRICT
End of the code.
Explanation

CASCADE: Dependencies are not taken into account

RESTRICT: Dependencies are taken into account

More Information

DROP Definition

DROP SCHEMA Statement

DROP TABLE Statement

DROP USER Statement

DROP USERGROUP Statement

DROP VIEW Statement

REVOKE Statement

Referential CONSTRAINT definition


MODIFY Definition (modify_definition) - SAP Documentation

Background documentation MODIFY Definition (modify_definition)

You can modify data types and column attributes by specifying a MODIFY definition (modify_definition) in the ALTER TABLE statement.

Structure

Syntax Syntax

  1. <modify_defnition> ::=
  MODIFY (<modify_column_definition>,...)

<modify_column_definition> ::=
  <column_name> <data_type> <column_attributes>
| <column_name> <data_type>
| <column_name> <column_attributes>
End of the code.
Examples

SQL Tutorial, Tables

Explanation

The parentheses are not necessary if the MODIFY definition only contains one column_name.

Each column name must be a column of the base table specified in the ALTER TABLE statement.

If a column identified by column_name  is contained in a CONSTRAINT definition for the table, this column must also define a valid search condition once the data type has been modified.

<data_type>

If a DEFAULT specification is not specified and if a DEFAULT specification is defined for the corresponding column, it must be compatible with the data_type.

  • Code attribute ASCII: The corresponding column must possess the data type DATE, TIME or TIMESTAMP or the code attribute ASCII or UNICODE before modification.

  • Code attribute UNICODE: A transformation from UNICODE to ASCII must be possible for the corresponding column.

  • Code attribute BYTE: The corresponding column must possess the data type DATE, TIME or TIMESTAMP or the code attribute ASCII or BYTE before modification.

Data type CHAR(n), VARCHAR(n): The corresponding column must possess the data type CHAR(n), VARCHAR(n), DATE, TIME or TIMESTAMP. In this case, the table must not contain a row in which the column has a value with a length greater than n. If a column had the code attribute UNICODE before the ALTER TABLE statement was executed, and the new code attribute is not UNICODE, transformation to the new code attribute must be possible.

Data type DATE: The corresponding column must possess the data type CHAR(n), VARCHAR(n) or DATE. This column must contain a date value in any of the date formats supported by the database system in all rows of the table.

Data type FIXED (n,m): The corresponding column must possess the data type FIXED(n,m), FLOAT, INT or SMALLINT. In this case, the table must not contain a row that has a value with more than (n - m) integral or m fractional digits in the column.

Data type FLOAT(n): The corresponding column must possess the data type FIXED(n,m), FLOAT(n), INT or SMALLINT.

Data type INT: The corresponding column must possess the data type FIXED(n,m), FLOAT(n), INT or SMALLINT. In this case, the table must only contain rows containing integral values between -2147483648 and 2147483647 in the column.

Data type SMALLINT: The corresponding column must possess the data type FIXED(n,m), FLOAT(n), INT or SMALLINT. In this case, the table must only contain rows containing integral values between -32768 and 32767 in the column.

Data type TIME: The corresponding column must possess the data type CHAR(n), VARCHAR(n) or TIME. This column must contain a time value in any of the time formats supported by the database system in all rows of the table.

Data type TIMESTAMP: The corresponding column must possess the data type CHAR(n), VARCHAR(n) or TIMESTAMP. This column must contain a timestamp value in any of the time stamp formats supported by the database system in all rows of the table.

Column attribute NULL: A NULL value can be entered in the corresponding column with a subsequent INSERT or UPDATE statement.

<column_attributes>

The following column attributes only are allowed:

  • NULL

    NULL Value

  • NOT NULL

    When NOT NULL is specified, no rows in the table may contain a NULL value in the corresponding column. A NULL value can no longer be inserted into the column after being modified.

  • DEFAULT Specification

    The DEFAULT specification DEFAULT SERIAL is not permitted. If a DEFAULT specification is specified, it replaces an existing DEFAULT specification in the corresponding column. The new DEFAULT specification only affects subsequent INSERT statements and does not affect rows already existing in the table.

Further Explanations

Depending on the type of modification, the MODIFY definition may result in the table having to be recopied and/or indexes rebuilt. Runtime will be considerably long in such cases.

If a table is recopied and the table contains columns marked as deleted, these columns are removed from the database catalog and from the table rows, thus reducing the space requirement for the table.


BETWEEN Predicate (between_predicate) - SAP Documentation

Background documentation BETWEEN Predicate (between_predicate)

The BETWEEN predicate (between_predicate) is a predicate that checks whether a value lies in a predefined interval.

Structure

Syntax Syntax

  1. <between_predicate> ::=
  <expression> [NOT] BETWEEN <expression> AND <expression>
End of the code.
Examples

SQL Tutorial, Conditions: Comparison, AND, OR, BETWEEN, IN, Negative Conditions: NOT

Explanation

Let x, y, and z be the results of the first, second, and third expression (expression). The values x, y and z must be comparable with each other.

BETWEEN Predicate (between_predicate)
x, y, z | Result of the Specified Predicate
x BETWEEN y AND z | x>=y AND x<=z
x NOT BETWEEN y AND z | NOT(x BETWEEN y AND z)
x, y or z are NULL values | x [NOT] BETWEEN y AND z is undefined


CREATE FUNCTION Statement (create_function_statement) - SAP Documentation

Background documentation CREATE FUNCTION Statement (create_function_statement)

The CREATE FUNCTION statement (create_function_statement) defines a database function.

Structure

Syntax Syntax

  1. <create_function_statement> ::=
  CREATE [PUBLIC] FUNCTION <dbfunction_name>
    [(<formal_parameter1>,..)] RETURNS <data_type>
    [DETERMINISTIC] AS <routine>

<formal_parameter1> ::=
  <argument1> <data_type>

<argument1> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Database Functions

Explanation

If a schema is not specified in the database function name, the current schema is implicitly assumed.

The database function is assigned to the schema that has been determined implicitly or specified explicitly. The current user must have the CREATEIN privilege for this schema. The function name must differ from the names of the database functions already existing in the schema.

The current user is the owner of a database function. This user has the EXECUTE privilege to execute the database function and assign this authorization to other users.

If a results table is created in the database function, its name must be different to the results table of the SQL statement it is called by.

Argument

By specifying an argument, argument1, you assign a name to a formal parameter of the database function. This parameter name can then be used as a variable in expressions and assignments in the database function.

Data type

Only the data types BOOLEAN, CHAR[ACTER], DATE, FIXED, FLOAT, INT[EGER], NUMBER, REAL, SMALLINT, TIME, TIMESTAMP and VARCHAR are permitted as a data type (data_type) of the formal parameter of a database function.

Data types are normally defined with both length and precision. If VARCHAR is used, then the length is not specified; if NUMBER is used, then the precision is not specified. In these cases, the database system automatically derives the length or precision, depending on the context of the function call.

PUBLIC

By specifying PUBLIC, you generate a global database function that can be called without specifying a schema name. In this case, the function name must not contain a schema name and must not be the same as the name of another global database function.

RETURNS

Only the data types BOOLEAN, CHAR[ACTER], DATE, DEC[IMAL], DOUBLE, FLOAT, INT[EGER], NUMBER, NUMERIC, REAL, SMALLINT, TIME, TIMESTAMP and VARCHAR are permitted as a data type of the return value.

DETERMINISTIC

Specifying DETERMINISTIC ensures that the function exhibits a deterministic behavior. This means that the same values are always returned for the same input values.

Specifying DETERMINISTIC is absolutely necessary if you want to use the function to generate a function index.

More Information

Privilege Specification for a Schema

GRANT Statement

CREATE DBPROC[EDURE] Statement


Identifier (identifier) - SAP Documentation

Background documentation Identifier (identifier)

Identifier (identifier). A distinction is made between simple identifiers (simple_identifier) and special identifiers (special_identifier).

Structure

Syntax Syntax

  1. <identifier> ::=
  <simple_identifier>
| <double_quotes><special_identifier><double_quotes>

<simple_identifier> ::=
  <first_character>[<identifier_tail_character>...]

<special_identifier> ::=
  <special_identifier_character>...

<double_quotes> ::=
  "
End of the code.

Example Example

Simple identifier: reservation

Special identifier: "ADD", "Example_1"

End of the example.
Simple Identifier

Syntax Syntax

  1. <simple_identifier> ::=
  <first_character>[<identifier_tail_character>...]

<first_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>

<identifier_tail_character> ::=
| <digit>
| <letter>
| <extended_letter>
| <language_specific_character>
| <underscore>
End of the code.

Identifiers can be entered in uppercase/lowercase characters. When you specify simple identifiers (simple_identifier), upper and lower case are ignored, as the system always converts the identifier to upper case letters.

The first character in a simple identifier may not be a digit or underscore (underscore). Reserved keywords must not be used in simple identifiers.

Special Identifier

Syntax Syntax

  1. <special_identifier> ::=
  <special_identifier_character>...

<special_identifier_character> ::=
<!  any characters <character>, that can be linked in any sequence  !>
End of the code.

Identifiers can be entered in uppercase/lowercase characters. Special identifiers (special_identifier) are always used as specified in the database; that is upper and lower case characters are taken into account. Special identifiers are case sensitive.

If the name of a database object is to contain lowercase letters, special characters, reserved keywords, or blanks, the identifier must be specified as a special identifier that is enclosed in double quotation marks (double_quotes).

Quotation marks within a special identifier are represented by two consecutive quotation marks.

Explanations

Syntax Syntax

  1. <letter> ::=
  A | B | C | D | E | F | G | H | I | J | K | L | M
  N | O | P | Q | R | S | T | U | V | W | X | Y | Z
  a | b | c | d | e | f | g | h | i | j | k | l | m
  n | o | p | q | r | s | t | u | v | w | x | y | z

<extended_letter> ::=
  # | @ | $

<language_specific_character> ::=
<!  <any letter that occurs in a northern, southern,
    or central European language and is not contained in the list of <letter>>
  | <for a UNICODE-enabled database: any character that is
    not included in the ASCII code list from 0 to 127>
!>

<digit> ::=
  0 | 1 | 2 | | 3 | 4 | 5 | 6 | 7 | 8 | 9

<underscore> ::=
  _
End of the code.

Example Example

Language-specific characters

German umlauts: ä, ö, ü

French letters with a grave accent: à

End of the example.

More Information

Literal (literal)

Character Set (token)


CLOSE Statement (close_statement) - SAP Documentation

Background documentation CLOSE Statement (close_statement)

The CLOSE statement (close_statement) deletes a result table.

Structure

Syntax Syntax

  1. <close_statement> ::=
  CLOSE [<result_table_name>]
End of the code.
Explanation

  • Result table name specified: This result table is deleted. This name can be used to denote another result table.

  • No result table name specified: An existing unnamed result table is deleted.

An unnamed result table is implicitly deleted by the next SELECT statement.

Result tables are implicitly deleted when a result table with the same name is generated.

All results tables generated within the current transaction are deleted implicitly at the end of the transaction using the ROLLBACK statement.

All results tables are deleted implicitly at the end of the session using the RELEASE statement.

More Information

Data Query


Key Specification (key_spec) - SAP Documentation

Background documentation Key Specification (key_spec)

A key specification (key_spec) allows rows in a table to be located whose key column values match the values in the key specification. A row with the specified key values does not have to exist.

Structure

Syntax Syntax

  1. <key_spec> ::=
  <column_name> = <value_spec>
End of the code.
Explanation

The value specification (value_spec) must not be NULL. The column name (column_name) must identify a key column in the table. The key specification must contain all the key columns in a table. The individual key specifications (key_spec) must be separated by commas.

For tables defined without key columns, there is the implicitly generated column SYSKEY CHAR(8) BYTE, which contains a key generated by the database system. This column can only be used in a key specification.

More Information

A key specification (key_spec) is used in the following SQL statements:

LOCK Statement (lock_statement)

UNLOCK Statement (unlock_statement)

The key specification (key_spec) is no longer recommended to be used and might be removed from future versions in the following SQL statements:.

UPDATE Statement (update_statement)

DELETE Statement (delete_statement)


Database Function Call (dbfunction_call) - SAP Documentation

Background documentation Database Function Call (dbfunction_call)

A database function is called (dbfunction_call) in the same way as a function. The database function is created by executing a CREATE FUNCTION statement.

Structure

Syntax Syntax

  1. <dbfunction_call> ::=
  <dbfunction_name>([<expression>,...])
End of the code.
Examples

SQL Tutorial, Database Functions, Functions

Explanation

The current database user must have the authorization to execute the database function (EXECUTE privilege).

More Information

Functions: Overview

GRANT Statement


Boolean Predicate (bool_predicate) - SAP Documentation

Background documentation Boolean Predicate (bool_predicate)

Boolean values (BOOLEAN) are compared in a Boolean predicate (bool_predicate).

Structure

Syntax Syntax

  1. <bool_predicate> ::=
  <column_spec> [IS [NOT] TRUE | IS [NOT] FALSE]
End of the code.
Explanation

If only one column specification (column_spec) is specified, the syntax is identical to <column_spec> IS TRUE. The column specification must always denote a column with the data type BOOLEAN.

The following rules apply to the result of a Boolean predicate:

Boolean Predicate (bool_predicate)
Column Value | IS TRUE | IS NOT TRUE | IS FALSE | IS NOT FALSE
False | False | True | True | False
Undefined | Undefined | Undefined | Undefined | Undefined
True | True | False | False | True


CALL Statement (call_statement) - SAP Documentation

Background documentation CALL Statement (call_statement)

The CALL statement (call_statement) causes a database procedure to be executed.

Structure

Syntax Syntax

  1. <call_statement> ::=
  CALL <dbproc_name> [(<expression>,...)] [WITH COMMIT]
End of the code.
Examples

SQL Tutorial, Database Procedures

Explanation

The specified database procedure name must identify an existing database procedure. The current database user must have the EXECUTE privilege for the database procedure.

The number of expressions (expression) must be equal to the number of formal parameters for the database procedure. The data type of the ith expression must be compatible with the data type of the ith formal parameter for the database procedure.

If the ith formal parameter for the database procedure has the OUT or INOUT mode (see CREATE DBPROC statement), the corresponding expression must be a parameter specification.

WITH COMMIT

If WITH COMMIT is specified, the current transactions are terminated with COMMIT after the database procedure has been executed correctly. If execution of the database procedure fails, the current transaction is terminated with ROLLBACK.

More Information

GRANT Statement


COMMIT Statement (commit_statement) - SAP Documentation

Background documentation COMMIT Statement (commit_statement)

A COMMIT statement (commit_statement) terminates the current transaction and starts a new one.

Structure

Syntax Syntax

  1. <commit_statement> ::=
  COMMIT [WORK]
End of the code.
Explanation

The COMMIT statement terminates the current transaction and implicitly opens a new transaction. Any locks set within the new transaction are assigned to this transaction. The setting of locks in the new transaction is controlled by the isolation level defined in the CONNECT statement.

More Information

Glossary, COMMIT


SQL Statements: Overview - SAP Documentation

Background documentation SQL Statements: Overview

All SQL statements (sql_statement) can be embedded in programming languages and, with the exception of NEXT STAMP, can be specified interactively. Comments (sql_comment) can be specified for every SQL statement.

For many SQL statements, example statements have been formulated using the demo data for the SQL tutorial.

Significant changes to the syntax as compared with older database versions are described in the section Syntax Changes.

SQL Statements for Data Definition
SQL Statements for Data Definition
CREATE TABLE Statement | DROP TABLE Statement | ALTER TABLE Statement RENAME TABLE Statement RENAME COLUMN Statement EXISTS TABLE Statement
CREATE SCHEMA Statement | DROP SCHEMA Statement | RENAME SCHEMA Statement
CREATE DOMAIN Statement | DROP DOMAIN Statement |
CREATE SEQUENCE Statement | DROP SEQUENCE Statement |
CREATE SYNONYM Statement | DROP SYNONYM Statement | RENAME SYNONYM Statement
CREATE VIEW Statement | DROP VIEW Statement | RENAME VIEW Statement
CREATE INDEX Statement | DROP INDEX Statement | ALTER INDEX Statement RENAME INDEX Statement
CREATE DBPROC[EDURE] Statement | DROP DBPROC[EDURE] Statement |
CREATE SYSTEM TRIGGER Statement | DROP SYSTEM TRIGGER Statement |
CREATE FUNCTION Statement | DROP FUNCTION Statement |
CREATE TRIGGER Statement | DROP TRIGGER Statement |
COMMENT ON Statement |  |
SQL Statements for Authorization
SQL Statements for Authorization
CREATE USER Statement | DROP USER Statement | ALTER USER Statement RENAME USER Statement GRANT USER Statement
CREATE USERGROUP Statement | DROP USERGROUP Statement | ALTER USERGROUP Statement RENAME USERGROUP Statement GRANT USERGROUP Statement
ALTER PASSWORD Statement |  |
CREATE ROLE Statement | DROP ROLE Statement |
GRANT Statement | REVOKE Statement |
SQL Statements for Data Manipulation
SQL Statements for Data Manipulation
INSERT Statement | UPDATE Statement | DELETE Statement
NEXT STAMP Statement | CALL Statement |
SQL Statements for Data Queries
SQL Statements for Data Queries
QUERY Statement | SINGLE SELECT Statement | EXPLAIN Statement
FETCH Statement | CLOSE Statement |
SQL Statements for Transaction Management
SQL Statements for Transaction Management
CONNECT Statement | SET Statement
COMMIT Statement | ROLLBACK Statement
SUBTRANS Statement | SQL SAVEPOINT Statements
INNER TRANSACTION Statement | LOCK Statement
UNLOCK Statement | RELEASE Statement
SQL statements for Statistics Management
SQL Statements for Statistics Management

UPDATE STATISTICS Statement

MONITOR Statement

More Information

  • Data Definition

    Authorization

    Data Manipulation

    Data Query

    Transactions

    Statistics

  • SQL Syntax

  • Restrictions for SQL Statements

  • SQL Tutorial

  • SQL Reference Manual


COMMENT ON Statement (comment_on_statement) - SAP Documentation

Background documentation COMMENT ON Statement (comment_on_statement)

The COMMENT ON statement (comment_on_statement) creates, alters or deletes a comment for a database object stored in the database catalog.

Structure

Syntax Syntax

  1. <comment_on_statement> ::=
  COMMENT ON <object_spec> IS <comment>

<object_spec> ::=
  see explanation below

<comment> ::=
  <string_literal>
| <parameter_name>
End of the code.
Explanation

Comments can be specified for the following database objects:

COMMENT_ON Statement
<object_spec> ::= | Explanation
COLUMN <table_name>.<column_name> | The column must exist in the specified table. The current database user must be the owner of the table. The comment for this column can be requested by selecting the system table DOMAIN.COLUMNS.
DBPROC[EDURE] <dbproc_name> | dbproc_name must identify an existing database procedure, the owner of which is the current database user. A comment is stored for the DB procedure. The comment can be requested by selecting the system table DOMAIN.DBPROCEDURES.
DOMAIN <domain_name> | domain_name must specify a domain of the current database user. The comment for this domain can be requested by selecting the system table DOMAIN.DOMAINS.
FOREIGN KEY <table_name>.<referential_constraint_name> | referential_constraint_name must specify a referential CONSTRAINT definition for the specified table. The current database user must be the owner of the table. The comment for this referential CONSTRAINT definition can be requested by selecting the system table DOMAIN.FOREIGNKEYS.
INDEX <index_name> ON <table_name> | index_name must specify an index of the specified table. The current database user must be the owner of the table. The comment for this index can be requested by selecting the system table DOMAIN.INDEXES.
SEQUENCE <sequence_name> | An existing sequence must be specified using sequence_name. The current database user must be the owner of the sequence. The comment for this sequence can be requested by selecting the system table DOMAIN.SEQUENCES.
[PUBLIC] SYNONYM <synonym_name> | synonym_name must specify a synonym of the current database user. If PUBLIC is specified, the synonym must have the PUBLIC attribute. The comment for this synonym can be requested by selecting the system table DOMAIN.SYNONYMS.
TABLE <table_name> | The specified table must identify a base or view table of the current user that is not a temporary table. The current database user must be the owner of the table. The comment for this table can be requested by selecting the system table DOMAIN.TABLES.
TRIGGER <table_name>.<trigger_name> | The specified trigger name must identify a trigger of the specified table. The current database user must be the owner of the table. A comment is stored for the trigger. The comment can be retrieved by selecting the system table DOMAIN.TRIGGERS.
USER <user_name> | The specified database user must identify an existing user whose owner is the current database user. The comment for this database user can be requested by selecting the system table DOMAIN.USERS.
USERGROUP <usergroup_name> | The specified user group must identify an existing user group whose owner is the current database user. The comment for this user group can be requested by selecting the system table DOMAIN.USERS.
<parameter_name> | The corresponding variable must contain one of the values listed in the table. The values must be enclosed by inverted commas. Example of a corresponding variable: 'COLUMN <table_name>.<column_name>'


CONSTRAINT Definition (constraint_definition) - SAP Documentation

Background documentation CONSTRAINT Definition (constraint_definition)

A CONSTRAINT definition (constraint_definition) defines an integrity condition that must be fulfilled by all the rows in one table.

Structure

Syntax Syntax

  1. <constraint_definition> ::=
  CHECK <search_condition>
| CONSTRAINT <search_condition>
| CONSTRAINT <constraint_name> CHECK <search_condition>
End of the code.
Examples

SQL Tutorial, Constraints

Explanation

A CONSTRAINT definition defines an integrity condition that must be fulfilled by all the column values for the column defined by the column definition with a CONSTRAINT definition.

The CONSTRAINT definition in a column is checked when a row is inserted and a column changed that occurs in the CONSTRAINT definition. If the CONSTRAINT definition is violated, the INSERT or UPDATE statement fails.

The search condition (search_condition) of the CONSTRAINT definition must not contain a subquery or set function and may only contain column names in the form column_name.

<constraint_name>

  • No constraint name specified:

    The database system assigns a constraint name that is unique for the table in question.

  • Constraint name specified:

    The constraint name must be different to all other constraint names for this table.

<search_condition>

The number of columns in a search condition plays a role.

  • The search condition contains only one column name of the table:

    When the table is created (CREATE TABLE statement), you can check whether an additional DEFAULT value specified as a column attribute fulfills the search condition. If not, the CREATE TABLE statement fails.

  • The search condition contains more than one column name of the table:

    When the table is created (CREATE TABLE statement), it is not possible to decide whether DEFAULT values of the table columns fulfill the search condition. In this case, an attempt to insert DEFAULT values in the table when an INSERT or UPDATE statement is executed may fail.

More Information

Ensuring Data Integrity


COLUMN Change Definition (column_change_definition) - SAP Documentation

Background documentation COLUMN Change Definition (column_change_definition)

You can modify the properties of a column by specifying a COLUMN change definition (column_change_definition) in the ALTER TABLE statement.

Structure

Syntax Syntax

  1. <column_change_definition> ::=
  COLUMN <column_name> ADD <default_spec>
| COLUMN <column_name> ALTER <default_spec>
| COLUMN <column_name> DEFAULT NULL
| COLUMN <column_name> DROP DEFAULT
| COLUMN <column_name> NOT NULL
End of the code.
ADD <default_spec>

The column must not contain a DEFAULT specification (default_spec) before the ALTER TABLE statement is executed with ADD <default_spec>. ADD <default_spec> assigns a DEFAULT value to the column.

ALTER <default spec>

ALTER <default_spec> changes the DEFAULT value assigned to the column. All of the rows that contain the old default value in the column remain unaltered.

DEFAULT NULL

DEFAULT NULL allows a NULL value for the column. The system does not check whether a NULL value violates existing CONSTRAINT definitions in the table. For this reason, inserting the NULL value can fail when an INSERT or UPDATE statement is executed.

DROP DEFAULT

DROP DEFAULT drops the DEFAULT specification of the column. If the column is the foreign key column of a referential CONSTRAINT definition with the DELETE RULE ON DELETE SET DEFAULT, the ALTER TABLE statement will fail.

NOT NULL

NOT NULL can only be specified if the column contains no NULL values. You cannot add a NULL value to the column once the ALTER TABLE statement has been successfully executed.


Special Function (special_function) - SAP Documentation

Background documentation Special Function (special_function)

Special functions (special_function) are special functions which are not restricted to specific data types.

Structure

Syntax Syntax

  1. <special_function> ::=
  <case_function>
| DECODE(<check_expression>,<search_and_result_spec>,...[,<default_expression>])
| GREATEST(<expression>,<expression>,...)
| LEAST(<expression>,<expression>,...)
| VALUE(<expression>,<expression>,...)

<case_function> ::=
  <simple_case_function>
| <searched_case_function>

<check_expression> ::=
  <expression>

<search_and_result_spec> ::=
  <search_expression>,<result_expression>

<default_expression> ::=
  <expression>

<search_expression> ::=
  <expression>

<result_expression> ::=
  <expression>
End of the code.
Explanation

A distinction is made between simple and general CASE functions.

More Information

Functions: Overview


Column Attributes (column_attributes) - SAP Documentation

Background documentation Column Attributes (column_attributes)

A column definition can contain the column name (column_name) and column attributes (column_attributes).

Structure

Syntax Syntax

  1. <column_attributes> ::=
  [<key_or_not_null_spec>]
  [<default_spec>]
  [UNIQUE]
  [<constraint_definition>]
  [REFERENCES <referenced_table>
    [(<referenced_column>)]
    [<delete_rule>]]

<key_or_not_null_spec> ::=
  [PRIMARY] KEY
| NOT NULL [WITH DEFAULT]

<referenced_table> ::=
  <table_name>

<referenced_column> ::=
  <column_name>
End of the code.
Explanation

A CONSTRAINT definition constraint_definition defines a condition that must be fulfilled by all the column values in the columns defined by the column_definition.

Specifying [REFERENCES <referenced_table> [(<referenced_column>)] [<delete_rule>] has the same effect as specifying the referential CONSTRAINT definition FOREIGN KEY [<referential_constraint_name>] (<referencing_column>) REFERENCES <referenced_table> [(<referenced_column>,...)] [<delete_rule>]

referenced_table

referenced_column

Referenced table

Referenced column

Data type LOB: you may only specify NOT NULL or a DEFAULT specification as a column attribute for LOB columns.

The [PRIMARY] KEY and UNIQUE column attributes must not be used together in a column definition.

[PRIMARY] KEY

If the column attribute [PRIMARY] KEY is specified, the CREATE TABLE statement must not contain a key definition.

If the KEY column attribute is specified, this column is part of the key of a table and is called the key column. The database system ensures that the key values in a table are unique. To improve performance, the key should start with key columns which can assume many different values and which are to be used frequently in conditions with the "=" operator.

If a table is defined without a key column, the database system creates a key column SYSKEY CHAR(8) BYTE implicitly. This column is not visible with a SELECT *. However, it can be specified explicitly and has then the same function as a key column. The SYSKEY column can be used to obtain unique keys generated by the database system. The keys are in ascending order, thus reflecting the order of insertion in the table. The key values in the SYSKEY column are only unique within a table. This means the SYSKEY column in two different tables may contain the same values. If a unique key is desired across the entire database system, a key column of the data type CHAR(8) BYTE can be defined with the DEFAULT specification STAMP.

NOT NULL

NOT NULL must not be used together with the DEFAULT specification NULL.

NOT NULL WITH DEFAULT defines a default value (DEFAULT) that is dependent on the data type of the column. NOT NULL WITH DEFAULT must not be used with any of the DEFAULT specifications.

Column Data Type | DEFAULT Value
CHAR (n) VARCHAR(n) | ' '
CHAR(n) BYTE VARCHAR(n) BYTE | X'00'
FIXED(p,s) INT SMALLINT FLOAT(p) | 0
DATE | DATE
TIME | TIME
TIMESTAMP | TIMESTAMP
BOOLEAN | FALSE
UNIQUE

The UNIQUE column attribute determines the uniqueness of column values (see also CREATE INDEX statement).

More Information

Restrictions for SQL Statements


Constraint Name (constraint_name) - SAP Documentation

Background documentation Constraint Name (constraint_name)

A constraint name (constraint_name) defines an integrity condition that must be satisfied by the rows in a table.

Structure

Syntax Syntax

  1. <constraint_name> ::
  <identifier>
End of the code.
Examples

SQL Tutorial, Constraints

Explanation

An error message is output if the name consists of more than 32 characters.

More Information

Ensuring Data Integrity

CONSTRAINT Definition

ALTER definition

CREATE DOMAIN Definition

DROP Definition


Schema Name (schema_name) - SAP Documentation

Background documentation Schema Name (schema_name)

You can define assignment of an object to a schema by specifying the name of the schema (schema_name).

Structure

Syntax Syntax

  1. <schema_name> ::=
  <identifier>
End of the code.

The identifier may not exceed 32 characters in length.

Examples

SQL Tutorial, Schemas

Explanation

Schemas create namespaces for database objects. When you create a new database, the database system creates the database system administrator and implicitly creates a schema with the same name. The database system also creates the following schemas for the database system administrator: DOMAIN, SYSINFO.

When a database user is created using the CREATE USER statement, a schema, the name of which is identical to the name of the database user, is created implicitly.

When a schema is created using the CREATE SCHEMA statement, the schema name and owner of the schema can be specified explicitly. If no owner is specified, the current database user becomes the owner of the schema.

Each schema has a maximum of one owner. The owner of the schema can create, change, and delete objects in his own schema, since he or she is granted the relevant privileges implicitly. The owner can also grant these privileges to other database users.

Schemas can be created that do not correspond to a user name. The database user DAVID can create the schemas A, B, and C and be the owner of all these. A database user A, B, or C need not exist.

More Information

CREATE SCHEMA Statement (create_schema_statement)

GRANT Statement (grant_statement)

RENAME SCHEMA Statement (rename_schema_statement)

SET Statement (set_statement)

DROP SCHEMA Statement (drop_schema_statement)


Data Type (data_type) - SAP Documentation

Background documentation Data Type (data_type)

A column definition (column_definition) can contain both the column name (column_name) and data types.

The following data types can be distinguished:

  • NULL Value

  • Special NULL Value

  • Non-NULL values

    Character String, LOB Column (CLOB, BLOB), Number, Date Value, Time Value, Time Stamp Value, BOOLEAN

The non-NULL values can be specified using the syntax element data_type.

Structure

Syntax Syntax

  1. <data_type> ::=
  CHAR[ACTER][(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| VARCHAR[(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| CLOB [ASCII | UNICODE]
| BLOB
| BOOLEAN
| FIXED(<unsigned_integer> [,<unsigned_integer>])
| FLOAT(<unsigned_integer>)
| INT[EGER]
| SMALLINT
| DATE
| TIME
| TIMESTAMP
End of the code.

For more information on ASCII, BYTE or UNICODE, see the section Code Attribute.

Examples

SQL Tutorial, Tables, Number Generator for a Single Column of a Table

Explanation

In addition to the data types defined above, the following data types are also permitted in a column definition. The table below also indicates the way these are mapped to the above-mentioned data types.

Data Type (data_type)
Data Type | Is Mapped To
BINARY(p) | FIXED(p)
DEC[IMAL](p,s) | FIXED(p,s)
DEC[IMAL](p) | FIXED(p)
DEC[IMAL] | FIXED(5)
DOUBLE PRECISION | FLOAT(38)
FLOAT | FLOAT(16)
FLOAT(39..64) | FLOAT(38)
LONG [ASCII] | CLOB
LONG BYTE | BLOB
LONG UNICODE | CLOB UNICODE
LONG VARCHAR | CLOB
NCHAR(p) | CHAR(p) UNICODE
NCLOB | CLOB UNICODE
NVARCHAR(p) | VARCHAR(p) UNICODE
NUMERIC(p,s) | FIXED(p,s)
NUMERIC(p) | FIXED(p)
NUMERIC | FIXED(5)
REAL(p) | FLOAT(p)
REAL | FLOAT(16)
SERIAL | FIXED(10) DEFAULT SERIAL
SERIAL(p) | FIXED(10) DEFAULT SERIAL(p)

More Information

Memory Requirements of a Column Value According to Data Type

SQL Tutorial, Converting Values


CREATE USERGROUP Statement (create_usergroup_statement) - SAP Documentation

Background documentation CREATE USERGROUP Statement (create_usergroup_statement)

The CREATE USERGROUP statement (create_usergroup_statement) defines a user group.

Structure

Syntax Syntax

  1. <create_usergroup_statement> ::
  CREATE USERGROUP <usergroup_name>
    [<usergroup_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>
    [<connect_mode>]

<usergroup_mode> ::=
  RESOURCE
| STANDARD

<ascii_or_unicode> ::=
  ASCII
| UNICODE

<connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT
End of the code.
Explanation

The current database user must be a database administrator (DBA user). The specified user group name must not be identical to the name of an existing database user, user group, or role.

You can use the CREATE USER statement to define multiple users who are to belong to this user group. All private objects created by members of the user group are identified by the user group name. The owner of a private object is the group, not the database user who created the object. Each database user can work with any private object of the group, as if this user were the owner of the object. Privileges can only be granted or revoked from the group. A privilege cannot be granted or revoked from a single member of the group.

Any unsigned_integer specified must be greater than 0.

There is no restriction to the amount of disk space available to the database user for storing his or her private and temporary tables (in the context of sizes specified for the data volumes during installation).

usergroup_mode RESOURCE | STANDARD

When a user group is created, the database user class RESOURCE or STANDARD is defined for this user group using usergroup_mode. If no database user group class is specified, the STANDARD class is assumed implicitly. The database user class RESOURCE encompasses all the rights of STANDARD users.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables
TIMEOUT

The timeout value is specified in seconds and must be between 30 and 32400. Only the database system administrator can define database users with the timeout value 0.

COSTLIMIT

This specification limits costs by preventing specified database users from executing QUERY statements or INSERT statements in the form of INSERT...SELECT... beyond a specified degree of complexity, which would otherwise be cost-intensive. COSTLIMIT specifies the estimated SELECT cost value beyond which the SQL statement is not executed.

Before these SQL statements are executed, the costs expected to result from this statement are estimated. This SELECT cost estimate can be output using the EXPLAIN statement. In interactive mode, the estimated SELECT cost value is compared with the COSTLIMIT value specified for the database user. The COSTLIMIT value is ignored with QUERY statements or INSERT statements of the form INSERT...SELECT... that are embedded in a programming language.

[NOT] EXCLUSIVE

If the EXCLUSIVE syntax rule is not specified, NOT EXCLUSIVE is assumed implicitly.

  • EXCLUSIVE: This prevents the specified database user from opening two different database sessions simultaneously.

  • NOT EXCLUSIVE: Allows the database user to open several database sessions simultaneously.

DEFAULTCODE

The value of the special database parameter DefaultCodePage is overridden with the code attribute ASCII or UNICODE specified in syntax rule DEFAULTCODE <ascii_or_unicode> for objects of the specified database user.

ENABLE CONNECT | DISABLE CONNECT

You can use connect_mode to define whether a database user can open database sessions. For CREATE USERGROUP statement this is only valid however if CONNECT mode (connect_mode) is not specified in the CREATE USER statement.

If CONNECT mode is not specified, ENABLE CONNECT is implicitly assumed. ENABLE and DISABLE cannot both be specified at the same time.

  • ENABLE CONNECT: The database user (members of the database user group) can open database sessions.

  • DISABLE CONNECT: The database user (members of the database user group) cannot open database sessions. ALTER USER|USERGROUP statement: The database sessions of the specified database user (members of the specified database user group) are terminated. You can enable the individual members of a database user group to open database sessions again using the ALTER USER statement.

More Information

ALTER USERGROUP Statement (alter_usergroup_statement)

CREATE USER Statement (create_user_statement)


CREATE TABLE Statement (create_table_statement) - SAP Documentation

Background documentation CREATE TABLE Statement (create_table_statement)

The CREATE TABLE statement (create_table_statement) defines a base table. There are three syntactic options for creating a table.

Structure

Syntax Syntax

  1. <create_table_statement> ::=
  CREATE TABLE <table_name>
    (<table_description_element> [,<table_description_element>,...])
    [IGNORE ROLLBACK]
    [<sample_definition>]
    [CACHE] [NOCACHE]
| CREATE TABLE <table_name>
    [(<table_description_element>,...)]
    [IGNORE ROLLBACK]
    [<sample_definition>]
    AS <query_expression>
    [<duplicates_clause>]
| CREATE TABLE <table_name> LIKE <table_name>
    [IGNORE ROLLBACK]

<table_description_element> ::=
  <column_definition>
| <constraint_definition>
| <key_definition>
| <referential_constraint_definition>
| <unique_definition>
End of the code.
Examples

SQL Tutorial, Tables, Primary Key, Constraints, Foreign Key Dependencies Between Tables, Indexes, Domains

Explanation

Executing a CREATE TABLE statement causes data that describes the table (or base table) to be stored in the database catalog. This data is called metadata.

A CREATE TABLE statement cannot contain more than one key definition (key_definition). If the name of the schema is not specified in the table name (table_name), the current schema is assumed implicitly. The table name must not be identical to the name of an existing table in the schema.

The current database user must have the CREATEIN privilege for the schema specified either implicitly or explicitly in the table name. The current database user becomes the owner of the created table. The user obtains the INSERT, UPDATE, DELETE and SELECT privileges for this table. If the table is not a temporary table, the owner is also granted the INDEX, REFERENCES, and ALTER privileges.

Schema Assignment of a Table

  • The schema name is specified before the table name: temporary tables are identified by the schema TEMP before their name. If a table belongs to a schema other than TEMP, the current user must have the CREATEIN privilege for the specified schema.

  • The schema name is not specified: the table belongs to the current schema. This is either the schema that bears the name of the current database user or the schema specified in the SET CURRENT SCHEMA statement.

CREATE TABLE <table_name> (<table_description_element> [,<table_description_element>]) [IGNORE ROLLBACK] [<sample_definition>] [CACHE] [NOCACHE]

If this syntactic option for creating table is specified, the CREATE TABLE statement must contain at least one column definition (column_definition).

CACHE

The specification of CACHE for a table means that data from the table (row values, LOB values, index data) that has been read into the data cache once remains there, as far as possible.

An area is reserved in the data cache for all tables with the CACHE option. The size of this reserved area is defined by the database parameter DataCachePinAreaSize. Data is only replaced in this reserved data cache area if inserting a new data page into the reserved area would cause the permitted size of this reserved area to be exceeded.

The CACHE option is particularly suited for tables that are accessed very frequently.

If CACHE is specified, you cannot specify NOCACHE.

NOCACHE

The specification of NOCACHE for a table means that data from the table (row values, LOB values, index data) that is read into the data cache is removed from the data cache very quickly.

The NOCACHE option is suitable for tables for which a long retention of the data in the data cache is not useful, either because the table is very seldom accessed or because there is no locality of accesses.

If NOCACHE is specified, you cannot specify CACHE.

CREATE TABLE <table_name> [(<table_description_element>,...)] [IGNORE ROLLBACK] [<sample_definition>] AS <query_expression> [<duplicates_clause>]

If a QUERY expression is specified, a base table is defined with the same structure as the result table defined by the QUERY expression.

If column definitions are specified, the column definition may only consist of a column name and the number of column definitions must be equal to the number of columns in the result table generated by the QUERY expression. The data type of the ith column in the base table is identical to that of the ith column in the result table generated by the QUERY expression. The result table may also contain LOB columns. If no column definitions are specified, the column names of the result table are used. The rows of the result table are implicitly inserted in the generated base table.

The QUERY expression is subject to certain restrictions (see also INSERT Statement).

The DUPLICATES clause can be used to determine how key collisions are handled.

CREATE TABLE <table_name> LIKE <table_name> [IGNORE ROLLBACK]

If LIKE <table_name> is specified, an empty base table is created which, from the point of view of the current database user, has the same structure as the source table, that is, it has all the columns with the same column names and definitions as the source table. This view does not necessarily have to be identical to the actual structure of the source table, since the database user may not know all the columns because of privilege limitations.

The specified table must be either a base table, a view table, or a synonym. The database user must have at least one privilege for this table. The current database user is the owner of the base table.

If all the key columns of the table specified after LIKE are contained in the base table, they form the key columns in this table. Otherwise, the database system implicitly inserts a key column SYSKEY CHAR(8) BYTE which then represents the key for the base table.

DEFAULT specifications or CONSTRAINT definitions for columns that are copied to the base table also apply to the new base table.

IGNORE ROLLBACK

IGNORE ROLLBACK is optional and can only be specified for temporary tables. Temporary tables with this characteristic are not affected by the transaction mechanism; in other words, changes affecting these tables are not reversed by rolling back a transaction.

More Information

  • Adding, deleting columns, changing data types, changing the CONSTRAINT definition: ALTER TABLE Statement

    Renaming columns: RENAME COLUMN Statement

    Renaming table: RENAME TABLE statement

    Deleting table: DROP TABLE Statement

  • Restrictions for SQL Statements

  • Privileges: Overview


Data Type of the Target Column and Data Type of the Value to be Inserted - SAP Documentation

Background documentation Data Type of the Target Column and Data Type of the Value to be Inserted

Let C be a target column and v a value that is not equal to the NULL value.

  • v is to be inserted in C by means of an INSERT statement.

  • v is to be used to modify C with an UPDATE statement.

    Data Type of the Target Column and Data Type of the Value to be Inserted

    Target Column C

    Required Value for v

    Numeric column

    Number within the permissible range of C.

    INSERT statement: If v is the result of a QUERY expression, decimal places are rounded off if necessary.

    UPDATE statement: If v is the result of an expression that does not comprise one single numeric literal, decimal places are rounded off if necessary.

    Alphanumeric column with the code attribute ASCII, UNICODE

    Character string whose length is not greater than the length attribute of C. Subsequent blanks are ignored when the length of v is calculated. If the length of v is shorter than the length attribute of C, then v is lengthened by the corresponding number of blanks.

    Alphanumeric column with the code attribute BYTE

    Hexadecimal character string whose length is not greater than the length attribute of C. Subsequent binary zeros are ignored when the length of v is calculated. If the length of v is shorter than the length attribute of C, then v is lengthened by the corresponding number of binary zeros.

    Data type DATE

    Date value in the current date format.

    Data type TIME

    Time value in the current time format.

    Data type TIMESTAMP

    Time stamp value in the current time stamp format.

    Data type BOOLEAN

    One of the values TRUE or FALSE (BOOLEAN)


CREATE TRIGGER Statement (create_trigger_statement) - SAP Documentation

Background documentation CREATE TRIGGER Statement (create_trigger_statement)

The CREATE TRIGGER statement (create_trigger_statement) defines a trigger for a base table.

Structure

Syntax Syntax

  1. <create_trigger_statement> ::=
  CREATE TRIGGER <trigger_name> FOR <table_name> AFTER <trigger_event>,...
    EXECUTE (<routine>) [WHENEVER <search_condition>]

<trigger_event> ::=
  INSERT
| UPDATE [(<column_list>)]
| DELETE

<column_list> ::=
  <column_name>
| <column_list>,<column_name>
End of the code.
Examples

SQL Tutorial, Database Triggers

Explanation

A trigger is a special type of database procedure that is assigned to a base table. A trigger cannot be executed explicitly. Instead, it is executed automatically by the database system when defined events trigger_event occur in the table.

If a schema is not specified in the table name, the current schema is accepted implicitly.

The table name must identify an existing table in the schema. The current database user must be the owner of the specified table.

<trigger_event>

The trigger_event defines which event sets off the trigger. This trigger is called whenever the triggering event takes place, as long as no faults occur.

INSERT: The INSERT trigger event causes the trigger to be executed whenever a row is inserted in the table.

UPDATE: The UPDATE event causes the trigger to be executed for each change made to a row in the table. If a column_list is specified, the trigger is only called if one of the columns in the column list is modified.

DELETE: The DELETE trigger event causes the trigger to be executed whenever a row is deleted from the table.

A maximum of one trigger may be defined for each trigger event in each table.

For an INSERT, UPDATE or DELETE statement you can use IGNORE TRIGGER so that the trigger event INSERT, UPDATE or DELETE is ignored.

<routine>

Please note the following information regarding the trigger routine.

Each INSERT trigger implicitly has the corresponding variable NEW.<column_name> for each column in the table. When the trigger is executed, this variable has the value of the corresponding column in the inserted row. You can only specify NEW for SQL statements specified in routine_sql_statements. Specifying NEW for other statements causes an error to occur.

Each UPDATE trigger implicitly has a corresponding variable NEW.<column_name> and OLD.<column_name> for each column in the table. When the trigger is executed, the OLD.<column_name> variable has the value of the corresponding column before the row is changed, and the NEW.<column_name> variable has the value of the corresponding column after the row is changed. Specifying NEW and OLD is optional.

Each DELETE trigger implicitly has the corresponding variable OLD.<column_name> for each column in the table. When the trigger is executed, this variable has the value of the corresponding column in the deleted row. You can only specify OLD for SQL statements specified in routine_sql_statements. Specifying OLD for other statements causes an error to occur.

Caution Caution

A colon must always be used with :NEW and :OLD in SQL statements statement that are used in triggers and are specified in routine_sql_statements (For example: UPDATE hotel.room SET hno = :NEW.hno WHERE hno = :OLD.hno).

A colon may never be used with NEW and OLD in SQL statements that are used in triggers and are not specified in routine_sql_statements (For example: IF NEW.hno <> OLD.hno).

End of the caution.

If, on STOP, the trigger ends an error number other than zero, the entire SQL statement that set off the trigger fails.

The SUBTRANS statement is not allowed in a trigger.

If a WHENEVER statement is specified, the trigger is only executed as long as the search condition is fulfilled. The condition cannot contain a subquery or any set functions.

More Information

CREATE SYSTEM TRIGGER Statement

CREATE DBPROC[EDURE] Statement (create_dbproc_statement)


Restrictions for SQL Statements - SAP Documentation

Background documentation Restrictions for SQL Statements

Restrictions for SQL Statements
Maximum length of an SQL statement | ≥16 KB (Default setting 64 KB), defined by a support database parameter
Length of an identifier | 32 characters
Numeric precision | 38 places
Number of tables | Unlimited
Number of columns in each table (with KEY) | 1024
Number of columns in each table (without KEY) | 1023
Number of primary key columns in each table | 512 (Restricted by Total of internal lengths of all key columns)
Number of columns in an index | 16
Number of foreign key columns per table | 16 (Restricted by Total of internal lengths of all foreign key columns)
Number of columns in an ORDER or GROUP clause | 128
Number of columns in an SELECT statement | 1023
Number of columns in an INSERT statement | 1024
Number of columns in a results table | 1023
Number of join tables in a SELECT statement | 254
Number of triggers in each basis table | 3
Number of indexes for each table | 255
Number of JOIN predicates in a search condition | Unlimited
Number of referential CONSTRAINT definitions (foreign key dependencies) for each table | Unlimited
Number of references in each table | Unlimited
Number of rows in each table | Limited by the size of a database
Internal length of a table row | 32767 Bytes
Total of internal lengths of all key columns | 1024 Bytes
Total of internal lengths of all foreign key columns | 1024 Bytes
Total of internal lengths of all columns belonging to an index | 1024 Bytes
Internal length of a LOB column | 2 GB
Length of the columns in an ORDER or GROUP clause | 4016 Bytes
Nested trigger levels | Unlimited
Nested subqueries | 127
Number of correlated columns in an SQL statement | 64
Number of correlated tables in an SQL statement | 16
Number of parameters in an SQL statement | 10000

More Information

SQL Statements: Overview

SQL Reference Manual


Specifying Values (extended_value_spec) - SAP Documentation

Background documentation Specifying Values (extended_value_spec)

Values are specified (extended_value_spec) using one of the keywords DEFAULT or STAMP or by specifying the values (value_spec: Literals, parameter specifications, key words and so on).

Structure

Syntax Syntax

  1. <extended_value_spec> ::=
  DEFAULT
| STAMP
| <value_spec>

<value_spec> ::=
  <literal>
| <parameter_spec>
| NULL
| USER
| USERGROUP
| SYSDBA
| CURRENT_SCHEMA
| UID
| [<schema_name>.]<sequence_name>.NEXTVAL
| [<schema_name>.]<sequence_name>.CURRVAL
| <table_name>.CURRVAL
| DATE
| TIME
| TIMESTAMP
| UTCDATE
| TIMEZONe
| UTCDIFF
| TRUE
| FALSE
| TRANSACTION
End of the code.
Examples

SQL Tutorial, Number Generators for Tables

DEFAULT

DEFAULT identifies the default value for the column in a CREATE TABLE statement or ALTER TABLE statement. If one of these values is not defined, DEFAULT cannot be used to specify values.

The DEFAULT keyword can be used in the following SQL statements: INSERT statement, UPDATE statement. The DEFAULT keyword can be used in a DEFAULT predicate.

STAMP

The database system is capable of generating unique values. These comprise a series of consecutive numbers starting at X'000000000001'. The values are assigned in ascending order. There is no guarantee that a sequence of values is uninterrupted. The STAMP keyword returns the next value generated by the database system.

The STAMP keyword can be used in the following SQL statements (only on columns of data type CHAR(n) BYTE where n>=8): INSERT statement, UPDATE statement

If the user wants to find out the generated value before it is applied to a column, the following SQL statement must be used: NEXT STAMP Statement

<value_spec>

The following options are available for specifying values:

Specifying Values (value_spec)

<value_spec>

Explanation

<literal>

Literal

<parameter_spec>

Parameter specification

NULL

NULL Value

USER | USERGROUP

Current user name or name of the user group to which the database user calling the SQL statement belongs. If the database user does not belong to a user group, the database user name is displayed.

SYSDBA

Database system administrator

CURRENT_SCHEMA

Current schema

UID

Identification of the current database user. This DEFAULT specification can only be specified with numeric data type and a minimum of 10 places before the decimal point.

[<schema_name>.]<sequence_name>.NEXTVAL

| [<schema_name>.]<sequence_name>.CURRVAL

NEXTVAL shows the next available value generated by the number generator (sequence [<schema_name>.]<sequence_name>).

CURRVAL shows the value currently being used which was generated by the number generator (sequence [<schema_name>.]<sequence_name>).

Further Explanations: CREATE SEQUENCE Statement (create_sequence_statement)

<table_name>.CURRVAL

Last value assigned in the current database session for the SERIAL column in the table table_name.

DATE | TIME | TIMESTAMP

Current date, time, time stamp.

UTCDATE

Current UTC time stamp (Greenwich Mean Time)

TIMEZONE

Time difference in the format hhmmss (in the data type FIXED(6)) between local time and UTC time.

UTCDIFF

Time difference in hours (in the data type FIXED(4,2)) between local time and UTC time.

TRUE | FALSE

Corresponding value of a column of the data type BOOLEAN

TRANSACTION

Identification of the current transaction. This is a value of data type CHAR(6) BYTE.

More Information

Expression

Key specification

INSERT Statement

DEFAULT Specification


Time Function (time_function) - SAP Documentation

Background documentation Time Function (time_function)

A time function (time_function) is a function that is applied to time or time stamp values, or that supplies a time or time stamp value as a result.

Structure

Syntax Syntax

  1. <time_function> ::=
  ADDTIME(<time_or_timestamp_expression>,<time_expression>)
| MAKETIME(<hours>,<minutes>,<seconds>)
| SUBTIME(<time_or_timestamp_expression>,<time_expression>)
| TIMEDIFF(<time_or_timestamp_expression>,<time_or_timestamp_expression>)

<time_or_timestamp_expression> ::=
  <expression>
<time_expression> ::=
  <expression>

<hours> ::=
  <expression>
<minutes> ::=
  <expression>
<seconds> ::=
  <expression>
End of the code.
Examples

SQL Tutorial, Date and Time Calculations

Explanation

When used in a function, the argument time_or_timestamp_expression must supply a time value, a time stamp value, or an alphanumeric value that matches the current time or time stamp format. In a function, the argument time_expression must supply a time value or an alphanumeric value that matches the current time format. When used in a function, each of the arguments hours, minutes or seconds must be an integer greater than or equal to 0. If an expression is not an integer, decimal places are truncated.

Date and time values are available in a variety of date and time formats (ISO, USA, EUR, JIS, INTERNAL). In the ISO and USA formats, the hours are displayed modulo 24. In the EUR and JIS formats, a number of hours greater than 99 causes an error. In the INTERNAL format, you can specify up to 9999 hours.

More Information

Functions: Overview


CREATE DOMAIN Statement (create_domain_statement) - SAP Documentation

Background documentation CREATE DOMAIN Statement (create_domain_statement)

The CREATE DOMAIN statement (create_domain_statement) defines a value range.

Structure

Syntax Syntax

  1. <create_domain_statement> ::=
  CREATE DOMAIN <domain_name> <data_type>
    [<default_spec>] [<constraint_definition>]
End of the code.
Examples

SQL Tutorial, Domains

Explanation

The CONSTRAINT definition (constraint_definition) must not contain a constraint name.

The CREATE DOMAIN statement can be executed by all database administrators.

If the domain name is specified without the schema name, the schema with the name of the current database user is assigned to the range. If you specify the domain name with a schema, the schema name must be the same as the name of the current database user. In this case, the current database user becomes the owner of the range.

The name of the domain must be different from all other domain names of the current database user.

If a domain is generated with a CONSTRAINT definition, the domain name is included in the search condition as a column name.


CREATE SEQUENCE Statement (create_sequence_statement) - SAP Documentation

Background documentation CREATE SEQUENCE Statement (create_sequence_statement)

The CREATE SEQUENCE statement (create_sequence_statement) defines a database object that supplies integer values (number generator). In the following description, this object is referred to as a sequence.

Structure

Syntax Syntax

  1. <create_sequence_statement> ::=
  CREATE SEQUENCE [<schema_name>.]<sequence_name>
    [INCREMENT BY <integer>]
    [START WITH <integer>]
    [MAXVALUE <integer> | NOMAXVALUE]
    [MINVALUE <integer> | NOMINVALUE]
    [CYCLE | NOCYCLE]
    [CACHE <unsigned_integer> | NOCACHE]
    [ORDER | NOORDER]
End of the code.
Examples

SQL Tutorial, Number Generators for Tables

Explanation

The optional specifications after the sequence_name can be made in any order.

The current database user must be a RESOURCE user or database administrator (DBA user) and becomes the owner of the sequence. If no schema_name is specified, the current schema is used.

The sequence is assigned to the schema that has been determined implicitly or specified explicitly. The current database user must have the CREATEIN privilege for this schema. The sequence name must be different from the names of all sequences that already exist in the schema.

The integer values generated by the sequence can be used to assign key values.

INCREMENT BY

Defines the difference between the next sequence value and the last value assigned. A negative value for INCREMENT BY generates a descending sequence. If no value is assigned, the value 1 is used.

START WITH

Defines the first sequence value. If no value is specified, the value for MAXVALUE or -1 is used for descending sequences and the value for MINVALUE or 1 for ascending sequences.

MINVALUE | MAXVALUE

  • MINVALUE: Defines the smallest value generated by the sequence. If no value is defined for MINVALUE, the smallest integer value that can be represented with 38 digits is used when INCREMENT BY has a negative value, and the value 1 is used when INCREMENT BY has a positive value.

  • MAXVALUE: Defines the largest value generated by the sequence. If no value is defined for MAXVALUE, the largest integer value that can be represented with 38 digits is used when INCREMENT BY has a positive value, and the value -1 is used when INCREMENT BY has a negative value.

CYCLE | NOCYCLE

If neither CYCLE nor NOCYCLE is specified, NOCYCLE is assumed.

  • CYCLE: MINVALUE is produced for ascending sequences after MAXVALUE has been assigned. MAXVALUE is produced for descending sequences after MINVALUE has been assigned.

  • NOCYCLE: A request for a sequence value fails if the end of the sequence has already been reached, that is, if MAXVALUE has been assigned for ascending sequences or MINVALUE for descending sequences.

CACHE | NOCACHE

If neither CACHE nor NOCACHE is specified, CACHE 20 is assumed.

  • CACHE: Access to the sequence can be accelerated because the defined number of sequence values is already held in the memory.

  • NOCACHE: There are no predefined sequence values.

ORDER | NOORDER

Specifying ORDER or NOORDER has no effect whatsoever.

Note Note

Sequence values can be specified using CURRVAL and NEXTVAL (Specifying Values). In this way, you can request or increase the current counter value.

End of the note.


CREATE SYNONYM Statement (create_synonym_statement) - SAP Documentation

Background documentation CREATE SYNONYM Statement (create_synonym_statement)

The CREATE SYNONYM statement (create_synonym_statement) defines a synonym (alternative name) for a table name or a sequence name.

Structure

Syntax Syntax

  1. <create_synonym_statement> ::=
  CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>
    FOR <table_name>
| CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>
    FOR <sequence_name>
End of the code.
Explanation

The table name (table_name) must not denote a temporary base table. The database user must have one of the privileges available for the specified table or sequence.

Only the name of the current database user is permitted as the schema name (schema_name ) in front of the synonym name.

The synonym name can be specified anywhere instead of the table or sequence name. This has the same effect as specifying the table or sequence name for which the synonym was defined.

PUBLIC

If PUBLIC is specified, the synonym name must not be identical to the name of a synonym defined in PUBLIC. A synonym is generated that can be accessed by all database users.

If PUBLIC is not specified, a private synonym is generated that is only known to the current database user. In this case, the synonym name must not be identical to the name of an existing base table, view table, seuence or a private synonym of the current database user. If a synonym with the same name and the PUBLIC attribute exists, it cannot be accessed by the current database user until the private synonym has been dropped.

More Information

Privileges: Overview


CREATE INDEX Statement (create_index_statement) - SAP Documentation

Background documentation CREATE INDEX Statement (create_index_statement)

The CREATE INDEX statement (create_index_statement) defines an index for a base table.

Structure

Syntax Syntax

  1. <create_index_statement> ::=
  CREATE [UNIQUE] INDEX <index_name> ON <table_name> (<index_spec>)

<index_spec> ::=
  <index_column_name>,...
| <dbfunction_name> (<column_name>,...) [ASC|DESC]

<index_column_name> ::=
  <column_name> [ASC|DESC]
End of the code.
Examples

SQL Tutorial, Indexes

Explanation

Indexes provide access to the table data via non-key columns. Maintaining these indexes, however, can be quite complex in the case of an INSERT, UPDATE, or DELETE statement. A CREATE INDEX statement is only executed if no locks are held in the current transaction. If locks are held the system displays an error message. Every CREATE INDEX statement is terminated with an implicit COMMIT.

  • If a schema is not specified in the table name, the current schema is accepted implicitly.

  • The specified table must be an existing base table, and not a temporary table. The index name must not be identical with an existing index name of the table.

  • The column defined by the column_name must be a column in the specified table. This column must not be a LOB column. All of the column name pairs must be different.

  • The current database user must have the INDEX privilege for the columns.

  • If no database function name dbfunction_name is specified, the index is generated using the specified columns of the table. In this case, the secondary key consists of the specified columns of the table, in the specified order.

  • While an index is being created, the specified table is usually protected from DML statements by means of an exclusive lock. If no locks are held in the current transaction and the index to be created with CREATE INDEX is not UNIQUE, however, only a brief exclusive lock is held for the table. This generally means that other DML statements can also be carried out for this table when the index is created.

Database Function Name dbfunction_name

Specifying a database function name dbfunction_name defines a function index. These indexes can accelerate queries that contain the database function in their search condition, or that sort by database function. The database function identified by the database function name (dbfunction_name) must fulfill the following conditions:

  • The current database user must have the EXECUTE privilege for the database function.

  • The database function may not contain any SQL statements.

  • The type of the specified column names must be compatible with the type of the function parameters.

  • The result of the database function must be deterministic, that is, repeated execution of the function with the same parameters always produces the same result.

UNIQUE

If UNIQUE is specified, the database system ensures that no two rows of the specified table have the same values in the indexed columns. In this way, if two rows both contain the NULL value for all columns of an index, the two index values are not considered to be identical. If at least one column does not contain the NULL value, two rows that have the same value in all non-NULL columns are considered to be identical.

ASC | DESC

The index values are stored in ascending (ASC) or descending (DESC) order. If the specification of ASC or DESC is omitted, ASC is implicitly assumed.

More Information

UNIQUE Definition (unique_definition)

Privileges: Overview

Transactions

Restrictions for SQL Statements


CREATE ROLE Statement (create_role_statement) - SAP Documentation

Background documentation CREATE ROLE Statement (create_role_statement)

The CREATE ROLE statement (create_role_statement) defines a role.

Structure

Syntax Syntax

  1. <create_role_statement> ::=
  CREATE ROLE <role_name> [IDENTIFIED BY <password>]
End of the code.
Examples

SQL Tutorial, Roles

Explanation

The current database user must be a database administrator (DBA user).

The role name must not be the same as the name of an existing role, database user, or user group.


CREATE DBPROC[EDURE] Statement (create_dbproc_statement) - SAP Documentation

Background documentation CREATE DBPROC[EDURE] Statement (create_dbproc_statement)

The CREATE DBPROC[EDURE] statement (create_dbproc_statement) defines a database procedure.

Structure

Syntax Syntax

  1. <create_dbproc_statement> ::=
  CREATE DBPROC[EDURE] <dbproc_name> [(<formal_parameter>,...)]
    [RETURNS CURSOR] AS <routine>

<formal_parameter> ::=
  IN <argument> <data_type>
| OUT <argument> <data_type>
| INOUT <argument> <data_type>

<argument> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Database Procedures

Explanation

If no schema is specified in the database procedure name, the current schema is assumed implicitly.

The database procedure is assigned to the schema that has been determined implicitly or specified explicitly. The current database user must have the CREATEIN privilege for this schema. The procedure name must be different from the names of the database procedures already existing in the schema.

The current user is the owner of a database procedure. He or she has the EXECUTE privilege to execute the database procedure.

Parameters

When an application calls the database procedure with the CALL statement, it exchanges data using parameters defined by means of formal parameters (formal_parameter). A formal parameter of the database procedure usually corresponds to a variable in the application.

IN | OUT | INOUT

The parameter mode (IN | OUT | INOUT) specifies the direction in which data is transferred when the procedure is called.

  • IN: IN defines an input parameter, that is, the value of the variable transferred to the database procedure when the procedure is called.

  • OUT: OUT defines an output parameter. This means the value of the formal parameter is transferred from the database procedure to the variable after the procedure has been terminated.

  • INOUT: INOUT defines an input/output parameter that combines the IN and OUT functions.

Argument

By specifying an argument (argument) you assign a name to a formal parameter of the database procedure. This parameter name can then be used as a variable in expressions and assignments in the database procedure.

Data type

Only the data types BOOLEAN, CHAR[ACTER], DATE, FIXED, FLOAT, INT[EGER], NUMBER, REAL, SMALLINT, TIME, TIMESTAMP and VARCHAR are permitted as a data type (data_type) of the formal parameter of a database procedure.

RETURNS CURSOR

If RETURNS CURSOR is specified, a database procedure is defined that returns a results table when called.

The name of this table is defined using the system variable $CURSOR. A database procedure must therefore contain a statement that generates a results table with the result set name $CURSOR.

The value of $CURSOR is already assigned by most programming language embeddings, but can also be explicitly assigned in the database procedure.

Example Example

CREATE DBPROC hotels_of_town (IN zip CHAR(5))

RETURNS CURSOR AS $CURSOR = 'HOTEL_CURSOR';

DECLARE :$CURSOR CURSOR FOR

SELECT * FROM hotel.hotel WHERE zip = :zip;

End of the example.

More Information

CREATE SYSTEM TRIGGER Statement

CREATE TRIGGER Statement

CREATE FUNCTION Statement


Recursive DECLARE CURSOR Statement (recursive_declare_cursor_statement) - SAP Documentation

Background documentation Recursive DECLARE CURSOR Statement (recursive_declare_cursor_statement)

The recursive DECLARE CURSOR statement (recursive_declare_cursor_statement) can be used to receive bills of material by means of a command.

Structure

Syntax Syntax

  1. <recursive_declare_cursor_statement> ::
  DECLARE <result_table_name> CURSOR FOR
    WITH RECURSIVE <reference_name> (<alias_name>,...)
    AS (<initial_select> UNION ALL <recursive_select>)
    <final_select>

<initial_select> ::=
  <query_spec>

<recursive_select> ::
  <query_spec>

<final_select> ::=
  <select_statement>
End of the code.

Example Example

DECLARE C CURSOR FOR

WITH RECURSIVE PX (MAJOR, MINOR, NUMBER, MAINMAJOR) AS

(SELECT W,X,Y,W FROM T WHERE W = 'aaa' UNION ALL

SELECT W,X,Y,MAINMAJOR FROM T, PX WHERE MINOR = T.W)

SELECT MAINMAJOR,MINOR,NUMBER FROM PX ORDER BY NUMBER

End of the example.
Explanation

If a result_table_name with the specified reference name existed before the recursive DECLARE CURSOR statement was executed, the corresponding cursor is closed implicitly.

<initial_select>

The QUERY specification initial_select is executed and the result is entered in a temporary result table whose name is defined by specifying the reference_name. The column names contained in it receive the names from the list of alias names. The number of output columns in the QUERY specification must be identical to the number of alias names.

<recursive_select>

The QUERY specification recursive_select should comprise a SELECT statement that contains at least the reference name in the FROM clause and one JOIN predicate between this table and a different table from the FROM clause.

The QUERY specification recursive_select is repeated until it does not produce a result. The respective results are (logically) entered in the temporary result table whose name is defined by the reference name. This table is extended continuously. It is ensured, however, that the results of the nth execution are used for the n+1th execution to avoid an endless loop.

<final_select>

The SELECT statement final_select must only contain one QUERY expression that comprises a QUERY specification.

This is a SELECT statement across the table with the specified reference name in which the following elements can be used: Set functions, GROUP clause, HAVING clause, ORDER clause, LOCK option

More Information

Table Expression

Set Function

ORDER Clause

LOCK Option


Password (password) - SAP Documentation

Background documentation Password (password)

Users require a password (password) to connect to the database instance (start a database session).

Structure

Syntax Syntax

  1. <password> ::=
  <identifier>
| <first_password_character>[<identifier_tail_character>...]

<first_password_character> ::=
  <digit>
| <letter>
| <extended_letter>
| <language_specific_character>

<digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

<letter> ::=
  A | B | C | D | E | F | G | H | I | J | K | L | M
| N | O | P | Q | R | S | T | U | V | W | X | Y | Z
| a | b | c | d | e | f | g | h | i | j | k | l | m
| n | o | p | q | r | s | t | u | v | w | x | y | z

<extended_letter> ::=
  # | @ | $

<identifier_tail_character> ::=
  <digit>
| <letter>
| <extended_letter>
| <language_specific_character>
| <underscore>

<underscore> ::=
  _
End of the code.
Explanation

Passwords are truncated after 256 characters.

Language-specific characters

A language-specific character (language_specific_character) is any letter that occurs in a northern, southern, or central European language and is not contained in the list of letters.

Example Example

German umlauts: ä, ö, ü

French letters with a grave accent: à

End of the example.

If you have installed a UNICODE-enabled database, a language-specific character is a character that is not included in the ASCII code list from 0 to 127.

More Information

CREATE USER Statement (create_user_statement)

ALTER PASSWORD Statement (alter_password_statement)

Database Administration, Conventions for User Names and Passwords


Column Definition (column_definition) - SAP Documentation

Background documentation Column Definition (column_definition)

A column definition (column_definition) defines a column in a table. The name and data type of each column are defined by the column name (column_name) and data type (data_type). The column names must be unique within a base table.

Structure

Syntax Syntax

  1. <column_definition> ::=
  <column_name> <data_type> [<column_attributes>]
| <column_name> <domain_name> [<column_attributes>]
End of the code.
Explanation

If the column attribute (column_attributes) [PRIMARY] KEY is specified, the CREATE TABLE statement must not contain a key definition.

A column definition may only consist of a column name (column_name) if a QUERY expression (query_expression) is used in the CREATE TABLE statement.

<domain_name>

If a column name (column_name) and domain name (domain_name) (in other words, the name of a value range) are specified, the domain name must identify an existing domain. The data type and the length of the domain are assigned to the specified column. If the domain has a CONSTRAINT definition, the effect is the same as if the corresponding CONSTRAINT definition were specified in the column attribute of the column definition.

NOT NULL Columns

Columns which are part of the key, or for which NOT NULL was defined, are called NOT NULL columns. A NULL value cannot be inserted in these columns.

  • Mandatory columns: NOT NULL columns for which a DEFAULT specification has not been declared as a column attribute are called mandatory columns. Whenever rows are inserted, values must be specified for these columns.

  • Optional columns: Columns that are not mandatory are referred to as optional columns. A value does not have to be specified when a row is inserted in these columns. If a DEFAULT specification exists for the column, the DEFAULT value is entered in the column. If there is no DEFAULT specification, a NULL value is entered in the column.

More Information

Memory Requirements of a Column Value According to Data Type

Restrictions for SQL Statements


GRANT USER Statement (grant_user_statement) - SAP Documentation

Background documentation GRANT USER Statement (grant_user_statement)

The GRANT USER statement (grant_user_statement) grants another database user the owner privilege that the database system administrator or a database administrator (DBA user) has over a database user.

Structure

Syntax Syntax

  1. <grant_user_statement> ::=
  GRANT USER <granted_users>
    [FROM <user_name>] TO <user_name>

<granted_users> ::=
  <user_name>,...
| *
End of the code.
Explanation

The current user must be a database administrator (DBA user).

The user names specified after the FROM and TO keywords must be different and must identify DBA users. If FROM <user_name> is not specified, the current database user is assumed implicitly.

The database users specified after the GRANT USER keywords must exist and must not be a member of a user group. They must have the RESOURCE user or STANDARD user class. The FROM user must have the owner privilege for these database users. If * is specified, the GRANT USER statement affects all database users for which the FROM user has the owner privilege.

The FROM user grants the TO user the owner authorization which the FROM user has over the specified database users. These rights are revoked from the FROM user. In particular, the TO user is granted the right to delete any specified database user and to alter the user class and other properties of this user.

More Information

Database Administration, Database Users


GRANT USERGROUP Statement (grant_usergroup_statement) - SAP Documentation

Background documentation GRANT USERGROUP Statement (grant_usergroup_statement)

The GRANT USERGROUP statement (grant_usergroup_statement) grants another database user the owner privilege that the database system administrator or a database administrator (DBA user) has over a user group.

Structure

Syntax Syntax

  1. <grant_usergroup_statement> ::=
  GRANT USERGROUP <granted_usergroups>
    [FROM <user_name>] TO <user_name>

<granted_usergroups> ::=
  <usergroup_name>,...
| *
End of the code.
Explanation

The current user must be a DBA user.

The user names specified after the FROM and TO keywords must be different and must identify DBA users. If FROM <user_name> is not specified, the current database user is assumed implicitly.

The user group name must identify a user group for which the FROM user possesses owner rights. All user groups for which the FROM user has owner rights are indicated by an asterisk *.

The FROM user grants the TO user the owner authorization which the FROM user has over the specified user groups. These rights are revoked from the FROM user. In particular, the TO user is granted the right to delete any user group, to alter the user class and properties of this user group and to drop or create group members.

More Information

Database Administration, Database Users


GRANT Statement (grant_statement) - SAP Documentation

Background documentation GRANT Statement (grant_statement)

The GRANT statement (grant_statement) grants privileges for tables, individual columns, roles, and schemas, the SELECT privilege for sequences, and the execution privilege (EXECUTE privilege) for database procedures or database functions.

Structure

Syntax Syntax

  1. <grant_statement> ::=
  GRANT <priv_spec>,... TO <grantee>,... [WITH GRANT OPTION]
| GRANT <schema_priv_spec> TO <grantee>,...
| GRANT EXECUTE ON <dbproc_name> TO <grantee>,...
| GRANT EXECUTE ON <dbfunction_name> TO <grantee>,...
| GRANT SELECT ON <sequence_name> TO <grantee>,... [WITH GRANT OPTION]

<grantee> ::=
  <user_name>
| <usergroup_name>
| <role_name>
| PUBLIC
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges, Roles

Explanation

The privileges in the privilege specification (priv_spec or schema_priv_spec) are granted to the database users, user groups and roles specified in the grantee list.

<grantee>

The owner of an object for which privileges are granted is not allowed to be contained in the grantee list. A database user in the grantee list must not denote a member of a user group.

<role_name>

If a role is granted to a database user or user group, it extends the set of roles which can be activated for this database user or user group. The database user activates the role either with the SET statement or by including the role in the set of roles automatically activated when a session was opened with the ALTER USER statement or ALTER USERGROUP statement.

A cycle may not be created when a role is assigned to a role, meaning:

  • A role may not be assigned to itself.

  • If a role R1 is assigned to a role R2, then R2 may not be assigned to R1.

  • If a role R1 is assigned to a role R2 and R2 is assigned to a role R3, then R3 may not be assigned to either R2 or R1.

  • etc.

PUBLIC

The listed privileges are granted to all database users, both to current ones and to any created later.

A role cannot be assigned to PUBLIC.

WITH GRANT OPTION

Users or user groups identified as grantee are allowed to pass on their privileges to other users. The current user must have the relevant authorization to pass on these privileges.

The WITH GRANT OPTION cannot be specified if grantee identifies a role.

GRANT <schema_priv_spec>

GRANT CREATEIN ON is used to grant the user identified by grantee authorization to create database objects in the specified schema.

GRANT DROPIN ON is used to grant the user identified by grantee authorization to delete database objects in the specified schema.

GRANT EXECUTE ON

GRANT EXECUTE ON allows the user identified by grantee to execute the specified database procedure or database function. The current user must be the owner of the database procedure or database function.

GRANT SELECT ON

GRANT SELECT ON allows the user identified by grantee to use the specified sequence.

More Information

Privileges: Overview


Integer (integer) - SAP Documentation

Background documentation Integer (integer)

An integer (integer) is a special numeric literal. An integer can be represented in any way.

Structure

Syntax Syntax

  1. <integer> ::=
  [<sign>]<unsigned_integer>

<sign> ::=
  +
| -
End of the code.


QUERY Statement (query_statement) - SAP Documentation

Background documentation QUERY Statement (query_statement)

A QUERY statement (query_statement) specifies a result table that can be ordered. There are different ways of formulating a QUERY statement.

Structure

Syntax Syntax

  1. <query_statement> ::=
  <declare_cursor_statement>
| <recursive_declare_cursor_statement>
| <select_statement>
End of the code.
Examples

SQL Tutorial, Data Query

Explanation

A QUERY statement generates a named/unnamed result table. In contrast to a named result table, an unnamed result table cannot be specified in a FROM clause or in CURRENT OF <result_table_name> of a subsequent SQL statement.

The following QUERY statements can be distinguished:

QUERY Statement (query_statement)
Basic types of QUERY statement | Explanation
DECLARE CURSOR statement | A named result table is defined and generated.
SELECT statement (select_statement) | An unnamed results table is defined and generated.
Recursive DECLARE CURSOR statement | This statement is used to generate bills of material.

The rules specified for the DECLARE CURSOR statement (declare_cursor_statement) also apply for the SELECT statement (select_statement).

The order of rows in the results table depends on the system’s internal search strategies and does not follow any predictable order. The only reliable way to sort the rows of results is to specify an ORDER clause.

Updatable Results Table

A results table and its underlying base tables can be updated if the QUERY statement fulfills the following conditions:

  • The QUERY statement must consist of a DECLARE CURSOR statement.

  • The QUERY expression (query_expression) can only consists of one QUERY specification (query_spec).

  • Only one base table or updatable view table may be specified in the FROM of the QUERY specification.

  • The key word DISTINCT or a GROUP or HAVING clause cannot be specified.

  • Expressions cannot contain a set function.

  • The results table must be a named results table. In other words, it cannot have been generated by a SELECT statement.

More Information

Result Table Name

Glossary, Table

Data Query


SELECT Statement (select_statement) - SAP Documentation

Background documentation SELECT Statement (select_statement)

A SELECT statement (select_statement) defines and creates an unnamed results table.

Structure

Syntax Syntax

  1. <select_statement> ::=
  <query_expression>
    [<order_clause>]
    [<limit_clause>]
    [<update_clause>]
    [<lock_option>]
    [FOR REUSE]

<limit_clause> ::=
  LIMIT <row_count>
| LIMIT <offset>,<row_count>

<row_count> ::=
  <unsigned_integer>
| <parameter_name>

<offset> ::=
  <unsigned_integer>
| <parameter_name>
End of the code.
Examples

SQL Tutorial, Data Query

Explanation

The rules specified for the DECLARE CURSOR statement also apply for the SELECT statement (select_statement).

The search strategy used determines how the search is carried out. When the SELECT statement is executed, the system searches for all the rows in the results table and generates the results table physically. When a FETCH statement is executed, the system searches for the next relevant row in the results table but does not store it physically. This must be taken into account for the time behavior of FETCH statements.

Updatable Results Table

A results table and its underlying base tables can be updated if the QUERY statement fulfills the following conditions:

  • The QUERY statement consists of a DECLARE CURSOR statement.

  • The QUERY expression (query_expression) may only consist of one QUERY specification (query_spec).

  • Only one base table or updatable view table may be specified in the FROM clause of the QUERY specification.

  • The key word DISTINCT or a GROUP or HAVING clause cannot be specified.

  • Expressions cannot contain a set function (set_function_spec).

ORDER Clause

The ORDER clause (order_clause) specifies a sort sequence for a result table.

LIMIT Clause

You can use the LIMIT clause (limit_clause) to limit the maximum number of rows in the result table. You either enter only the desired maximum number of rows or the additional information from which row the list should begin (offset value). The offset value of the initial row is 0. If no offset value is specified, the rows are listed from the beginning of the result table.

If you use a ROWNO predicate or a TOP syntax element, then you may not use the LIMIT clause.

If both a LIMIT clause and an ORDER clause are entered, then all result rows are sorted and the relevant number of rows is displayed. Normally, the result differs from what you would receive if no ORDER clause was entered.

LOCK Option

The LOCK option (lock_option) determines which locks are to be set on the read rows.

UPDATE Clause

An UPDATE clause (update_clause) can only be specified for updatable result tables. With updatable results tables, any position within a particular results table always corresponds to a position in the underlying tables and thus, ultimately, to a position in one or more base tables.

If an UPDATE clause was specified, the base tables can be updated using the position in the results table (CURRENT OF <result_table_name>) using an UPDATE statement or a DELETE statement. You use a LOCK statement to request a lock for the relevant rows in each of the base tables concerned.

FOR REUSE

If the result table is to be specified in the FROM clause of a subsequent QUERY statement, the table should be specified using the FOR REUSE keywords. If FOR REUSE is not specified, the reusability of the results table depends on internal system strategies.

Since specifying FOR REUSE increases the response times of some QUERY statements, FOR REUSE should only be specified if it is necessary to reuse the results table.

More Information

QUERY Statement


RENAME USERGROUP Statement (rename_usergroup_statement) - SAP Documentation

Background documentation RENAME USERGROUP Statement (rename_usergroup_statement)

The RENAME USERGROUP statement (rename_usergroup_statement) changes the name of a user group.

Structure

Syntax Syntax

  1. <rename_usergroup_statement> ::=
  RENAME USERGROUP <usergroup_name> TO <new_usergroup_name>

<new_usergroup_name> ::=
  <usergroup_name>
End of the code.
Explanation

The user group to be modified must exist. The name of the user group must identify a user group for which the current database user has the owner privilege.

The new user group name (new_usergroup_name) must not be identical to that of an existing database user, user group or role.

The members of this user group must not be logged onto the database system when the RENAME USERGROUP statement is executed.

The database system automatically adapts the objects that are dependent on the modified user group to the new user group name.


ROLLBACK Statement (rollback_statement) - SAP Documentation

Background documentation ROLLBACK Statement (rollback_statement)

The ROLLBACK statement (rollback_statement) cancels the current transaction (ROLLBACK) and starts a new transaction.

Structure

Syntax Syntax

  1. <rollback_statement> ::=
  ROLLBACK [WORK]
End of the code.
Explanation

The ROLLBACK statement implicitly opens a new transaction. Any locks set within the new transaction are assigned to this transaction. The setting of locks in the new transaction is controlled by the isolation level defined in the CONNECT statement.

More Information

Glossary, ROLLBACK


Search Condition (search_condition) - SAP Documentation

Background documentation Search Condition (search_condition)

A search condition (search_condition) links statements that can be true, false, or undefined. Rows in a table may be found that fulfill several conditions that are linked with AND or OR.

Structure

Syntax Syntax

  1. <search_condition> ::=
  <boolean_term>
| <search_condition> OR <boolean_term>

<boolean_term> ::=
  <boolean_factor>
| <boolean_term> AND <boolean_factor>

<boolean_factor> ::=
  [NOT] <predicate>
| [NOT] (<search_condition>)
End of the code.

In the syntax element boolean_factor, the Boolean values (BOOLEAN) to be linked or their negation (NOT) are determined.

Examples

SQL Tutorial, Conditions: Comparison, AND, OR, BETWEEN, IN, Arithmetic Operations, Negative Conditions: NOT

Explanation

Predicates in a WHERE clause are applied to the specified row or a group of rows in a table formed with the GROUP clause (see: Table Expression (table_expression). The results are linked using the specified Boolean operators (AND, OR, NOT).

If no parentheses are used, the precedence of the operators is as follows: NOT has a higher precedence than AND and OR. AND has a higher precedence than OR. Operators with the same precedence are evaluated from left to right.

NOT
X | NOT(x)
True | False
False | True
Undefined | Undefined
x AND y
x AND y | False | Undefined | True
False | False | False | False
Undefined | False | Undefined | Undefined
True | False | Undefined | True
x OR y
x OR y | False | Undefined | True
False | False | Undefined | True
Undefined | Undefined | Undefined | True
True | True | True | True

Note Note

A specific form of search condition is required for the SQL Optimizer to be able to determine the most efficient search strategy. For more information, see Concepts of the Database, Search Conditions.

End of the note.


RENAME TABLE Statement (rename_table_statement) - SAP Documentation

Background documentation RENAME TABLE Statement (rename_table_statement)

The RENAME TABLE statement (rename_table_statement) changes the name of a base table.

Structure

Syntax Syntax

  1. <rename_table_statement> ::=
  RENAME TABLE <old_table_name> TO <new_table_name>

<old_table_name> ::=
  <table_name>

<new_table_name> ::=
  <table_name>
End of the code.
Examples

SQL Tutorial, Tables

Explanation

If a schema name is not specified in the table name, the current schema is used. The old table name must identify a base table that is not a temporary table.

The current database user must have the CREATEIN privilege in the schema identified by new_table_name.

The new table name must not already be assigned to a base or view table or a private synonym in the schema identified by new_table_name.

The old table old_table_name is assigned the name specified in new_table_name. All of the properties of the table (such as privileges, indexes) remain unchanged. The definitions of view tables based on the old table name are adapted to the new name.

More Information

Privileges: Overview


Reference Name (reference_name) - SAP Documentation

Background documentation Reference Name (reference_name)

The reference name (reference_name) is an identifier that is declared for a certain validity range and associated with exactly one table. The scope of this declaration is the entire SQL statement.

Structure

Syntax Syntax

  1. <reference_name> ::=
  <identifier>
End of the code.

The identifier may not exceed 32 characters in length.

Explanation

A reference name specified in various validity ranges can be associated with different tables or with the same table.

More Information

Column Specification

Selected Column

Table Expression

Recursive DECLARE CURSOR statement

UPDATE Statement

DELETE Statement


Sequence Name (sequence_name) - SAP Documentation

Background documentation Sequence Name (sequence_name)

A sequence name (sequence_name) identifies a sequence of values.

Structure

Syntax Syntax

  1. <sequence_name> ::=
  <identifier>
End of the code.

The identifier may not exceed 32 characters in length.

Examples

SQL Tutorial, Number Generators for Tables

Explanation

A sequence is a series of values generated in accordance with certain rules. Among other things, you can define the step width between these values.

Sequences can be used to generate unique values. These are not uninterrupted, because values generated within a transaction that has been rolled back cannot be used again.

More Information

CREATE SEQUENCE Statement

CREATE SYNONYM Statement

DROP SEQUENCE Statement

SQL Tutorial, Number Generator for a Single Table Column


Selected Column (select_column) - SAP Documentation

Background documentation Selected Column (select_column)

Selected columns (select_column) must be specified in a QUERY specification in order to specify a results table.

The sequence of selected columns defines the columns in the results table. The columns in the results table are formed from the columns of the temporary results table, supplemented if necessary by the ROWNO columns (rowno_column) or STAMP columns (stamp_column). The columns of the temporary result table are determined by the FROM clause of the table expression. The order of the column names in the temporary results table is determined by the order of the table names in the FROM clause.

Structure

Syntax Syntax

  1. <select_column> ::=
  <table_columns>
| <derived_column>
| <rowno_column>
| <stamp_column>

<table_columns> ::=
  *
| <table_name>.*
| <reference_name>.*

<derived_column> ::=
  <expression> [ [AS] <result_column_name>]

<rowno_column> ::=
  ROWNO [ [AS] <result_column_name>]

<stamp_column> ::=
  STAMP [ [AS] <result_column_name>]

<result_column_name> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Selecting and Arranging Rows, Selecting, Arranging and Renaming Columns

Explanation

Every column name that is specified as a selected column (select_column) must uniquely denote a column in a QUERY specification of the underlying tables. If necessary, the column name must be qualified with the table name.

The specification of a column with the data type LOB in a selected column is only valid in the uppermost sequence of selected columns in a QUERY statement or SINGLE SELECT statement if the DISTINCT specification was not used there.

The specification of a column with the data type LOB in a selected column is only valid in the uppermost sequence of select columns in a CREATE VIEW statement which is based on exactly one base table.

If a selected column contains a set function, the sequence of selected columns to which the selected column belongs must not contain any table_columns, and every column name occurring in an expression must denote a grouping column, or the expression must consist of grouping columns.

It is possible to specify scalar subqueries.

<table_columns>

Specifying table columns (table_columns) in a selected column is a quick way of specifying the results table columns.

  • Specifying a selected column of the type * is a quick way of specifying all temporary results table columns. Columns for which the user does not have the SELECT privilege and the implicitly generated column SYSKEY are not transferred.

  • Specifying <table_name>.* or <reference_name>.* is a quick way of specifying all columns in the underlying table. The first column name of the result table is taken from the first column name of the underlying table, the second column name of the result table corresponds to the second column name of the underlying table, and so on. The order of column names in the underlying table corresponds to the order determined when the underlying table is defined. Columns for which the user does not have the SELECT privilege and the implicitly generated column SYSKEY are not transferred.

<derived_column>

Specifying the results table column derived_column in a selected column defines a column in the results table.

  • If a column of the result table has the form <expression> [AS] <result_column_name>, this result column receives the name result_column_name.

  • If no result_column_name is specified and the expression is a column specification that denotes a column in the temporary result table, the column in the result table receives the column name of the temporary result table.

  • If no result_column_name is specified and the expression is not a column specification, the column receives the name EXPRESSION_, where "_" denotes a number with a maximum of four digits, starting with EXPRESSION1, EXPRESSION2 and so on.

<rowno_column>

A ROWNO column (rowno_column) may only be used in a selected column that belongs to a QUERY statement.

If a ROWNO column is specified, a column with the data type FIXED(10) is generated with the name ROWNO. It contains the values 1, 2, 3, ... which are the numbers of the rows in the results table.

If the ROWNO column was specified in the form ROWNO [AS] <result_column_name>, this result column receives the name result_column_name.

A ROWNO column must not be ordered using ORDER BY.

<stamp_column>

A STAMP column (stamp_column) may only be specified in a selected column that belongs to the QUERY expression (query_expression) of an INSERT statement.

The database system is capable of generating unique values. This is a consecutive number that starts with X'000000000001'. The values are assigned in ascending order. There is no guarantee that a sequence of values is uninterrupted.

If a STAMP column is specified, the next value of the data type CHAR(8) BYTE generated by the database system is produced for each row in the temporary result table.

Further Explanations

Each column of a result table has exactly the same data type, length, precision and number of decimal places as the derived_column or the column underlying the table_columns.

This does not apply to the data types DATE and TIMESTAMP. To enable the representation of any date and time format, the length of the result table column is set to the maximum length required for the representation of a date value (length 10) or a time stamp value (length 26).


UPDATE Clause (update_clause) - SAP Documentation

Background documentation UPDATE Clause (update_clause)

The UPDATE clause (update_clause) specifies that a result table should be updatable. The system sets exclusive locks for all rows that form this result table.

Structure

Syntax Syntax

  1. <update_clause> ::=
  FOR UPDATE [OF <column_name>,...] [NOWAIT]
End of the code.
Explanation

The specified column names must identify columns in the tables underlying the QUERY specification (QUERY expression). They do not have to occur in a selected column. The QUERY statement that contains the UPDATE clause must generate an updatable result table.

The UPDATE clause is a prerequisite for using the result table with CURRENT OF <result_table_name> in the UPDATE statement, DELETE statement, and LOCK statement. The UPDATE clause is not relevant for other forms of the above mentioned SQL statements, as well as in interactive mode.

All columns of the underlying base tables are updatable if the user has the corresponding privileges, irrespective of whether they were specified as a column name or not. For performance reasons, it is recommended to specify column names only if the cursor is to be used in an UPDATE statement.

Assume that the column x fulfills the following conditions:

  • x is contained in the primary key or an index

  • x is contained in the search condition of the QUERY statement

  • x is contained in a SET UPDATE clause of the UPDATE statement as x = <expression>, where the expression (expression) contains the x column

If all of the conditions are fulfilled, it is essential that you specify the column x as a column name in the UPDATE clause. If at least one of these conditions is not fulfilled, the column name should not be specified.

NOWAIT

If NOWAIT is not specified and a lock collision occurs, the system waits for the locked data object to be released (but only as long as is specified by the special database parameter RequestTimeout).

If NOWAIT is specified, the database system does not wait until another user has released a data object. Instead, it issues a return code if a collision occurs. If there is no collision, the requested lock is set.

More Information

SELECT Statement (select_statement)

Concepts of the Database System, Locks, Restrictions for UPDATE Statements


Names: Overview - SAP Documentation

Background documentation Names: Overview

Names identify objects and functions. The following list contains names that are frequently used in the syntax description of the SQL statements.

Explanation

For all names consisting of several identifiers that are separated by ".", any number of blanks can be specified before and after ".".

Names: Overview
Syntax Element | Name
alias_name | Alias Name
column_name | Column Name
constraint_name | Constraint Name
dbfunction_name | Name of a Database Function
dbproc_name | Name of a Database Procedure
domain_name | Domain Name
function_spec | Functions
index_name | Index name
indicator_name | Indicator Name
mapchar_set_name | MapChar Set Name
parameter_name | Parameter Name
password | Password
reference_name | Reference Name
referential_constraint_name | Name of a Referential Constraint
result_table_name | Result Table Name
role_name | Role Name
schema_name | Schema Name
sequence_name | Sequence Name
set_function_name | Set Function Name
synonym_name | Synonym Name
table_name | Table Name
trigger_name | Trigger Name
user_name | User Name

More Information

Functions: Overview

SQL Syntax

SQL Reference Manual


Set Function (set_function_spec) - SAP Documentation

Background documentation Set Function (set_function_spec)

There is a series of functions that can be applied to a set of values (rows) as an argument and supply a result. These functions are referred to as set functions (set_function_spec).

Structure

Syntax Syntax

  1. <set_function_spec> ::=
  COUNT(*)
| <all_function>
| <distinct_function>

<all_function> ::=
  <set_function_name>([ALL] <expression>)

<distinct_function> ::=
  <set_function_name>(DISTINCT <expression>)

<set_function_name> ::=
  AVG
| COUNT
| MAX
| MIN
| STDDEV
| SUM
| VARIANCE
End of the code.
Examples

SQL Tutorial, Set Functions, Creating Groups: GROUP BY, HAVING, Information About Character Strings

Explanation

Set functions operate across groups of values but only return one value. The result comprises one row. If a set function is used in a statement, a similar function must also be applied to each of the other columns in the request. However, this does not apply to columns that were grouped using GROUP BY. In this case, the value of the set function can be defined for each group.

The argument of a DISTINCT function or an ALL function is a result table or a group (the result table can be grouped using a GROUP condition).

With the exception of the COUNT(*) function, no NULL values are included in the calculation.

If isolation level 1 is set for the database user, no locks are considered for SELECT COUNT(*) statements without any further qualification, but locks are considered for SELECT COUNT(*) statements with further qualifications.

<set_function_name>

The set functions are classified by the following set function names:

Set Function (set_function_spec)

AVG

The result of AVG is the arithmetical mean of the values of the argument. AVG can only be applied to numerical values. The result has the data type FLOAT(38).

COUNT

- COUNT(*) supplies the total number of values (rows in a result table or group).

- COUNT(DISTINCT <expression>) supplies the total number of different values (number of values in the argument of the DISTINCT function).

- COUNT(ALL <expression>) supplies the number of values that are different from the NULL value (number of values in the argument of the ALL function).

The result has the data type FIXED(20).

MAX

The result of MAX is the largest value of the argument.

MIN

The result of MIN is the largest value of the argument.

STDDEV

The result of STDDEV is the standard deviation of the values of the argument. STDDEV can only be applied to numerical values. The result has the data type FLOAT(38).

SUM

The result of SUM is the sum of the values of the argument. SUM can only be applied to numerical values. The result has the data type FLOAT(38).

VARIANCE

The result of VARIANCE is the variance of the values of the argument. VARIANCE can only be applied to numerical values. The result has the data type FLOAT(38).
ALL/DISTINCT Function
Set Function (set_function_spec)
 | Result of the ALL/DISTINCT Function
The set of values is empty and the ALL/DISTINCT function is applied to the entire result table | The set functions AVG, MAX, MIN, STDDEV, SUM, VARIANCE supply the NULL value as their result. The set function COUNT supplies the value 0.
There is no group to which the ALL/DISTINCTfunction can be applied. | The result is an empty table.
The set of values contains at least one special NULL value. | Special NULL value
<all_function>

The ALL function (all_function) is a set function that removes all NULL values.

The argument of a ALL function is a set of values that is calculated as follows:

  1. A result table or group (the result table can be grouped with a GROUP condition) is formed.

  2. An expression is applied to each row in this result table or group. The expression must not contain a set function.

  3. All NULL values are removed. Special NULL values are not removed, two special NULL values are regarded as identical.

The ALL function is executed, taking into account the relevant set function name (set_function_name) for the set of values.

The result of an ALL function is independent of whether the keyword ALL is specified or not.

<distinct_function>

The DISTINCT function (distinct_function) is a set function that removes duplicate values and all NULL values.

The argument of a DISTINCT function is a set of values that is calculated as follows:

  1. A result table or group (the result table can be grouped with a GROUP condition) is formed.

  2. An expression is applied to each row in this result table or group. The expression must not contain a set function.

  3. All NULL values and duplicated values are removed (DISTINCT). Special NULL values are not removed; two special NULL values are regarded as identical.

The DISTINCT function is executed, taking into account the relevant set function name (set_function_name) for this set of values.

More Information

Functions: Overview


Synonym Name (synonym_name) - SAP Documentation

Background documentation Synonym Name (synonym_name)

A synonym name (synonym_name) identifies a synonym for a table name. Synonyms are useful for abbreviating long or complicated table names.

Structure

Syntax Syntax

  1. <synonym_name> ::=
  <identifier>
End of the code.

The identifier may not exceed 32 characters in length.

Explanation

A synonym may be used in place of the old name at all times. Since synonyms are user-specific, a user identification does not have to be entered when a synonym is specified. If you access tables belonging to a different database user, you do not have to specify the user name before the table name if you use the synonym.

Multiple synonyms can be assigned to one table. They cannot be loaned to other database users. If the synonym is not a PUBLIC synonym, it is known only by one database user or user group. A PUBLIC synonym is known by every database user and user group.

More Information

CREATE SYNONYM Statement

RENAME SYNONYM Statement

DROP SYNONYM Statement


Column Name (column_name) - SAP Documentation

Background documentation Column Name (column_name)

A column name (column_name) identifies a column.

Structure

Syntax Syntax

  1. <column_name> ::=
  <identifier>
End of the code.
Explanation

An error message is output if the name consists of more than 32 characters.

More Information

Column Definition, Column Specification

CREATE TABLE Statement

CREATE INDEX Statement

UNIQUE Definition

RENAME COLUMN Statement

COLUMN Change Definition

INSERT Statement

UPDATE Statement

MODIFY Definition

UPDATE Clause

DROP Definition


Role Name (role_name) - SAP Documentation

Background documentation Role Name (role_name)

A role name (role_name) identifies a role.

Structure

Syntax Syntax

  1. <role_name> ::=
  <identifier>
End of the code.

The identifier may not exceed 32 characters in length.

Examples

SQL Tutorial, Roles

Explanation

  1. The CREATE ROLE statement creates a role. This role is initially empty. Only database administrators can create roles. The new role name cannot be the same as the name of any other role, user, or user group.

  2. You use the GRANT statement to assign privileges to a role. You use the REVOKE statement to revoke privileges from a role.

  3. A role can be assigned to database users, user groups, or other roles using the GRANT statement and specifying the role name.

  4. You use the ALTER USER or ALTER USERGROUP statement to specify which roles (assigned to a user or a user group) are used when opening a database session.

  5. During a database session, you can use the SET statement to activate other roles assigned to the user or user group. If a role is activated in a session, the current user of the session has all the privileges assigned to the role. If a password has been assigned to a role, users assigned to that role can only activate it by entering the password in the SET statement.

The existence and properties of a role are registered in the database catalog as metadata. A database user that creates a role becomes the owner of this role.

The roles assigned to the user or user group as a result of the ALTER USER and ALTER-USERGROUP statements are activated as soon as a database session is opened.

All roles are inactive for the current database session while SQL statements for the data definition are being executed.

More Information

Defining a role: CREATE ROLE Statement

Assigning privileges to a role: GRANT Statement

Granting a role: GRANT Statement

Activating a role: ALTER USER Statement, ALTER USERGROUP Statement, SET Statement

Dropping a role: DROP ROLE Statement


Indicator Name (indicator_name) - SAP Documentation

Background documentation Indicator Name (indicator_name)

An indicator name (indicator_name) designates an indicator variable in an application that can be specified together with a parameter name.

Structure

Syntax Syntax

  1. <indicator_name> ::=
  <parameter_name>
End of the code.
Explanation

The indicator variable of a parameter specification provides information about any irregularities (such as NULL value, different value and parameter lengths).

More Information

Parameter Specification (parameter_spec)

Glossary, Parameters in SQL Statements


JOIN Predicate (join_predicate) - SAP Documentation

Background documentation JOIN Predicate (join_predicate)

A JOIN predicate (join_predicate) is a predicate that specifies a join. A join is an SQL statement that links several tables with one another and returns a join table as its result. A JOIN predicate can be specified with or without an OUTER JOIN indicator.

Structure

Syntax Syntax

  1. <join_predicate> ::=
  <expression> [<outer_join_indicator>]
    <comp_op> <expression> [<outer_join_indicator>]

<outer_join_indicator> ::=
  (+) <!  This SQL clause is
          no longer recommended to be used
          and might be removed from future versions.  !>

<comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>
End of the code.
Examples

SQL Tutorial, Joins: Information From Several Tables

Explanation

The JOIN predicate is a special type of comparison predicate. The rules for a comparison predicate apply here.

Each expression (expression) specified in the JOIN predicate must contain a column specification. The column specification of the first expression and the column specification of the second expression must be specified in such a way that both column specifications refer to different table names or reference names. The value of the first expression and the value of the second expression must be comparable.

Only those rows from the table specified in the JOIN predicate are transferred to the result table for which a row is found in the other table specified in the JOIN predicate in accordance with the comparison (specified by the comparison operator comp_op).

OUTER JOIN Indicator

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.

Only one OUTER JOIN indicator (outer_join_indicator) may be specified in a JOIN predicate. If each row in a table (table A) specified in the JOIN predicate is to appear at least once in the result table, the OUTER JOIN indicator must be specified on the side of the comparison operator where the other table (table B) is specified in the JOIN predicate. Even if at least one counterpart is not found in table B for a row in table A, the row in table A is still transferred to the result table. The NULL value is then used for the output columns that are formed from the columns in table B.

More Information

Joined Table (joined_table)

Join View Table in an INSERT Statement

Updatable Join View Table

CREATE VIEW Statement

Search Requirements

Restrictions for SQL Statements

SQL Optimizer, Search Strategies for Joins, EXPLAIN Statement for Joins


Join View Table, QUERY Expression, CONSTRAINT Definition, Trigger in INSERT Statement - SAP Documentation

Background documentation Join View Table, QUERY Expression, CONSTRAINT Definition, Trigger in INSERT Statement

The following lists some of the special features of INSERT statements.

Structure

Join View Table in an INSERT Statement

  • If the table name in an INSERT statement does not identify a join view table, and if a row containing the key of the row to be inserted already exists, the result will depend on the DUPLICATES clause. The INSERT statement will fail if no DUPLICATES clause is specified.

  • If the table name identifies a join view table, a row is inserted into each base table on which the view table is based.

    If the key table of the view table already contains a row with the key of the row to be inserted, the INSERT statement will fail.

    If any row in a base table, which is not the key table of the view table, already contains the key of the row to be inserted, the INSERT statement will fail if the row to be inserted does not match the existing row.

QUERY Expression in an INSERT Statement

  • If a QUERY expression is specified in the INSERT statement, the specified table must not be a join view table. The QUERY expression defines a result table whose ith column is assigned to the ith target column. A row is formed from each row in the result table and inserted in the base table.

    Each of these rows has the following contents: Each base table column that is a target column of the INSERT statement contains the value of the corresponding column in the current result table row.

  • If a QUERY expression is not specified in the INSERT statement, exactly one row is inserted in the specified table.

    The inserted row has the following contents: Each base table column that is a target column of the INSERT statement contains the value assigned to the respective target column.

The following still applies to the inserted row(s):

  • All columns of the base table that are not target columns of the INSERT statement and for which a DEFAULT specification exists contain the DEFAULT value.

  • All columns of the base table that are not target columns of the INSERT statement and for which a DEFAULT specification exists contain the NULL value.

CONSTRAINT Definition in an INSERT Statement

If CONSTRAINT definitions exist for base tables in which rows are to be inserted with the INSERT statement, each row that is to be inserted is checked to determine whether it fulfills the CONSTRAINT definition. The INSERT statement fails if this is not the case for at least one row.

If at least one of the base tables in which rows are to be inserted with the INSERT statement is the referencing table of a referential CONSTRAINT definition, the database system checks each row to be inserted to determine whether the foreign key resulting from the row exists as a key or as a value of an index defined with UNIQUE in the corresponding referenced table (referenced_table). The INSERT statement fails if this is not the case for at least one row.

Triggers in an INSERT Statement

If triggers that are to be executed after an INSERT statement were defined for base tables in which rows are to be inserted with the INSERT statement, they are executed accordingly. The INSERT statement will fail if one of these triggers fails.

More Information

CREATE VIEW Statement (create_view_statement)


Index Name (index_name) - SAP Documentation

Background documentation Index Name (index_name)

An index name (index_name) identifies an index.

Structure

Syntax Syntax

  1. <index_name> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Indexes

Explanation

An error message is output if the name consists of more than 32 characters.

SQL Statements

CREATE INDEX Statement

ALTER INDEX Statement

RENAME INDEX Statement

DROP INDEX Statement


Character (character) - SAP Documentation

Background documentation Character (character)

A character (character) is an element of a character string or keyword.

Structure

Syntax Syntax

  1. <character> ::=
  <digit>
| <letter>
| <extended_letter>
| <hex_digit>
| <language_specific_character>
| <special_character>
End of the code.
Digits

Syntax Syntax

  1. <digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
End of the code.
Letters

Syntax Syntax

  1. <letter> ::=
  A | B | C | D | E | F | G | H | I | J | K | L | M
  N | O | P | Q | R | S | T | U | V | W | X | Y | Z
  a | b | c | d | e | f | g | h | i | j | k | l | m
  n | o | p | q | r | s | t | u | v | w | x | y | z
End of the code.
Further letters

Syntax Syntax

  1. <extended_letter> ::=
  # | @ | $
End of the code.
Hexadecimal characters

Syntax Syntax

  1. <hex_digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
| A | B | C | D | E | F
| a | b | c | d | e | f
End of the code.
Language-Specific Characters

A language-specific character (language_specific_character) is any letter that occurs in a northern, southern, or central European language and is not contained in the list of letters.

Example Example

German umlauts: ä, ö, ü

French letters with a grave accent: à

End of the example.

If you have installed a UNICODE-enabled database, a language-specific character is a character that is not included in the ASCII code list from 0 to 127.

Special Characters

A special_character is any character that is not contained in the following list:

  • Digits

  • Letters

  • Further letters

  • Hexadecimal characters

  • Language-specific characters

  • Characters that indicate the end of a line in a file

More Information

Character Set (token)

Literal (literal)


Joined Table (joined_table) - SAP Documentation

Background documentation Joined Table (joined_table)

A joined table (joined_table) can be specified as part of a FROM TABLE specification (from_table_spec).

Structure

Syntax Syntax

  1. <joined_table> ::=
  <from_table_spec> CROSS JOIN <from_table_spec>
| <from_table_spec> [INNER] JOIN <from_table_spec> <join_spec>
| <from_table_spec> [LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER]] JOIN <from_table_spec> <join_spec>

<join_spec> ::=
  ON <search_condition>
End of the code.
Explanation

If a FROM TABLE- specification comprises a joined table, the result is generated as follows:

Let FT1 be the set of all rows in the table specified by the first FROM TABLE specification. Let FT2 by the set of all rows in the table specified by the second FROM TABLE specification.

  • If the joined table is specified as CROSS JOIN, a table is created that comprises all possible combinations of FT1 and FT2. From a mathematical perspective, the Cartesian product of the two tables is calculated.

  • If the joined table is specified with the keyword JOIN without the optional keywords INNER, LEFT, RIGHT, FULL or OUTER, the join type is assumed to be INNER.

Let T be the set of result rows consisting of all possible combinations of FT1 and FT2. Each result row satisfies the JOIN specification (join_spec) for this set.

  • If the joined table is specified with the join type INNER, the result is the set T.

  • If the joined table is specified with the join type LEFT, the result is the set T plus the rows from FT1 that are not in T. The result columns that are not formed from FT1 are assigned the NULL value.

  • If the joined table is specified with the join type RIGHT, the result is the set T plus the rows from FT2 that are not in T. The result columns that are not formed from FT2 are assigned the NULL value.

  • If the joined table is specified with the join type FULL, the result is the set T plus the rows that are added by the join types LEFT and RIGHT.

The rules specified for the WHERE condition apply to the JOIN specification ON <search_condition>, with the restriction that no links using the Boolean operator OR are permitted.

More Information

JOIN Predicate (join_predicate)

Updatable Join View Table

CREATE VIEW Statement

Join View Table in INSERT statements


MONITOR Statement (monitor_statement) - SAP Documentation

Background documentation MONITOR Statement (monitor_statement)

The MONITOR statement (monitor_statement) can be used to initialize counters for monitoring the database with 0.

Structure

Syntax Syntax

  1. <monitor_statement> ::=
  MONITOR INIT
End of the code.
Explanation

The database system always records result counters. These are initialized with 0 when the system is started. The MONITOR statement can be used to reset them to 0.

The event counters recorded by the database system can be retrieved by selecting monitor system tables.

Note Note

For a definition of the monitor system tables, see the Monitor System Tables section of Definition of the System Tables.

End of the note.


DROP SYSTEM TRIGGER Statement (drop_system_trigger_statement) - SAP Documentation

Background documentation DROP SYSTEM TRIGGER Statement (drop_system_trigger_statement)

The DROP SYSTEM TRIGGER statement (drop_system_trigger_statement) deletes a system trigger.

Structure

Syntax Syntax

  1. <drop_system_trigger_statement> ::=
  DROP SYSTEM TRIGGER [<schema_name>.]<trigger_name>
End of the code.
Explanation

If a schema is not specified before the trigger name, the current schema is implicitly assumed.

The current database user must be the owner of the system trigger.

Metadata for the system trigger is deleted.


Transactions - SAP Documentation

Background documentation Transactions

The first transaction is opened when a database session is opened with a CONNECT statement. You can use a SET statement to change the properties of a database session. The transaction is concluded with the COMMIT, ROLLBACK or RELEASE statement. The RELEASE statement also closes the database session.

Structure

SQL Statements for Transaction Management
CONNECT Statement | SET Statement
COMMIT Statement | ROLLBACK Statement
SUBTRANS Statement | SQL SAVEPOINT Statements
INNER TRANSACTION Statement | LOCK Statement
UNLOCK Statement | RELEASE Statement

Activities

Subtransactions

A transaction can be divided into other basic units known as subtransactions. You can use one of the following procedures to open or close subtransactions:

  • Using SUBTRANS statement

    A subtransaction is started using the SUBTRANS BEGIN statement and ended using the SUBTRANS END or SUBTRANS ROLLBACK statement.

  • Using SAVEPOINT statement

    A subtransaction is started by setting an SQL savepoint using the SAVEPOINT statement. An SQL savepoint can be deactivated using the RELEASE SAVEPOINT or ROLLBACK TO statement.

Choose one of these procedures and stick to it.

Subtransactions do not affect locks. These are only released using COMMIT or ROLLBACK. COMMIT or ROLLBACK close all subtransactions implicitly.

Inner Transactions

You can use the INNER TRANSACTION statement to embed one transaction in another transaction. The embedded transaction can be completed at any time; the surrounding transaction is continued irrespectively.

Locks

Since the database system permits concurrent transactions on the same database objects, locks on rows, tables and the database catalog are necessary to isolate individual transactions.

  • You can influence how implicit locks are assigned by setting the isolation level using the CONNECT statement.

  • Locks can be assigned explicitly using the LOCK statement or by assigning a LOCK option.

  • Exclusive locks for rows that have not yet been modified and shared locks on rows can be released by the UNLOCK statement before the end of the transaction.

The locks assigned to a transaction are released at the end of the transaction, making the respective database objects accessible again to other transactions.

More Information

Concepts of the Database System, Transactions, Locks

Database Administration, Configuring Locks for Database Objects, Analyzing the Database Performance

SQL Statements: Overview

SQL Reference Manual


Parameter Name (parameter_name) - SAP Documentation

Background documentation Parameter Name (parameter_name)

A parameter name (parameter_name) identifies a parameter (host variable) in an application containing SQL statements from the database system.

Structure

Syntax Syntax

  1. <parameter_name> ::=
  :<identifier>
| ?
End of the code.

The identifier may not exceed 32 characters in length.

You can also use the place holder ? as a parameter name.

Explanation

A colon is placed before the identifier.

The conventions of the programming language in which SQL statements in the database system are embedded determine the number of significant characters in the parameter name.

Identifiers for parameter names may contain the characters "." and "_", but not as the first character.

If you use the placeholder ? as a parameter name, make sure this placeholder is replaced by the parameter value before you execute the SQL statement.

More Information

Parameter Specification (parameter_spec)


NULL Predicate (null_predicate) - SAP Documentation

Background documentation NULL Predicate (null_predicate)

By specifying a NULL predicate, (null_predicate) you can test whether the value is a NULL value.

Structure

Syntax Syntax

  1. <null_predicate> ::=
  <expression> IS [NOT] NULL
End of the code.
Examples

SQL Tutorial, Negative Conditions: NOT

Explanation

The truth content of a NULL predicate is either true or false.

NULL Predicate (null_predicate)
x | Result of the Function x IS NULL
x is a NULL value | True
x is a special NULL value | False

x IS NOT NULL has the same result as NOT(x IS NULL).


RENAME INDEX Statement (rename_index_statement) - SAP Documentation

Background documentation RENAME INDEX Statement (rename_index_statement)

The RENAME INDEX statement (rename_index_statement) changes the name of an index.

Structure

Syntax Syntax

  1. <rename_index_statement> ::
  RENAME INDEX <old_index_name> [ON <table_name>]
    TO <new_index_name>

<old_index_name> ::=
  <index_name>

<new_index_name> ::=
  <index_name>
End of the code.
Explanation

If a schema name is not specified in the table name, the current schema is used.

The specified table name must be the name of an existing base table.

The index identified by old_index_name must exist. You do not need to specify ON <table_name> if this index is unique.

The current database user must be the owner of the specified table or have the INDEX privilege for it.

The new index name must not be identical to an existing index name for the table.

More Information

Privileges: Overview


Unsigned Integer (unsigned_integer) - SAP Documentation

Background documentation Unsigned Integer (unsigned_integer)

An unsigned integer (unsigned_integer) is a special numeric literal.

Structure

Syntax Syntax

  1. <unsigned_integer> ::=
  <numeric_literal>

<numeric_literal> ::=
  <fixed_point_literal>
| <floating_point_literal>
End of the code.
Explanation

An unsigned integer can be represented in any way but must be a positive integer.


Memory Requirements of a Column Value According to Data Type - SAP Documentation

Background documentation Memory Requirements of a Column Value According to Data Type

In the column definition (column_definition), the memory requirement of a column value depends on the data type. You can get an approximate idea of the memory requirement using the following table. Please note that these values are intended as guidance values. Though applicable in most cases, they may vary depending on your system configuration.

Note Note

If the database parameter UseColumnCompression=YES is set, then the space that is actually required is often smaller than the maximum memory requirement. This difference depends on the actual size of the saved column value. See also: Database Administration, Support database parameters

However, if the lead column is not the last lead column, then the actual required space corresponds to the maximum space requirement.

If the column is the last lead column then the actual required space is smaller than the maximum space requirement.

End of the note.
Memory Requirements of a Column Value According to Data Type
Data type | Maximum Space Requirement in the Database (Bytes) UseColumnCompression=YES | Maximum Space Requirement in the Database (Bytes) UseColumnCompression=NO | Space Requirement in Communication (Bytes) when an ASCII Client is Used | Space Requirement in Communication (Bytes) when a UNICODE Client is Used
FIXED(p,s) | (p+1) DIV 2 + 3 | (p+1) DIV 2 + 2 | (p+1) DIV 2 + 2 | (p+1) DIV 2 + 2
FLOAT(p) | (p+1) DIV 2 + 3 | (p+1) DIV 2 + 2 | (p+1) DIV 2 + 2 | (p+1) DIV 2 + 2
BOOLEAN | 3 | 2 | 2 | 2
DATE | 10 | 9 | 11 | 21
TIME | 10 | 9 | 9 | 19
TIMESTAMP | 22 | 21 | 27 | 53
CLOB/BLOB | 9 | 9 | 41 | 41
CHAR(n) ASCII 0<n<=1023 Key column | n+1 | n+1 | n+1 | 2*n+1
CHAR(n) ASCII n<=30 Not a key column | n+2 | n+1 | n+1 | 2*n+1
CHAR(n) ASCII 30<n<=254 Not a key column | n+2 | n+2 | n+1 | 2*n+1
CHAR(n) ASCII 254<n Not a key column | n+3 | n+3 | n+1 | 2*n+1
CHAR(n) BYTE 0<n<=1023 Key column | n+1 | n+1 | n+1 | n+1
CHAR(n) BYTE n<=30 Not a key column | n+2 | n+1 | n+1 | n+1
CHAR(n) BYTE 30<n<=254 Not a key column | n+2 | n+2 | n+1 | n+1
CHAR(n) BYTE 254<n Not a key column | n+3 | n+3 | n+1 | n+1
CHAR(n) UNICODE 0<n<=511 Key column | 2*n+1 | 2*n+1 | 2*n+1 | 2*n+1
CHAR(n) UNICODE n<=15 Not a key column | 2*n+2 | 2*n+1 | 2*n+1 | 2*n+1
CHAR(n) UNICODE 15<n<=127 Not a key column | 2*n+2 | 2*n+2 | 2*n+1 | 2*n+1
CHAR(n) UNICODE 127<n Not a key column | 2*n+3 | 2*n+3 | 2*n+1 | 2*n+1
VARCHAR(n) ASCII 0<n<=1023 Key column | n+1 | n+1 | n+1 | 2*n+1
VARCHAR(n) ASCII n<=30 Not a key column | n+2 | n+2 | n+1 | 2*n+1
VARCHAR(n) ASCII 30<n<=254 Not a key column | n+2 | n+2 | n+1 | 2*n+1
VARCHAR(n) ASCII 254<n Not a key column | n+3 | n+3 | n+1 | 2*n+1
VARCHAR(n) BYTE 0<n<=1023 Key column | n+1 | n+1 | n+1 | n+1
VARCHAR(n) BYTE n<=30 Not a key column | n+2 | n+2 | n+1 | n+1
VARCHAR(n) BYTE 30<n<=254 Not a key column | n+2 | n+2 | n+1 | n+1
VARCHAR(n) BYTE 254<n Not a key column | n+3 | n+3 | n+1 | n+1
VARCHAR(n) UNICODE 0<n<=511 Key column | 2*n+1 | 2*n+1 | 2*n+1 | 2*n+1
VARCHAR(n) UNICODE n<=15 Not a key column | 2*n+2 | 2*n+2 | 2*n+1 | 2*n+1
VARCHAR(n) UNICODE 15<n<=127 Not a key column | 2*n+2 | 2*n+2 | 2*n+1 | 2*n+1
VARCHAR(n) UNICODE 127<n Not a key column | 2*n+3 | 2*n+3 | 2*n+1 | 2*n+1


-9000: SYSTEM ERROR: NOT YET IMPLEMENTED - SAP Documentation

Background documentation -9000: SYSTEM ERROR: NOT YET IMPLEMENTED

Explanation

This SQL statement is not yet implemented. It will be available in future releases.

User Response

To achieve the desired effect try one or more other SQL statements.


RENAME SCHEMA Statement (rename_schema_statement) - SAP Documentation

Background documentation RENAME SCHEMA Statement (rename_schema_statement)

The RENAME SCHEMA statement (rename_schema_statement) changes the name of a schema.

Structure

Syntax Syntax

  1. <rename_schema_statement> ::=
  RENAME SCHEMA <schema_name> TO <new_schema_name>

<new_schema_name> ::=
  <schema_name>
End of the code.
Examples

SQL Tutorial, Schemas

Explanation

The schema to be changed must already exist and cannot identify a user. The schema name must identify a schema whose owner is the current database user.

The new schema name (new_schema_name) must not be identical to the name of an existing database user, user group, schema or role.

All objects dependent on the schema to be changed are adjusted by the database system to the new schema name.


LIKE Predicate (like_predicate) - SAP Documentation

Background documentation LIKE Predicate (like_predicate)

A LIKE predicate (like_predicate) is a predicate that is used to search for character strings that have a certain pattern. This pattern can be a certain character string or any sequence of characters (whose length may or may not be known).

Structure

Syntax Syntax

  1. <like_predicate> ::=
  <expression> [NOT] LIKE <like_expression> [ESCAPE <expression>]

<like_expression> ::=
  <expression>
| '<pattern_element>...'

<pattern_element> ::=
  <match_string>
| <match_set>

<match_string> ::=
  %
| X'1F'

<match_set> ::=
  <underscore>
| X'1E'
| <match_char>

<underscore> ::=
  _

<match_char> ::=
  <!  every character other than   % | X'1F' | <underscore> | X'1E'  !>
End of the code.
Examples

SQL Tutorial, Searching for Character Strings: LIKE, Negative Conditions: NOT

Explanation

x NOT LIKE y  has the same result as NOT(x LIKE y).

x LIKE y

x, y

Result of x LIKE y

x or y is a NULL value

x LIKE y is undefined

x and y are non-NULL values

x LIKE y is either true or false

x can be split into substrings with the result that:

A substring of x is a sequence of 0,1, or a sequence of several contiguous characters, and each character of x belongs to exactly one substring.

The number of substrings of x and y is identical.

If the nth pattern element (pattern_element) of y is a sequence of characters and the nth substring of x is a sequence of 0 or more characters.

x LIKE y is true
<expression>

The expression expression like_expression must supply an alphanumeric value or a date or time value.

<pattern_element>

  • If a match_string is specified, this position in the search pattern can be replaced by any number of characters.

  • If a match_set is specified, this position in the search pattern can be replaced by the number of characters specified in the match_set.

    If an underscore or X'1E' is used, this position in the pattern can be replaced by any one character.

    If match_char is used, this position in the pattern can be replaced by the specified character itself.

ESCAPE

An escape character ESCAPE <expression> must be used if you want to search for an underscore, % oder the hexadecimal value X'1E' or X'1F' in the LIKE predicate.

If ESCAPE <expression> is specified, the corresponding expression must return an alphanumeric value that consists of exactly one character. If this escape character is contained in the LIKE expression (like_expression), the following character must be one of the special characters <underscore>, %, X'1E' or X'1F'. This special character is then seen as an independent character.


CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement) - SAP Documentation

Background documentation CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement)

The CREATE SYSTEM TRIGGER statement (create_system_trigger_statement) defines a trigger for the restart.

Structure

Syntax Syntax

  1. <create_system_trigger_statement> ::
  CREATE SYSTEM TRIGGER [<schema_name>.]<trigger_name>
    AFTER RESTART EXECUTE (<routine>)
End of the code.
Explanation

A system trigger is a special database procedure performed implicitly during a restart. This is executed at a point when, though the database instance has been fully started, connections are still not possible.

The current user must be a database administrator. He or she becomes the owner of the system trigger. If a schema is not specified before the trigger name, the current schema is implicitly assumed. The trigger is assigned to the schema that has been determined implicitly or specified explicitly. The current user must have the CREATEIN privilege for this schema. The trigger name must be different from the names of all the trigger names already existing in the schema.

If more than one system trigger is defined in the database, these are executed in a random order.

routine

If STOP ends the trigger with an error number other than null, restart fails. Restarting the database instance is only possible in such cases if the system triggers are deactivated (Support Database Parameters UseSystemTriggers).

More Information

Privileges: Overview


DROP FUNCTION Statement (drop_function_statement) - SAP Documentation

Background documentation DROP FUNCTION Statement (drop_function_statement)

The DROP-FUNCTION statement (drop_function_statement) deletes a database function.

Structure

Syntax Syntax

  1. <drop_function_statement> ::=
  DROP [PUBLIC] FUNCTION <dbfunction_name>
End of the code.
Examples

SQL Tutorial, Database Functions

Explanation

If a schema is not specified in the database function name, the current schema is implicitly assumed.

The current user must be the owner of the database function or have the DROPIN privilege for the schema to which the database function is assigned.

The metadata of the database function is dropped.

PUBLIC

To drop a database function that was created with the property PUBLIC, you have to use the DROP PUBLIC FUNCTION statement for this function.

More Information

Privileges: Overview


UNIQUE Definition (unique_definition) - SAP Documentation

Background documentation UNIQUE Definition (unique_definition)

A UNIQUE definition (unique_definition) in the CREATE TABLE statement defines the uniqueness of column value combinations.

Structure

Syntax Syntax

  1. <unique_definition> ::=
  [CONSTRAINT <index_name>] UNIQUE (<column_name>,...)
End of the code.
Examples

SQL Tutorial, Indexes

Explanation

Specifying a UNIQUE definition in a CREATE TABLE statement has the same effect as specifying the CREATE TABLE statement without a UNIQUE definition, but with a CREATE INDEX statement with UNIQUE.

  • Index name specified: The index generated is stored under this name in the database catalog.

  • No index name: The database system assigns a unique index name to the index.


Comment (sql_comment) - SAP Documentation

Background documentation Comment (sql_comment)

A comment (sql_comment) can be included for every SQL statement.

Structure

Syntax Syntax

  1. <sql_comment> ::=
  /*<sql_comment_text>*/
| --<sql_comment_text>

<sql_comment_text> ::=
  <!  comment_text  !>
End of the code.
Explanation

You can enter any comment text you wish.

When using the syntax rule --<sql_comment_text> for a row, all characters entered in the row after -- are regarded as comments.

Example

CREATE TABLE person (cno FIXED(4), first name CHAR(7), last name CHAR(7), account FIXED(7,2)) /*create table person*/

More Information

SQL Statements: Overview


Conversion Function (conversion_function) - SAP Documentation

Background documentation Conversion Function (conversion_function)

A conversion function (conversion_function) is a function that converts a value from one data type to another.

Structure

Syntax Syntax

  1. <conversion_function> ::=
  CHAR(<expression>[,<datetimeformat>])
| CHR(<expression>[,<unsigned_integer>])
| HEX(<expression>)
| HEXTORAW(<expression>)
| INTTORAW(<expression>)
| NUM(<expression>)
End of the code.

More Information

Functions: Overview


Data Query - SAP Documentation

Background documentation Data Query

The following sections provide an introduction to the query language (also referred to as the data retrieval language) used by the database system.

SQL Statements for Data Queries
QUERY Statement | SINGLE SELECT Statement | EXPLAIN Statement
FETCH Statement | CLOSE Statement |

Example

SQL Tutorial, Data Query

More Information

SQL Statements: Overview

SQL Reference Manual


DELETE Statement (delete_statement) - SAP Documentation

Background documentation DELETE Statement (delete_statement)

The DELETE statement (delete_statement) deletes rows from a table.

Structure

Syntax Syntax

  1. <delete_statement> ::=
  DELETE [FROM] <table_name>
    [<reference_name>]
    [KEY <key_spec>,...] <!  This SQL clause is
          no longer recommended to be used and
          might be removed from future versions.  !>
    [WHERE <search_condition>]
    [IGNORE TRIGGER] [NOWAIT]
| DELETE [FROM] <table_name>
    [<reference_name>]
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
End of the code.
Examples

SQL Tutorial, Inserting, Changing and Deleting Rows

Explanation

The table name must identify an existing base table, view table, or synonym.

The current database user must have the DELETE privilege for the specified table. If the table name identifies a view table, it is possible that the owner of the view table does not have the DELETE privilege either, because the view table is not updateable.

<table_name>

Table name identifies a view table: The rows of the underlying base tables for the view table are deleted.

Table name identifies a join view table: Only the following rows are deleted:

  • Rows in the key table of the join view table

  • Rows in underlying base tables for the view table that have a 1:1 relationship with the key table.

Which rows are deleted?

The following specifications determine which rows in the table are deleted:

  • Optional key specification (key_spec) and optional search condition (search_condition)

    Key specification and no search condition:

    A row with the specified key values already exists. This row is deleted. No rows are deleted if a row with the specified key values does not exist.

    Key specification and a search condition:

    A row with the specified key values already exists. The search condition is applied to this row. If the search condition is satisfied, then the row is deleted. No rows are deleted if a row with the specified key values does not exist or if a search condition applied to a row is not satisfied.

    No key specification and a search condition:

    The search condition is applied to each row in the specified table. All rows for which the search condition is satisfied are deleted.

  • When using CURRENT OF so that the cursor position within the result table result_table_name is specified: If the cursor is not positioned on a row in the results table, no rows are deleted.

  • If none of the above are specified, all rows in the specified table are deleted.

  • If no row is found that satisfies the conditions defined by the optional clauses, a message to this effect appears.

Key Specification (key_spec)

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.
CURRENT OF

If CURRENT OF is specified, the table name in the FROM clause of the QUERY statement used to construct the result table result_table_name must be identical to the table name in the DELETE statement.

If CURRENT OF is specified and the cursor is positioned on a row in the result table, the corresponding row is deleted. This is the row in the table specified in the FROM clause of the QUERY statement used to form the row of the results table. It is essential that the results table was specified using FOR UPDATE. Afterwards, the cursor is positioned after the row in the results table. It is impossible to predict whether or not the updated values in the corresponding row are visible the next time this row in the results table is accessed.

IGNORE TRIGGER

If triggers are defined for base tables from which rows are to be deleted using the DELETE statement, for execution after a DELETE statement, these are executed accordingly. The DELETE statement will fail if one of these triggers fails.

You can specify IGNORE TRIGGER to ensure that no DELETE trigger is executed by the DELETE statement.

NOWAIT

If you specify NOWAIT, the system does not wait for the lock to be released where a lock collision occurs. Instead, it returns an error message immediately.

DELETE Rule

For each row deleted in the course of the DELETE statement which originates from a referenced_table of at least one referential CONSTRAINT definition, one of the following actions is carried out – depending on the DELETE rule of the referential CONSTRAINT definition:

  • DELETE CASCADE: All matching rows in the corresponding foreign key table are deleted.

  • DELETE RESTRICT: If there are matching rows in the corresponding foreign key table, the DELETE statement fails.

  • DELETE SET NULL: The NULL value is assigned to the respective foreign key columns of all matching rows in the corresponding foreign key table.

  • DELETE SET DEFAULT: The DEFAULT value set by the DEFAULT specification is assigned to the respective foreign key columns for all matching rows in the corresponding foreign key table.

More Information

CREATE VIEW Statement

Privileges: Overview

Data Manipulation


DROP USER Statement (drop_user_statement) - SAP Documentation

Background documentation DROP USER Statement (drop_user_statement)

The DROP USER statement (drop_user_statement) deletes a database user definition. The metadata for the database user to be dropped is deleted from the database catalog.

Structure

Syntax Syntax

  1. <drop_user_statement> ::=
  DROP USER <user_name> [<cascade_option>]
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges

Explanation

The current database user must have owner authorization over the database user that is to be dropped.

The specified database user cannot be logged on to the database system when the DROP USER statement is executed.

Deleting a database user of the database user class DBA does not affect any database users created by this user. The database system administrator becomes the new owner of these database users.

All database objects that the database user being dropped has created in schemas, which he or she does not own, are retained. The owner of the schema in question becomes the new owner of these objects.

<cascade_option>

  • If no CASCADE option is specified, or the CASCADE option CASCADE is specified, all schemas, synonyms and tables of the database user to be dropped, including indexes, privileges, view tables and so on based on these objects, are deleted along with the user.

  • If the CASCADE option RESTRICT is specified, and the database user to be dropped does not belong to a user group, but is the owner of synonyms or tables, the DROP USER statement will fail.


DROP USERGROUP Statement (drop_usergroup_statement) - SAP Documentation

Background documentation DROP USERGROUP Statement (drop_usergroup_statement)

The DROP USERGROUP statement (drop_usergroup_statement) deletes the definition of a user group. The metadata of the user group to be dropped is dropped from the database catalog.

Structure

Syntax Syntax

  1. <drop_usergroup_statement> ::=
  DROP USERGGROUP <usergroup_name> [<cascade_option>]
End of the code.
Explanation

The current database user must have owner authorization over the user group to be dropped.

The database users in this user group must not be logged on to the database system when the DROP USERGROUP statement is executed.

<cascade_option>

  • If the usergroup to be dropped is the owner of synonyms or tables and if the CASCADE option RESTRICT was specified, the DROP USERGROUP statement fails.

  • If no CASCADE option or the CASCADE option CASCADE was specified, all the synonyms and tables of the user group to be dropped, as well as all indexes, privileges, view tables, and so on based on these objects, are dropped together with the user group.


REVOKE Statement (revoke_statement) - SAP Documentation

Background documentation REVOKE Statement (revoke_statement)

The REVOKE statement (revoke_statement) revokes privileges.

Structure

Syntax Syntax

  1. <revoke_statement> ::=
  REVOKE <priv_spec>,... FROM <grantee>,...
    [<cascade_option>]
| REVOKE <schema_priv_spec> FROM <grantee>,...
| REVOKE EXECUTE ON <dbproc_name> FROM <grantee>,...
| REVOKE EXECUTE ON <dbfunction_name> FROM <grantee>,...
    [<cascade_option>]

<grantee> ::=
  <user_name>
| <usergroup_name>
| <role_name>
| PUBLIC
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges, Roles

Explanation

The owner of a table or schema can revoke the privileges granted for this table or schema for any database user.

If a database user is not the owner of the table or schema, he may only revoke the privileges he has granted.

If the SELECT privilege was granted for a table without specifying any column names, REVOKE SELECT (<column_name>,...) can be used to revoke the SELECT privilege for the specified columns. The SELECT privilege for table columns that have not been specified remains unchanged. The same is true for the UPDATE, REFERENCES, and SELUPD privileges.

<grantee>

The owner of an object for which privileges are granted is not allowed to be contained in the grantee list. A database user in the grantee list must not denote a member of a user group.

PUBLIC

The listed privileges are revoked for all database users, both for current ones and for any created later.

<cascade_option>

The REVOKE statement can cascade, that is, revoking a privilege from one database user can result in this privilege being revoked from other database users who have received the privilege from the user in question.

Example Example

U1, U2 and U3 are database users.

U1 grants U2 the privilege set P WITH GRANT OPTION. U1 grants U3 the privilege set P' (P'<=P).

If U1 revokes the privilege set P'' (P''<=P) from database user U2, the privilege set (P'*P'') is revoked implicitly from database user U3.

End of the example.

Whenever the SELECT privilege is revoked from the owner of a view table for a column that does not occur in the table_expression of the view definition (CREATE VIEW statement) as a selected column, the column defined by select_column is dropped from the view table. If this view table is used in the FROM clause of another view table, the described procedure is applied recursively to this view table.

If the SELECT privilege is revoked from the owner of a view table for a column or table occurring in the table_expression of the view definition, the view table is dropped, along with all view tables, privileges, and synonyms that are dependent on this view table, if no CASCADE option or the CASCADE option CASCADE is specified. The REVOKE statement will fail if the CASCADE option RESTRICT is specified.

REVOKE <schema_priv_spec>

REVOKE CREATEIN ON is used to grant the user identified by grantee authorization to create database objects in the specified schema. Database objects that the database user specified in grantee has already created in the specified schema are not revoked.

REVOKE DROPIN ON is used to revoke authorization to delete database objects in the specified schema from the user identified by grantee.

REVOKE EXECUTE ON

REVOKE EXECUTE revokes the authorization to execute the database procedure or database function from the database user identified by grantee. The authorization for execution can only be revoked by the owner of the database procedure or database function.

REVOKE SELECT ON

REVOKE SELECT revokes the authorization use the specified sequence from the database user identified by grantee. This REVOKE statement can also cascade.

More Information

Privileges: Overview


DROP TABLE Statement (drop_table_statement) - SAP Documentation

Background documentation DROP TABLE Statement (drop_table_statement)

A DROP TABLE statement (drop_table_statement) deletes a base table.

Structure

Syntax Syntax

  1. <drop_table_statement> ::=
  DROP TABLE <table_name> [<cascade_option>]
End of the code.
Examples

SQL Tutorial, Tables

Explanation

If a schema name is not specified in the table name, the current schema is used. The table name must be the name of an existing base table. The current database user must be the owner of the base table or have the DROPIN privilege for the schema to which the table to be dropped belongs.

All of the metadata and rows in the base table are dropped, along with the view tables, indexes, privileges, synonyms, and referential CONSTRAINT definitions derived from the base table.

If all of the data that is linked to this base table by means of a referential CONSTRAINT definition with a DELETE rule is processed according to the specified DELETE rule, a DELETE statement must first be executed for this base table, followed by the DROP TABLE statement.

<cascade_option>

If no CASCADE option is specified, the DROP TABLE statement is executed independently of the dependencies.

  • RESTRICT: The DROP TABLE statement fails if view tables or synonyms are based on the specified table.

  • CASCADE: The DROP TABLE statement is executed independently of the dependencies.

More Information

Privileges: Overview


DROP DOMAIN Statement (drop_domain_statement) - SAP Documentation

Background documentation DROP DOMAIN Statement (drop_domain_statement)

The DROP DOMAIN statement (drop_domain_statement) deletes the definition of a domain.

Structure

Syntax Syntax

  1. <drop_domain_statement> ::=
  DROP DOMAIN <domain_name>
End of the code.
Examples

SQL Tutorial, Domains

Explanation

The domain name must identify an existing domain. The domain must be contained in the current database user’s schema.

The metadata of the domain is dropped from the catalog. Dropping a domain has no effect on tables in which this domain was used to define columns.


DROP SEQUENCE Statement (drop_sequence_statement) - SAP Documentation

Background documentation DROP SEQUENCE Statement (drop_sequence_statement)

The DROP SEQUENCE statement (drop_sequence_statement) deletes a number generator (sequence).

Structure

Syntax Syntax

  1. <drop_sequence_statement> ::=
  DROP SEQUENCE [<schema_name>.]<sequence_name>
End of the code.
Examples

SQL Tutorial, Number Generators for Tables

Explanation

The current database user must be the owner of the sequence or have the DROPIN privilege for the schema to which the sequence to be dropped is assigned.

The metadata of the sequence is removed from the database catalog.

More Information

Privileges: Overview


DROP SYNONYM statement (drop_synonym_statement) - SAP Documentation

Background documentation DROP SYNONYM statement (drop_synonym_statement)

The DROP SYNONYM statement (drop_synonym_statement) deletes a synonym (alternative name) for a table name.

Structure

Syntax Syntax

  1. <drop_synonym_statement> ::=
  DROP [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>
End of the code.
Explanation

The specified synonym name must identify an existing synonym of the current database user. The name of the current database user only is permitted as the schema name.

If PUBLIC is specified, the synonym identified by the synonym name must be defined as PUBLIC.

The synonym definition is removed from the set of table name synonyms available to the database user.


DROP VIEW Statement (drop_view_statement) - SAP Documentation

Background documentation DROP VIEW Statement (drop_view_statement)

The DROP VIEW statement (drop_view_statement) drops a view table.

Structure

Syntax Syntax

  1. <drop_view_statement> ::=
  DROP VIEW <table_name> [<cascade_option>]
End of the code.
Examples

SQL Tutorial, View Tables

Explanation

The table name must identify an existing view table.

The database user must be the owner of the specified view table or have the DROPIN privilege for the schema to which the view table is assigned.

The metadata of the view table and all dependent synonyms, view tables, and privileges are dropped. The tables on which the view table was created remain unaffected.

<cascade_option>

If no CASCADE option is specified, the view table is dropped together with all the view tables, privileges, and synonyms that are dependent on it.

  • If the CASCADE option RESTRICT is specified, and other view tables or synonyms based on this view table exist, the DROP VIEW statement fails.

  • If the CASCADE option CASCADE is specified, the view table is dropped together with all the view tables, privileges, and synonyms that are dependent on it.

More Information

CREATE VIEW Statement


DROP INDEX Statement (drop_index_statement) - SAP Documentation

Background documentation DROP INDEX Statement (drop_index_statement)

The DROP INDEX statement (drop_index_statement) deletes an index for a base table. The metadata of the index is dropped from the database catalog. The storage space occupied by the index is released.

Structure

Syntax Syntax

  1. <drop_index_statement> ::=
  DROP INDEX <index_name> [ON <table_name>]
End of the code.
Examples

SQL Tutorial, Indexes

Explanation

If a schema name is not specified in the table name, the current schema is used.

The specified index must exist and the specified table name must be the name of an existing base table.

ON <table_name> is not necessary if the index name identifies an index unambiguously.

The current database user must be the owner of the specified table or have the INDEX privilege for it.

More Information

Privileges: Overview


DUPLICATES Clause (duplicates_clause) - SAP Documentation

Background documentation DUPLICATES Clause (duplicates_clause)

The DUPLICATES clause (duplicates_clause) can be used to determine how key collisions are handled.

Structure

Syntax Syntax

  1. <duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES
End of the code.
Explanation

The DUPLICATES clause is used in the SQL statements CREATE TABLE statement and INSERT statement.

CREATE TABLE Statement
DUPLICATES Clause (duplicates_clause)
REJECT DUPLICATES or no DUPLICATES clause | The CREATE TABLE statement fails if key collisions occur.
IGNORE DUPLICATES | Any rows that cause key collisions on insertion are ignored.
UPDATE DUPLICATES | Any rows that cause key collisions on insertion overwrite the rows with which they collide.
INSERT Statement

If there is already a row in the base table with the key of the row to be inserted, the following cases must be distinguished:

DUPLICATES CLAUSE (duplicates_clause)
REJECT DUPLICATES or no DUPLICATES clause | The INSERT statement fails.
IGNORE DUPLICATES | The new row is not inserted and processing of the INSERT statement is continued.
UPDATE DUPLICATES | The existing row is overwritten by the new row and processing of the INSERT statement is continued.

If there is more than one key collision for the same key for an INSERT statement with UPDATE DUPLICATES and QUERY expression specification, it is impossible to predict the content of the respective base table row once the INSERT statement has been completed.

If, for an INSERT statement with IGNORE DUPLICATES and a QUERY expression, more than one row in the result table produces the same base table key, and if this key did not exist before in the base table, it is impossible to predict the row that will be inserted in the table.

If the table name specified in the INSERT statement identifies a table without a user-defined key, the DUPLICATES clause has no effect.


Predicate (predicate) - SAP Documentation

Background documentation Predicate (predicate)

A predicate is specified in a WHERE clause in a statement which is "true", "false", or "undefined".

The result is generated by applying the predicate to a specific row in a result table or to a group of rows in a table that was formed by the GROUP clause.

Structure

Syntax Syntax

  1. <predicate> ::=
  <between_predicate>
| <bool_predicate>
| <comparison_predicate>
| <default_predicate>
| <exists_predicate>
| <in_predicate>
| <join_predicate>
| <like_predicate>
| <null_predicate>
| <quantified_predicate>
| <rowno_predicate>
| <sounds_predicate>
End of the code.
Examples

SQL Tutorial, Conditions: Comparison, AND, OR, BETWEEN, IN, Negative Conditions: NOT, Searching for Character Strings: LIKE, Joins: Information From Several Tables

Explanation

Columns in a table with the same code attribute can be compared. Columns that have different code attributes such as ASCII and UNICODE can be compared. Columns with the code attribute ASCII or UNICODE can be compared with date values, time values or time stamp values.

LOB columns can only be used in the NULL predicate (null_predicate).

More Information

Table Expression


DROP ROLE Statement (drop_role_statement) - SAP Documentation

Background documentation DROP ROLE Statement (drop_role_statement)

The DROP ROLE statement (drop_role_statement) deletes a role.

Structure

Syntax Syntax

  1. <drop_role_statement> ::=
  DROP ROLE <role_name>
End of the code.
Examples

SQL Tutorial, Roles

Explanation

The current database user must be the owner of the role. The metadata of the role to be dropped is dropped from the database catalog.


DEFAULT Predicate (default_predicate) - SAP Documentation

Background documentation DEFAULT Predicate (default_predicate)

By specifying a DEFAULT predicate (default_predicate), you can check whether a column contains the DEFAULT value defined for this column.

Structure

Syntax Syntax

  1. <default_predicate> ::=
  <column_spec> <comp_op> DEFAULT

<comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>
End of the code.
Explanation

A DEFAULT specification must be made for the specified column. This can be done in the following SQL statements:

  • CREATE TABLE Statement

  • ALTER TABLE Statement

If the column contains the NULL value, <column_spec><comp_op> DEFAULT is undefined.

The rules for comparing values or value lists, as defined for comparison predicates, apply here.


DISTINCT Specification (distinct_spec) - SAP Documentation

Background documentation DISTINCT Specification (distinct_spec)

The DISTINCT specification (distinct_spec) is specified in a QUERY specification (QUERY expression) or in a SINGLE SELECT statement to remove duplicate rows.

Structure

Syntax Syntax

  1. <distinct_spec> ::=
  DISTINCT
| ALL
End of the code.
Examples

SQL Tutorial, Selecting and Arranging Rows

Explanation

A row is a duplicate of another row if both have identical values in each column. NULL values are assumed to be identical, as are special NULL values.

If no DISTINCT specification is specified, no duplicate rows are removed from the result table.

  • DISTINCT: All duplicate rows are removed from the result table.

  • ALL: No duplicate rows are removed from the result table.


DROP TRIGGER Statement (drop_trigger_statement) - SAP Documentation

Background documentation DROP TRIGGER Statement (drop_trigger_statement)

The DROP TRIGGER statement (drop_trigger_statement) deletes a trigger from a table.

Structure

Syntax Syntax

  1. <drop_trigger_statement> ::=
  DROP TRIGGER <trigger_name> OF <table_name>
End of the code.
Examples

SQL Tutorial, Database Triggers

Explanation

If a schema is not specified in the table name, the current schema is accepted implicitly.

The table name must identify an existing table in the schema. The current database user must be the owner of the specified table.

The specified trigger name must identify an existing trigger of the table.

The metadata of the trigger is dropped.


DROP DBPROC[EDURE] Statement (drop_dbproc_statement) - SAP Documentation

Background documentation DROP DBPROC[EDURE] Statement (drop_dbproc_statement)

The DROP DBPROC[EDURE] statement (drop_dbproc_statement) deletes a database procedure.

Structure

Syntax Syntax

  1. <drop_dbproc_statement> ::=
  DROP DBPROC[EDURE] <dbproc_name>
End of the code.
Examples

SQL Tutorial, Database Procedures

Explanation

If no schema is specified in the database procedure name, the current schema is assumed implicitly.

The current database user must be the owner of the database procedure or have the DROPIN privilege for the schema to which the database procedure is assigned.

The metadata for the database procedure is deleted.

More Information

Privileges: Overview


DROP Definition (drop_definition) - SAP Documentation

Background documentation DROP Definition (drop_definition)

You can define additional table properties by specifying a DROP definition (drop_definition) in the ALTER TABLE statement.

Structure

Syntax Syntax

  1. <drop_definition> ::=
  DROP <column_name>,... [<cascade_option>] [RELEASE SPACE]
| DROP (<column_name>,...) [<cascade_option>] [RELEASE SPACE]
| DROP CONSTRAINT <constraint_name>
| DROP FOREIGN KEY <referential_constraint_name>
| DROP PRIMARY KEY
End of the code.
Examples

SQL Tutorial, Tables, Constraints, Foreign Key Dependencies Between Tables, Primary Key

DROP <column_name>

You can delete columns using DROP <column_name> or DROP (<column_name>,...).

Each column name must be a column of the table identified by the ALTER TABLE statement. The column must be neither a key column nor a foreign key column of a referential CONSTRAINT definition of the table.

The columns are marked as deleted in the metadata of the table. A DROP definition does not automatically reduce the storage requirements of the underlying table. RELEASE SPACE forces the column values of the deleted columns to be deleted in every row in the table. This may take some time, particularly with longer tables, since extensive copy operations are carried out.

Any privileges and comments for the columns to be deleted are also deleted.

If one of the columns to be deleted occurs as a selected column in a view definition, the specified column in the view table is deleted.

If this view table is used in the FROM clause of another view table, the described procedure is applied recursively to this view table.

Existing indexes referring to columns to be deleted are also deleted. The storage space for the deleted indexes is made available.

All CONSTRAINT definitions that contain one of the deleted columns are deleted.

<cascade_option>

  • If one of the columns to be deleted occurs in the QUERY specification of a view definition, and if no CASCADE option or the CASCADE option CASCADE is specified in the DROP definition, the view definition is deleted with all connected view tables, privileges and synonyms.

  • If one of the columns to be deleted occurs in the QUERY specification of a view definition, and if the CASCADE condition RESTRICT is specified in the DROP definition, the ALTER TABLE statement fails.

DROP CONSTRAINT <constraint_name>

You can delete a constraint using DROP CONSTRAINT <constraint_name>.

The constraint name must identify a CONSTRAINT definition in the table. This definition is then deleted from the metadata of the table.

DROP FOREIGN KEY <referential_constraint_name>

You can delete a foreign key using DROP FOREIGN KEY <referential_constraint_name>.

If DROP FOREIGN KEY was specified, the referential CONSTRAINT definition identified by the name of the referential constraint (referential_constraint_name) is deleted.

DROP PRIMARY KEY

You can delete a key using DROP PRIMARY KEY.

  • The table must have a key defined by the user.

  • The table must not contain more than 1023 columns.

  • The maximum permissible length of a row must not exceed 8088 bytes.

  • The key columns must not be referenced columns (referenced_column) of a referential CONSTRAINT definition.

The key is replaced by the key column SYSKEY generated by the database system. This may take some time, particularly with longer tables, since extensive copy operations are carried out.


Domain Name (domain_name) - SAP Documentation

Background documentation Domain Name (domain_name)

A domain name (domain_name) identifies a domain in a table column.

Structure

Syntax Syntax

  1. <domain_name> ::=
  [<schema_name>.]<identifier>
End of the code.
Examples

SQL Tutorial, Domains

Explanation

Neither the schema name nor the identifier can be longer than 32 characters.

The name of the current database user only is permitted as the schema name.

More Information

CREATE DOMAIN Statement

DROP DOMAIN Statement


Character Set (token) - SAP Documentation

Background documentation Character Set (token)

A character set (token) comprises a series of characters that are combined to form a lexical unit. A distinction is made between regular (regular_token) and delimiter (delimiter_token) tokens.

Structure

Syntax Syntax

  1. <token> ::=
  <regular_token>
| <delimiter_token>

<regular_token> ::=
  <literal>
| <keyword>
| <identifier>
| <parameter_name>

<delimiter_token> ::=
  <vertical_slash>
| , | . | + | - | * | / | < | > | <> | != | = | <= | >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>

<vertical_slash> ::=
  |
End of the code.

Example Example

SELECT * FROM reservation

ALTER TABLE reservation DROP FOREIGN KEY customer_reservation

'Reisen10'

End of the example.
Explanation

Each token can be followed by any number of blanks. Each regular token (regular_token) must be followed by a delimiter token (delimiter_token) or a blank.

Quotation marks within a special identifier are represented by two consecutive quotation marks.

More Information

Identifier (identifier)


Column Specification (column_spec) - SAP Documentation

Background documentation Column Specification (column_spec)

A column specification (column_spec) specifies a column in a table.

Structure

Syntax Syntax

  1. <column_spec> ::=
  <column_name>
| <table_name>.<column_name>
| <reference_name>.<column_name>
| <result_table_name>.<column_name>
End of the code.
Explanation

For all names consisting of several identifiers that are separated by a period ("."), any number of blanks can be specified before and after the period.

More Information

A column specification is used in the following SQL syntax elements:

Expression (expression)

Boolean Predicate (bool_predicate)

DEFAULT Predicate (default_predicate)


Parameter Specification (parameter_spec) - SAP Documentation

Background documentation Parameter Specification (parameter_spec)

A parameter specification (parameter_spec) identifies the parameter name and, if necessary, the indicator name that are necessary to specify a parameter.

Structure

Syntax Syntax

  1. <parameter_spec> ::=
  <parameter_name> [<indicator_name>]
End of the code.
Explanation

The indicator must be declared as a variable in the embedding programming language. It must be possible to assign at least four-digit integers to this variable.

A distinction is made between output parameters and input parameters:

  • Output parameters: Parameters that are to receive values retrieved from the database system.

    - An indicator with the value Null indicates that the transferred value is not a NULL value and that the parameter value is the transferred value.

    - An indicator with the value –1 indicates that the parameter value is the NULL value.

    - Alphanumeric output parameters: An indicator with a value greater than 0 indicates that the assigned character string was too long and has been truncated. The indicator shows the length of the original output column from the character string.

    - Numeric output parameters: An indicator with a value greater than 0 indicates that the assigned value has too many significant digits and decimal places have been truncated. The indicator indicates the number of digits in the original value.

    - For numeric output parameters, an indicator with the value –2 indicates that the parameter value is the special NULL value.

  • Input parameters: Parameters containing values that are to be transferred to the database system.

    - An indicator with a value greater than or equal to 0 indicates that the specified parameter value is the value that is to be transferred to the database system.

    - An indicator with a value less than 0 indicates that the specified parameter value is the NULL value.


Statistics - SAP Documentation

Background documentation Statistics

The UPDATE STATISTICS statement defines the storage requirements of tables and indexes as well as the value distribution of columns, and stores this information in the database catalog. The SQL Optimizer uses this information to define the best strategy for executing an SQL statement. The MONITOR statement can be used to initialize counters for monitoring the database.

Structure

SQL Statements for Statistics Management

UPDATE STATISTICS Statement

MONITOR Statement

More Information

Database Administration, SQL Optimizer

Definitions of the System Tables

SQL Statements: Overview

SQL Reference Manual


UPDATE STATISTICS Statement (update_statistics_statement) - SAP Documentation

Background documentation UPDATE STATISTICS Statement (update_statistics_statement)

The UPDATE STATISTICS statement (update_statistics_statement) defines the storage requirements of tables and indexes as well as the value distribution of columns, and stores this information in the database catalog.

Structure

Syntax Syntax

  1. <update_statistics_statement> ::=
  UPDATE STAT[ISTICS] COLUMN <table_name>.<column_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] COLUMN (<column_name>,...) FOR <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] COLUMN (*) FOR <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] [<schema_name>.][<identifier>]*
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] AS PER SYSTEM TABLE
    [ESTIMATE [<sample_definition>]
End of the code.
<table_name>

If a table name is specified, the table must be a base table and must not be a temporary table. The current database user must have a privilege for the table.

<column_name>

If a column name is specified, this column must exist in specified table.

If * is specified, all columns in the table are used.

<identifier>*

Specifying <identifier>* has the same effect as specifying the UPDATE STATISTICS statement for all base tables whose table name begins with the identifier and for which the current database user has a privilege.

UPDATE STATISTICS *

The database system administrator can use UPDATE STATISTICS * to execute the UPDATE STATISTICS statement for all base tables, even if the administrator has not been assigned a privilege for these tables.

ESTIMATE

  • If ESTIMATE and a sample_definition are specified, the database system estimates the statistical values by selecting data at random. The number of random selects can be given as a number of rows or as a percentage. The runtime of the UPDATE STATISTICS statement can be considerably reduced by specifying ESTIMATE. In most cases, the precision of the statistical values determined is sufficient.

  • If ESTIMATE is specified without sample_definition, the database system estimates the statistical values by selecting data at random. The number of random selects was defined with the CREATE TABLE or ALTER TABLE statement by means of a sample definition for the specified table. The runtime of the UPDATE STATISTICS statement can be considerably reduced by specifying ESTIMATE. In most cases, the precision of the statistical values determined is sufficient.

  • If ESTIMATE is not specified, the database system determines exact statistical values by considering the complete data of the table. For large tables, the runtime can be considerably long.

UPDATE STATISTICS AS PER SYSTEM TABLE

In the <DATABASE_SYSTEM_ADMINISTRATOR>.SYSUPDSTATWANTED system table, the database system enters the table (columns) for which an UPDATE STATISTICS run appears expedient. The SYSUPDSTATWANTED system table can be updated directly by the database system administrator or database administrators or this system table can be updated by kernel automatism or database procedure SYSCHECKSTATISTICS. However, a database administrator can only insert entries that refer to tables owned by this database administrator.

Only the database system administrator is allowed to use the SQL statement UPDATE STATISTICS AS PER SYSTEM TABLE. In this case, an UPDATE STATISTICS is triggered for all table (columns) contained in the SYSUPDSTATWANTED system table. If the support database parameter UpdateStatParallelServerTask is set to a value >= 0, the system attempts to execute the statistics runs in parallel. Subsequently, the entries in system table SYSUPDSTATWANTED are deleted.

Sample Size 0

You can exclude individual tables from an UPDATE STATISTICS run by setting a sample size of 0 (SAMPLE definition) for these tables with an ALTER TABLE statement.

More Information

EXPLAIN Statement (explain_statement)

Definition of System Tables, SYSUPDSTATWANTED, SYSCHECKSTATISTICSLOG

Database Administration, SQL Optimizer, SQL Optimizer Statistics, Analyzing Search Strategies Using the EXPLAIN Statement

Database Administration in CCMS, SQL Optimizer in CCMS, Scheduling Updates of the SQL Optimizer Statistics

SAP Note 927882


CREATE VIEW Statement (create_view_statement) - SAP Documentation

Background documentation CREATE VIEW Statement (create_view_statement)

The CREATE VIEW statement (create_view_statement) defines a view table.

View table

A view table is a view of an existing table: Parts of the table are hidden and other parts remain visible. You can use VIEW tables to truncate longer SELECT statements. You can use view tables to hide unimportant or confidential data.

A view table never actually exists physically but is formed from the rows of the underlying base table(s) when the view table is specified in an SQL statement.

Structure

Syntax Syntax

  1. <create_view_statement> ::=
  CREATE [OR REPLACE] VIEW <table_name> [(<alias_name>,...)]
    AS <query_expression> [WITH CHECK OPTION]
End of the code.
Examples

SQL Tutorial, View Tables

Concepts of the Database System, Objects in the Schema HOTEL

Explanation

If no schema is specified in the view table name (table_name), the current schema is assumed implicitly. The view table name must not be identical with the name of a table already existing in the schema.

When the CREATE VIEW statement is executed, metadata describing the view table is stored in the database catalog.

The view table is always identical to the table you would obtain as the result of the QUERY expression (query_expression). The QUERY expression must not contain a parameter specification or a TOP syntax element. The QUERY expression must not reference a temporary table or a results table name.

The table expressions of the QUERY specification in the QUERY expression of the CREATE VIEW statement must not contain a QUERY expression.

If a column selected by the QUERY expression is of the data type LOB, the FROM clause must contain precisely one table name with precisely one underlying base table.

Join View Table

A join view table is a view table where the FROM clause contains more than one table or one join table.

Complex View Table

A view table is a complex view table if it satisfies one of the following conditions:

  • The definition of the view table contains DISTINCT, GROUP BY or HAVING.

  • The CREATE VIEW statement contains EXCEPT, INTERSECT or UNION.

  • The search condition contained in the QUERY expression of the CREATE VIEW statement contains a subquery.

  • The CREATE VIEW statement contains an outer join, that is an OUTER JOIN indicator (outer_join_indicator) in a JOIN predicate of the search condition.

Updateable View Table

A view table is deemed updateable if it is not a complex view table and if it is not based on a complex view table.

Updateable Join View Table

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.

An updateable join view table is an updateable view table for which the following conditions must also be fulfilled:

  • Each base table on which the view table is based must have a key defined by the user.

  • Referential CONSTRAINT definitions must exist between the base tables on which the view table is based.

  • Exactly one of the underlying base tables for the view table must exist that is not a referenced table (referenced_table) of a referential CONSTRAINT definition for a different base table of the view table. This table must be the key table of the view table.

  • For each underlying base table of the view table, there must be a sequence of referential CONSTRAINT definitions enabling the respective base table to be accessed from the key table.

  • The referential CONSTRAINT definitions must be reflected as a JOIN predicate in the search condition of the CREATE VIEW statement. In other words, the condition "key column = foreign key column" must exist for every column in each referential CONSTRAINT definition.

  • The CREATE VIEW statement must contain either the primary key or foreign key column from each referential CONSTRAINT definition as the selected column, but cannot contain both.

  • The view table must be defined with WITH CHECK OPTION.

For further explanations, see Updateable Join View Table.

Privileges

The user must have the SELECT privilege for all columns occurring in the view definition. The database user is the owner of the view table and has the SELECT privilege for this at the very least. The user may assign the SELECT privilege to others for any columns in the view table derived from columns for which he or she is authorized to do this.

The database user only has the INSERT, UPDATE and DELETE privileges if he or she has the relevant privileges for the underlying tables of the view table and join view table and if the view table and the join view table are updateable. The user may only grant these privileges to others if he or she is authorized to allocate the relevant privilege for all of the underlying tables of the view table and join view table.

For further explanations, see INSERT/UPDATE/DELETE Privilege for Owners of View Tables and Privilege Specification (priv_spec).

OR REPLACE

If OR REPLACE is not specified, the table_name cannot be identical to the name of an existing view table.

If OR REPLACE is specified, however, the table name may be identical to the name of an existing view table. In this case, the new definition for the existing view table replaces the existing definition. The database system then attempts to adapt privileges granted for the existing view table to the new view definition. The privileges for the view table usually remain unchanged. Privileges are only removed implicitly if conflicts occur that cannot be resolved by the database system. If there are major discrepancies between the two view definitions, the CREATE VIEW statement can fail in the following case: The CREATE VIEW statement for the view table that is based on the existing view table can no longer be executed for the new view definition without an error occurring.

Alias Names (alias_name)

The column names of the view table must be unique. If this is not the case in the results table generated by the QUERY expression, alias names must be specified that define the column names in the view table. The number of alias names must be equal to the number of columns in the results table generated by the QUERY expression. If no alias names are specified, the column names of the results table generated by the QUERY expression are copied to the view table. The column descriptions for the view table are taken from the corresponding columns in the QUERY expression. The FROM clause of the QUERY expression can contain one or more tables.

WITH CHECK OPTION

If the CREATE VIEW statement contains a WITH CHECK OPTION, the owner of the view table must have been granted the INSERT, UPDATE, or DELETE privilege for the view table.

If the WITH CHECK OPTION is specified and an INSERT or UPDATE statement is issued for the view table, rows can only be created that can subsequently be selected via the view table. In other words, the search condition for the view table must be fulfilled for the resulting rows.

The CHECK OPTION is inherited. This means that, if a view table V has been defined with the WITH CHECK OPTION and V occurs in the FROM clause of an updateable view table V1, only those rows that can be selected using V may be inserted or altered using V1.


RENAME COLUMN Statement (rename_column_statement) - SAP Documentation

Background documentation RENAME COLUMN Statement (rename_column_statement)

A RENAME COLUMN statement (rename_column_statement) changes the name of a table column.

Structure

Syntax Syntax

  1. <rename_column_statement> ::=
  RENAME COLUMN <table_name>.<column_name> TO <column_name>
End of the code.
Explanation

The specified table must be a base or view table.

If a schema is not specified in the table name, the current schema is accepted implicitly.

The specified table column is given a new name. If the column name of a view table (that was defined with this table) was derived from the column name of the base table, the old column name in the view table is replaced by the new name. If the new column name is identical with an existing column name of the view table, the RENAME COLUMN statement fails.


Comparison Predicate (comparison_predicate) - SAP Documentation

Background documentation Comparison Predicate (comparison_predicate)

A comparison predicate (comparison_predicate) is a predicate that specifies a comparison between two values or lists of values.

Structure

Syntax Syntax

  1. <comparison_predicate> ::=
  <expression> <comp_op> <expression>
| <expression> <comp_op> <subquery>
| <expression_list> <equal_or_not> (<expression_list>)
| <expression_list> <equal_or_not> <subquery>
End of the code.

The following operators are available for comparing two values:

Syntax Syntax

  1. <comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>
End of the code.

Two value lists can only be compared with the following operators:

Syntax Syntax

  1. <equal_or_not> ::=
  <>
| =
| ~= <!  for computers with ASCII code  !>
End of the code.
Examples

SQL Tutorial, Conditions: Comparison, AND, OR, BETWEEN, IN, Subquery: Inner Queries

Explanation

The subquery must supply a result table that contains the same number of columns as the number of values on the left of the operator. The result table may contain no more than one row.

The list of values (expression_list) specified to the right of the equal_or_not operator must contain the same number of values as specified in the value list in front of the equal_or_not operator.

The JOIN predicate is a special case.

Comparing Two Values

Let x be the result of the first expression and y the result of the second expression or of the subquery.

  • The values x and y must be comparable with one another.

  • Numbers are compared to one another according to their algebraic values.

  • Character strings are compared character by character.

    Any blanks (code attribute ASCII, UNICODE) or binary zeros (code attribute BYTE) at the end of one or both of the character strings are removed.

    If the character strings have the different code attributes ASCII and UNICODE, the character string with the code attribute ASCII is implicitly converted into a character string with the code attribute UNICODE. Two character strings are identical if they have the same characters in all positions.

    The relationship between two character strings that are not identical is defined by the first character that differs in a comparison from left to right. This comparison is performed in accordance with the code attribute selected for this column (ASCII, UNICODE, or BYTE).

  • If x or y are NULL values, or if the result of the subquery is empty, (x <comp_op> y) is not defined.

Comparing Two Value Lists

If a value list (expression_list) is specified on the left of the comparison operator equal_or_not, let x be the value list that comprises the results of the values x1, x2, ..., xn in this list. Let y be the result of the subquery or the result of the second value list. A value list y consists of the results of the values y1, y2, ..., yn.

  • A value xm must be comparable with the associated value ym.

  • x=y is true if for xm=ym for all m=1, ..., n.

  • x<>y is true if at least xm<>ym for at least one m.

  • (x <equal_or_not> y) is undefined if there is no m for which (xm <equal_or_not> ym) is false and there is at least one m for which (xm <equal_or_not> ym) is undefined.

  • If one xm or one ym is a NULL value, or if the result of the subquery is empty, (x <equal_or_not> y) is undefined.

More Information

Quantified Predicate

DEFAULT Predicate


Trigger Name (trigger_name) - SAP Documentation

Background documentation Trigger Name (trigger_name)

A trigger_name identifies a trigger that is defined for a table.

Structure

Syntax Syntax

  1. <trigger_name> ::=
  <identifier>
End of the code.

A trigger name may not exceed 32 characters in length.

Examples

SQL Tutorial, Database Triggers

Explanation

Triggers are special database procedures that run implicitly after a data manipulation statement has been executed on a base table (or a view table based on this base table). A system trigger is a special database procedure performed implicitly during a restart. The conditions under which a trigger is to be executed can be restricted further. A trigger can call further triggers implicitly.

The trigger is executed for each row to which the SQL statement refers. The trigger can access both the old values (values before update or deletion) and the new values (values after update or insertion) in this row.

Triggers can be used to check complicated integrity rules, initiate derived database modifications for the row in question, or implement complex access protection rules.

The database system provides a language (special SQL syntax that has been extended to include variables, control structures, and troubleshooting measures) that allows an SQL access layer to be formulated on the server side. This special SQL syntax can be used to define triggers.

More Information

Creating and dropping a trigger: CREATE / DROP TRIGGER Statement

Creating and dropping a system trigger: CREATE / DROP SYSTEM TRIGGER Statement

Name of a Database Procedure

Ensuring Data Integrity


Table Name (table_name) - SAP Documentation

Background documentation Table Name (table_name)

A table_name identifies a table.

Structure

Syntax Syntax

  1. <table_name> ::=
  [<schema_name>.]<identifier>
End of the code.

Neither the schema name nor the identifier can be longer than 32 characters.

Examples

SQL Tutorial, Tables

Explanation

Tables and view tables are identified by table names. A table name consists of a schema_name and an identifier. All table identifiers in one schema must be different from one another.

The database system uses certain table names for internal purposes. The identifiers of these tables begin with SYS. To avoid naming conflicts, therefore, you should not use table names that start with SYS.

More Information

CREATE TABLE Statement

CREATE VIEW Statement

CREATE SYNONYM Statement

CREATE SCHEMA Statement

and other SQL statements for Data Definition


INNER TRANSACTION Statement (inner_transaction_statement) - SAP Documentation

Background documentation INNER TRANSACTION Statement (inner_transaction_statement)

The INNER TRANSACTION statement (inner_transaction_statement) enables you to embed a transaction in another transaction. The embedded transaction can be completed at any time; the surrounding transaction is continued irrespectively.

Structure

Syntax Syntax

  1. <inner_transaction_statement> ::=
  INNER TRANSACTION BEGIN
| INNER TRANSACTION COMMIT
| INNER TRANSACTION ROLLBACK
End of the code.
INNER TRANSACTION BEGIN

A transaction is started without ending the already existing transaction. Any sequence of SQL statements can then follow. The sequence of SQL statements my not contain any additional INNER TRANSACTION statements. At any one time, there may be no more than one open inner transaction.

After ending the inner transaction, the existing transaction is continued unchanged.

INNER TRANSACTION COMMIT

If the inner transaction is ended with COMMIT, the executed changes remain even if the surrounding transaction is canceled. The prerequisite for this is that an open inner transaction exists.

INNER TRANSACTION ROLLBACK

If an inner transaction is ended with ROLLBACK, then all database changes made since INNER TRANSACTION BEGIN are reversed. The prerequisite for this is that an open inner transaction exists.

More information

Lock requests of the inner transaction can collide with held columns of the surrounding transaction.

If the surrounding transaction is ended and there is still an open inner transaction, then this inner transaction is ended with COMMIT or ROLLBACK, just like the surrounding transaction.

The INNER TRANSACTION statement is especially suitable for applications that want to write information permanently to the database, irrespective of the conclusion of a transaction, for example, for logs.

More Information

Transactions


DEFAULT Specification (default_spec) - SAP Documentation

Background documentation DEFAULT Specification (default_spec)

A DEFAULT specification (default_spec) is formed by specifying the keyword DEFAULT and a DEFAULT value. The maximum length of a default value is 254 characters.

Structure

Syntax Syntax

  1. <default_spec> ::=
  DEFAULT <literal>
| DEFAULT NULL
| DEFAULT USER
| DEFAULT USERGROUP
| DEFAULT SYSDBA
| DEFAULT DATE
| DEFAULT TIME
| DEFAULT TIMESTAMP
| DEFAULT UTCDATE
| DEFAULT UTCDIFF
| DEFAULT TIMEZONE
| DEFAULT TRUE
| DEFAULT FALSE
| DEFAULT TRANSACTION
| DEFAULT STAMP
| DEFAULT SERIAL[<unsigned_integer>]
End of the code.
Examples

SQL Tutorial, Number Generator for a Single Column of a Table

Explanation

If a DEFAULT specification has been made for a column, the default value (<literal>, NULL, USER,...) must be a value that can be inserted in the column.

DEFAULT Specification (default_spec)

DEFAULT Specification

Explanation

DEFAULT <literal>

The literal must be comparable with the data type of the column.

DEFAULT USER

Returns the name of the current database user and can only be specified for columns that have the data type [VAR]CHAR(n) or CHAR(n) (n >= 32)

DEFAULT USERGROUP

Returns the user group name for members of a user group, or the user name for database users that do not belong to a user group. This DEFAULT specification can only be specified for columns of the data type [VAR]CHAR(n) (n>=32).

DEFAULT SYSDBA

Returns the name of the database administrator and can only be specified for columns of the data type [VAR]CHAR(n) (n>=32).

DEFAULT DATE

Returns the current date and can only be specified for columns of the data type DATE.

DEFAULT TIME

Returns the current time and can only be specified for columns of the data type TIME.

DEFAULT TIMESTAMP

Returns the current time stamp and can only be specified for columns of the data type TIMESTAMP.

DEFAULT UTCDATE

Returns the current UTC time stamp (Greenwich Mean Time) and can only be specified for columns that have the data type TIMESTAMP.

DEFAULT UTCDIFF

Returns the time difference (in hours) between your local time and UTC time and can only be specified for columns that have the data type FLOAT(p) (p >= 4) or FIXED(p,s) (s >= 2, p >= s+2).

DEFAULT TIMEZONE

Returns the time difference in the format hhmmss between your local time and UTC time and can only be specified for columns of the data type FLOAT(p) (p>=6) or FIXED(p,s) (s>=0, p>=s+6).

DEFAULT TRUE/DEFAULT FALSE

Can only be specified for columns of the data type BOOLEAN.

DEFAULT TRANSACTION

Returns the identification of the current transaction and can only be specified for columns of the data type CHAR(n) BYTE (n>=8).

DEFAULT STAMP

Returns a value of eight characters in length that is unique within the database system and can only be specified for columns of the data type CHAR(n) BYTE (n>=8).

If a table is defined without a key column, the database system creates a key column SYSKEY CHAR(8) BYTE implicitly. The key values in the SYSKEY column are only unique within a table. This means the SYSKEY column in two different tables may contain the same values. If a unique key is desired across the entire database system, a key column can be defined with the DEFAULT specification STAMP.

DEFAULT SERIAL [(<unsigned_integer>)]

Delivers a number generator for positive integers and can only be specified for columns that have the data type INTEGER, SMALLINT, and FIXED without decimal places (see below: Number Generator)

The first value generated by the generator can be defined by specifying an unsigned integer (unsigned_integer) (must be greater than 0). If this definition is missing, 1 is defined as the first value.

If the value 0 is inserted in this column by an INSERT statement, the current number generator value is supplied and not the value 0.

Each table may not contain more than one column with the DEFAULT specification DEFAULT SERIAL.
Number Generator

Specifying the DEFAULT specification DEFAULT SERIAL(n) or the data type SERIAL(n) causes a number generator to be generated that creates positive whole numbers implicitly from 1 or from a prespecified value starting with n.

The data type SERIAL(n) can be used as a DEFAULT specification for columns which can only contain fixed point numbers or decimal places, as SERIAL(n) is mapped to FIXED(10) DEFAULT SERIAL(n).

The maximum number generator value generated is (10**m)-1 if the default specification DEFAULT SERIAL is defined for a column of the data type FIXED(m).

SERIAL columns can only be assigned a value when a row is inserted. The values of a SERIAL column cannot be changed with an UPDATE statement. A SERIAL column, therefore, can be used to determine the insertion sequence and identify a row in a table uniquely.

More Information

DEFAULT Predicate (default_predicate)


Privileges: Overview - SAP Documentation

Background documentation Privileges: Overview

There are a number of privileges that can be used to assign the authorizations for data manipulation or data queries for database objects to a database user.

Privilege | Object | Privilege Allows Database Users to
ALTER | Table | Use the ALTER TABLE statement More information: Privilege Specification (priv_spec)
CREATEIN | Schema | Create database objects in the specified schema More information: Privilege Specification for a Schema (schema_priv_spec)
DELETE | Table | Delete rows in the specified tables More information: Privilege Specification (priv_spec)
DROPIN | Schema | Delete database objects in the specified schema More information: Privilege Specification for a Schema (schema_priv_spec)
EXECUTE | Database procedure Database function | Execute the database procedure or the database function More information: GRANT Statement (grant_statement)
INDEX | Table | Use the CREATE INDEX, ALTER INDEX and DROP INDEX statements More information: Privilege Specification (priv_spec)
INSERT | Table | Insert rows in the specified tables More information: Privilege Specification (priv_spec)
REFERENCES | Table | Specify the specified table as a referenced table in a column definition or referential CONSTRAINT definition More information: Privilege Specification (priv_spec)
SELECT | Sequence | Use the specified sequences More information: GRANT Statement (grant_statement)
SELECT | Table or parts of a table | Select entire rows or parts of rows in the specified tables More information: Privilege Specification (priv_spec)
SELUPD | Table or parts of a table | The SELECT and UPDATE privileges are granted. More information: Privilege Specification (priv_spec)
UPDATE | Table or parts of a table | Change entire rows or parts of rows in the specified tables More information: Privilege Specification (priv_spec)

More Information

INSERT/UPDATE/DELETE Privilege for Owners of View Tables

GRANT Statement

REVOKE Statement

Definitions of the System Tables, DOMAIN.ROLEPRIVILEGES, DOMAIN.SCHEMAPRIVILEGES, DOMAIN.SEQUENCEPRIVILEGES, DOMAIN.TABLEPRIVILEGES

SQL Reference Manual


DECLARE CURSOR Statement (declare_cursor_statement) - SAP Documentation

Background documentation DECLARE CURSOR Statement (declare_cursor_statement)

A DECLARE CURSOR statement (declare_cursor_statement) defines and generates a named results table with the name result_table_name.

Structure

Syntax Syntax

  1. <declare_cursor_statement> ::=
  DECLARE <result_table_name> CURSOR FOR <select_statement>
End of the code.
Explanation

Existing results tables are implicitly deleted when a results table is generated with the same name.

All results tables generated within the current transaction are deleted implicitly at the end of the transaction using the ROLLBACK statement.

All results tables are deleted implicitly at the end of the session using the RELEASE statement. A CLOSE statement can be used to delete them explicitly first.

If the name of a results table is identical to that of a base table, view table, or a synonym, these tables cannot be accessed as long as the results table exists. If an INSERT, UPDATE, DELETE or LOCK statement is carried out for a results table whose name is identical with the name of a base table, view table or synonym, the corresponding non-results table is accessed.

Whenever a results table is processed, the cursor position can be before the first row, on a row, after the last row or between two rows. After generating the results table, the cursor is positioned before the first row of the results table.

The search strategy used determines whether the system searches for all the rows in the results table and generates the results table physically, or – in the case of a FETCH statement – searches for the next relevant row in the result table but does not store it physically.

If the results table is empty, you will receive a message to this effect.

More Information

QUERY Statement


SET Statement (set_statement) - SAP Documentation

Background documentation SET Statement (set_statement)

The SET statement (set_statement) changes the properties of a database session.

Structure

Syntax Syntax

  1. <set_statement> ::=
  SET ROLE ALL [EXCEPT <role_name>,...]
| SET ROLE NONE
| SET ROLE <role_name>,... [IDENTIFIED BY <password>]
| SET ISOLATION LEVEL <unsigned_integer>
| SET CURRENT_SCHEMA = <schema_name>
End of the code.
Examples

SQL Tutorial, Roles, Schemas

SET ROLE

DEFAULT ROLE in the ALTER USER statement or ALTER USERGROUP statement specifies which of the roles assigned to the current database user or user group are active in the user session or group member session. If a role is active, the current database user has all the privileges that are included in the role.

If the ALTER USER statement or ALTER USERGROUP statement assigns a role to the current database user that is activated automatically when a session is opened, then this role is deactivated when the SET statement is executed if it has not been identified by the SET ROLE specification in the SET statement.

  • ALL: All roles assigned to the current database user are active. EXCEPT can be used to exclude specified roles from activation.

  • NONE: None of the roles is active.

  • Role name specified: The roles specified here must exist and be assigned to the current database user. If a password exists for the role, it must be defined in the SET statement except for the owner of the role. The role identified with role name is activated.

SET ISOLATION LEVEL

Specifying an isolation level changes the lock behavior for all subsequent SQL statements of the current database session. The isolation level is set using an integer without a plus/minus sign after the keywords ISOLATION LEVEL. The following values are permitted: 0, 1, 2, 3, 10, 15, 20 and 30.

SET CURRENT_SCHEMA

Specifying a schema name defines the specified schema as the current schema for the database session. This means that if a schema name is not specified in subsequent SQL statements, this schema is assumed implicitly. The schema name must identify an existing schema.

More Information

Concepts of the Database System, Isolation Level


RENAME VIEW Statement (rename_view_statement) - SAP Documentation

Background documentation RENAME VIEW Statement (rename_view_statement)

The RENAME VIEW statement (rename_view_statement) changes the name of a view table.

Structure

Syntax Syntax

  1. <rename_view_statement> ::=
  RENAME VIEW <old_table_name> TO <new_table_name>

<old_table_name> ::=
  <table_name>

<new_table_name> ::=
  <table_name>
End of the code.
Explanation

If a schema name is not specified in the table name, the current schema is used. The table old_table_name must be a view table. The current database user must be the owner of the view table and must have the CREATEIN privilege for the schema identified by new_table_name.

The new table name must not already be assigned to a base or view table or a private synonym in the schema identified by new_table_name.

The CREATE VIEW statement of the old_table_name view table is adapted to the new name. The result of this adaptation can be retrieved from the table DOMAIN.VIEWDEFS.

The definitions of view tables based on the old_table_name are adapted to the new name.

More Information

Privileges: Overview


Name of a Database Procedure (dbproc_name) - SAP Documentation

Background documentation Name of a Database Procedure (dbproc_name)

The name of a database procedure (dbproc_name) designates a database procedure.

Structure

Syntax Syntax

  1. <dbproc_name> ::=
  [<schema_name>.]<identifier>
End of the code.

You cannot specify TEMP as the schema in a database procedure.

Neither the schema name nor the identifier can be longer than 32 characters.

Examples

SQL Tutorial, Database Procedures

Explanation

In a well-structured database application, SQL statements are typically not distributed over the entire application but concentrated in a single access layer instead. This access layer has a procedural interface to the rest of the application at which operations for application objects are made available in form of abstract data types.

In client/server configurations, the client and server interact when an SQL statement is executed in the access layer. The number of these interactions can be reduced considerably by transferring the SQL access layer from the client to the server.

To this end, the database system provides a language (special SQL syntax that has been extended to include variables, control structures, and troubleshooting measures) that allows an SQL access layer to be formulated on the server side. This special SQL syntax can be used to define database procedures.

This has three main advantages:

  • The number of interactions between client and server is reduced by factors. Client/server communication is only required for each operation on the application object, and not for each SQL statement. This enhances the performance of client-server configurations considerably.

  • The SQL access layer contains the procedurally formulated integrity and business rules. By concentrating these rules on the server side and eliminating them from the database applications, modifications can be made centrally and thus become valid immediately in all database applications. In this way, the integrity and decision rules also become a part of the catalog in the database system.

  • An SQL access layer in the form of database procedures transferred to the server side is an essential customizing tool, as it allows customer-specific database functionality to be included.

To execute a database procedure, users must have the call privilege. This call privilege is independent of the user privileges for the tables and columns used in the database procedure. As a result, users can use a database procedure to execute SQL statements that they otherwise would not have access to.

Database procedures are called explicitly from the programming language of the application. DB procedures can contain parameters but not LOB columns. The extent to which LOB columns can be used within database procedures depends on the length of the LOB columns and the amount of storage space available.

As with any SQL statement, precautions must be taken to ensure that calling a database procedure has the desired effect, and that errors do not have any lasting effects on the database system. SAP MaxDB provides nested transactions for this purpose. Each database procedure call can run in a subtransaction that can be reset without interfering with transaction control in the database application.

More Information

Trigger Name (trigger_name)

Name of a Database Function (dbfunction_name)

Ensuring Data Integrity

SQL statements for creating, calling, and dropping a database procedure

CREATE DBPROC[EDURE] Statement

CALL Statement

DROP DBPROC[EDURE] Statement


DELETE Rule (delete_rule) - SAP Documentation

Background documentation DELETE Rule (delete_rule)

The DELETE rule (delete_rule) defines the effects that deleting a row in the referenced table (referenced_table) has on the referencing table.

Structure

Syntax Syntax

  1. <delete_rule> ::=
  ON DELETE CASCADE
| ON DELETE RESTRICT
| ON DELETE DEFAULT
| ON DELETE SET NULL
End of the code.
Explanation

  • No DELETE rule: Deleting a row in the referenced table will fail if matching rows exist.

  • ON DELETE CASCADE: If a row in the referenced table is deleted, all of the matching rows are deleted.

  • ON DELETE RESTRICT: Deleting a row in the referenced table fails if matching rows exist.

  • ON DELETE SET DEFAULT: If a row in the referenced table is deleted, the associated DEFAULT value is assigned to each matching row of each referencing column. A DEFAULT specification must exist for each referencing column.

  • ON DELETE SET NULL: If a row in the referenced table is deleted, a NULL value is assigned to each referencing_column of each matching row. None of these referencing columns may be a NOT NULL column.

More Information

Referential CONSTRAINT Definition (referential_constraint_definition)

Column Attributes (column_attributes)


LOCK Statement (lock_statement) - SAP Documentation

Background documentation LOCK Statement (lock_statement)

The LOCK statement (lock_statement) assigns a lock to objects in the current transaction.

Structure

Syntax Syntax

  1. <lock_statement> ::=
  LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN EXCLUSIVE MODE
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE <lock_spec> IN EXCLUSIVE MODE
| LOCK [(WAIT)|(NOWAIT)] <row_spec> ... OPTIMISTIC

<lock_spec> ::=
  TABLE <table_name>,...
| <row_spec> ...
| TABLE <table_name>,... <row_spec> ...

<row_spec> ::=
  ROW <table_name> KEY <key_spec>,...
| ROW <table_name> CURRENT OF <result_table_name>>
End of the code.
Explanation

The table specified cannot be a temporary base table, a view table, or a synonym. If the table name identifies a view table, locks are set on the underlying base tables for the view table.

(WAIT) | (NOWAIT)

  • If (NOWAIT) is specified, the database does not wait for a lock to be released by another transaction. Instead, it issues an error message if a lock collision occurs. If there is no collision, the requested lock is set.

  • In the event of a lock collision, if a WAIT option or (WAIT) is specified, the system waits for locks to be released until the period specified by the special database parameter RequestTimeout has elapsed.

<lock_spec>
TABLE <table_name>,...

If TABLE <table_name>,... is specified, a lock is created for the table in question.

If the view table identified by the table name is not changeable, only a shared lock can be set for this view table. As a result of this SQL statement, shared locks are set for all base tables underlying the view table.

<row_spec> ...

A <row_spec> ...  creates a lock for the table row denoted by the key values or a position in a results table.

In order to specify a row_spec , it is essential that the specified table has a key column. This means that if the table name identifies a view table, it must be modifiable. For tables defined without key columns, the implicit key column SYSKEY CHAR(8) BYTE can be used in a key specification (key_spec ). If CURRENT OF <result_table_name>  is specified, the results table must have been specified with FOR UPDATE.

SHARE

SHARE defines a shared lock for the listed objects. To set shared locks, the current user must have the SELECT privilege.

EXCLUSIVE

EXCLUSIVE defines an exclusive lock for the listed objects. To set exclusive locks, the current user must have the UPDATE, DELETE, or INSERT privilege.

OPTIMISTIC

OPTIMISTIC defines an optimistic lock on rows. This is only meaningful in connection with the isolation levels 0, 1, 10 and 15.

Deadlock

If the database system detects a deadlock caused by locks, it ends the transaction with an implicit ROLLBACK WORK.

Reproducibility

If reproducible results are needed to read rows using a SELECT statement, the read objects must be locked and the locks must be kept until reproduction. Reproducibility usually requires that the tables concerned are locked either explicitly using one or more LOCK statements or implicitly by using the isolation level 3. This ensures that other users cannot modify the table.

More Information

LOCK Option (lock_option)

UNLOCK Statement (unlock_statement)

Concepts of the Database System, Locks


LOCK Option (lock_option) - SAP Documentation

Background documentation LOCK Option (lock_option)

The LOCK option (lock_option) requests a lock for each selected row.

Structure

Syntax Syntax

  1. <lock_option> ::=
  WITH LOCK [(IGNORE)|(NOWAIT)] [EXCLUSIVE|OPTIMISTIC] [ISOLATION LEVEL <unsigned_integer>]
End of the code.

unsigned_integer may only have the values 0, 1, 2, 3, 10, 15, 20 or 30

(IGNORE)

If (IGNORE) is not specified and a lock collision occurs, the system waits for a locked row to be released (but only as long as is specified by the special database parameter RequestTimeout).

If (IGNORE) is specified, the system does not wait for a locked row to be released by another transaction. Instead, it ignores this row if a lock collision occurs. If there is no collision, the requested lock is set. (IGNORE) can only be specified in isolation level 1.

(NOWAIT)

If (NOWAIT) is not specified and a lock collision occurs, the system waits for the locked data object to be released (but only as long as is specified by the database parameter RequestTimeout).

If (NOWAIT) is specified, the database system does not wait until another user has released a data object. Instead, it issues a return code if a collision occurs. If there is no collision, the requested lock is set.

EXCLUSIVE

An exclusive lock is defined. As long as the locked row has not been changed or deleted, the exclusive lock can be released using the UNLOCK statement.

OPTIMISTIC

OPTIMISTIC defines an optimistic lock on rows. This only makes sense in connection with the isolation levels 0, 1, 10 and 15.

Shared Locks

If neither EXCLUSIVE nor OPTIMISTIC is specified, a shared lock is set for the corresponding rows.

ISOLATION LEVEL

The locks are set independently of the ISOLATION specification (isolation_spec) of the CONNECT statement. The isolation level of the LOCK option can have a higher or lower value than that in the CONNECT statement.

If an isolation level is specified by the LOCK option, it is only valid for the duration of the SQL statement that contains the LOCK option specification. Afterwards, the isolation level that was specified in the CONNECT statement is applicable again. In the case of a SELECT statement (select_statement) for which the results table is not actually physically generated, the specified isolation level is valid for this SQL statement and all FETCH statements that refer to the result table. The isolation level that was specified in the CONNECT statement is applicable for other SQL statements that were executed in the meantime.

More Information

LOCK Statement (lock_statement)

Concepts of the Database System, Locks


IN Predicate (in_predicate) - SAP Documentation

Background documentation IN Predicate (in_predicate)

The IN predicate (in_predicate) is a predicate that checks whether a value or a value list is contained in a specified set of values or value lists.

Structure

Syntax Syntax

  1. <in_predicate> ::=
  <expression> [NOT] IN <subquery>
| <expression> [NOT] IN <expression_list>
| <expression_list> [NOT] IN <subquery>
| <expression_list> [NOT] IN (<expression_list>,...)
End of the code.
Examples

SQL Tutorial, Conditions: Comparison, AND, OR, BETWEEN, IN, Negative Conditions: NOT, Subquery: Inner Queries

Explanation

The subquery (subquery) must supply a result table (see result table name) that contains the same number of columns as the number of values specified by the expression on the left-hand side of the IN operator.

Each value list specified on the right-hand side of the IN operator must contain the same number of values as specified in the value list on the left-hand side of the IN operator.

  • x [NOT] IN S, whereby x <expression> and S <subquery> or <expression_list>

    The value x and the values in S must be comparable with each other.

  • x [NOT] IN S, whereby x <expression_list> with the values x1, x2, ..., xn and S <subquery> (set of value lists s) or (<expression_list>,...) (range of values lists s) with the value lists s, s1, s2, ..., sn

    A value xm must be comparable with all values sm.

    x=s is true if xm=sm, m=1,...,n

    x=s is false if there is at least one m for which xm=sm is false

    x=s is undefined if there is no m for which xm=sm is false and there is at least one m for which xm=sm is undefined.

The entry '------' in the list below means that no statement can be made if only the result of the comparison with one s is known.

 | Result of the Function x IN S
x=s is true for at least one s | True
x=s is true for all s | True
S contains NULL values and x=s is true for the remaining s | True
S is empty | False
x=s is false for at least one s | ------
x=s is false for all s | False
S contains NULL values and x=s is false for the remaining s | Undefined
x=s is not true for any s and is undefined for at least one value s | Undefined

x NOT IN S has the same result as NOT(x IN S)


INSERT/UPDATE/DELETE Privilege for Owners of View Tables - SAP Documentation

Background documentation INSERT/UPDATE/DELETE Privilege for Owners of View Tables

Since view tables only represent views on the data available in base tables, there are certain aspects that should be noted when privileges are allocated for view tables.

Structure

INSERT Privilege for Owners of the View Table

The owner of a view table has the INSERT privilege, which means that they can specify the view table in the INSERT statement as the table in which data is to be inserted, providing the following conditions are satisfied:

  • The view table is an updatable view table.

  • The owner of the view table has the INSERT privilege for all tables in the FROM clause of the CREATE VIEW statement.

  • The selected columns of the CREATE VIEW statement consist only of table columns table_columns or column names column_name, but not of expressions with more than one column name.

  • The CREATE VIEW statement contains every mandatory column from all tables of the FROM clause as the selected column.

UPDATE Privilege for Owner of the View Table

The owner of the view table has the UPDATE privilege for a column in the view table, which means that they can specify the column in an UPDATE statement as the column to be updated, providing the following conditions are satisfied:

  • The view table is an updatable view table.

  • The owner of the view table has the UPDATE privilege for the table columns table_columns or the column name column_name that defines the column.

  • The column is defined by the specification of table columns or by means of a column name, but not by an expression expression with more than one column name.

DELETE Privilege for Owner of the View Table

The owner of the view table has the DELETE privilege for the view table, which means that they can specify the view table in the DELETE statement as the table from which entries are to be deleted, providing the following conditions are satisfied:

  • The view table is an updatable view table.

  • The owner of the view table has the DELETE privilege for all tables in the FROM clause of the CREATE VIEW statement.

More Information

Privilege Specification (priv_spec)

CREATE VIEW Statement


NEXT STAMP Statement (next_stamp_statement) - SAP Documentation

Background documentation NEXT STAMP Statement (next_stamp_statement)

The NEXT STAMP statement (next_stamp_statement) supplies a unique key that was generated by the database system.

Structure

Syntax Syntax

  1. <next_stamp_statement> ::=
  NEXT STAMP [INTO] <parameter_name>
End of the code.
Explanation

The database system is capable of generating unique values. These comprise a series of consecutive numbers starting at X'0000000000001'. The values are assigned in ascending order. There is no guarantee that a sequence of values is uninterrupted. These values can be stored in a column with the data type CHAR(n) BYTE with n>=8.

The NEXT STAMP statement assigns the next key generated by the database system to the variable denoted by parameter_name.

The NEXT STAMP statement can only be embedded in a programming language and cannot be used in interactive mode.

The keyword STAMP can also be used in an INSERT statement or an UPDATE statement if the next value is to be generated by the database system and stored in a column without the user knowing the value.


SAMPLE Definition (sample_definition) - SAP Documentation

Background documentation SAMPLE Definition (sample_definition)

A SAMPLE definition (sample_definition) defines the sample size, in other words the number of rows in a table that are to be used when statistics are updated.

Structure

Syntax Syntax

  1. <sample_definition> ::=
  SAMPLE <unsigned_integer> ROWS
| SAMPLE <unsigned_integer> PERCENT
End of the code.
Explanation

The database system manages statistics for each base table. These statistics are used to determine the best strategy for executing an SQL statement. The statistics are stored in the database catalog by the UPDATE STATISTICS statement. If a SAMPLE definition is specified in an UPDATE STATISTICS statement, it specifies the number of rows in the table that are to be used to calculate the statistics (sample size).

If a SAMPLE definition is not specified in an UPDATE STATISTICS statement and if it is not mandatory that all of the rows in the table be used to calculate the statistics, the database system uses the appropriate SAMPLE definition of the CREATE TABLE or ALTER TABLE statement.

The number of rows for which the UPDATE STATISTCS statement is to be executed can be defined by specifying a number of rows (ROWS) or percentage value (PERCENT).

  • If a SAMPLE definition is specified as a PERCENT value, the specified unsigned integer must be between 0 and 100.

  • If a SAMPLE definition is not defined, the database system uses the value 20,000 ROWS.

Sample Size 0

You can exclude individual tables from an UPDATE STATISTICS run by setting a sample size of 0 for these tables using a ALTER TABLE statement.

Sample Type and Size for Updating the SQL Optimizer Statistics
Number of Data Records (Sample Type Rows) | Proportion of Data Records as Percentage of all Data Records in the Table (Sample Size Percent) | Description
0 | 0 | The system does not update any statistics for the table.
0 < Number of data records < Number of data records in the table The default value for the sample size is 20,000 data records. | 0 < Percentage of data records < 100 % For large tables (> 1,000,000 data records) in SAP systems, we recommend a sample size of 5 %. | The system uses the sample size specified to estimate the statistics.
Number of all data records in the table | 100 % | The system calculates the statistics. This usually takes much longer than an estimation using a sample.

More Information

CREATE TABLE Statement, ALTER TABLE Statement, UPDATE STATISTICS Statement

Concepts of the Database System, SQL Optimizer, SQL Optimizer Statistics, Analyzing Search Strategies Using the EXPLAIN Statement

Database Administration in CCMS, SQL Optimizer in CCMS, Scheduling Updates of the SQL Optimizer Statistics

SAP Notes 808060, 927882


SOUNDS Predicate (sounds_predicate) - SAP Documentation

Background documentation SOUNDS Predicate (sounds_predicate)

A SOUNDS predicate (sounds_predicate) is used to perform a phonetic comparison.

Structure

Syntax Syntax

  1. <sound_predicate> ::=
  <expression> [NOT] SOUNDS [LIKE] <expression>
End of the code.
Explanation

Specifying LIKE in the SOUNDS predicate has no effect. The values in the expressions (expression) must be alphanumeric (code attribute ASCII).

A phonetic comparison between values is carried out according to the SOUNDEX algorithm. First, all vowels and some consonants are eliminated, then all consonants which are similar in sound are mapped to each other.

x [NOT] SOUNDS [LIKE] y
x, y | Result of the Predicate
x or y is the NULL value | x SOUNDS y is undefined
x and y are non-NULL values | x SOUNDS y is true or false
x and y are phonetically identical | x SOUNDS y is true

x NOT SOUNDS y has the same result as NOT (x SOUNDS y).

More Information

SOUNDEX(x) string function


DROP SCHEMA Statement (drop_schema_statement) - SAP Documentation

Background documentation DROP SCHEMA Statement (drop_schema_statement)

The DROP SCHEMA statement (drop_schema_statement) drops a schema.

Structure

Syntax Syntax

  1. <drop_schema_statement> ::=
  DROP SCHEMA <schema_name> [<cascade_option>]
End of the code.
Examples

SQL Tutorial, Schemas

Explanation

The current database user must be the owner of the schema that is to be dropped.

The metadata of the specified schema is dropped from the database catalog.

If no CASCADE option or the CASCADE option CASCADE was specified, all the database objects that belong to the schema to be dropped are also dropped.

If the CASCADE option RESTRICT was specified and objects still exist that belong to the schema, the DROP SCHEMA statement fails.


Privilege Specification (priv_spec) - SAP Documentation

Background documentation Privilege Specification (priv_spec)

A privilege specification (priv_spec) defines a role or a set of privileges for specific tables or parts of tables.

Structure

Syntax Syntax

  1. <priv_spec> ::=
  ALL [PRIV[ILEGES]] ON [TABLE] <table_name>,...
| <privilege>,... ON [TABLE] <table_name>,...
| <role_name>

<privilege> ::=
  ALTER
| DELETE
| INDEX
| INSERT
| REFERENCES [(<column_name>,...)]
| SELECT [(<column_name>,...)]
| SELUPD [(<column_name>,...)]
| UPDATE [(<column_name>,...)]
End of the code.
Explanation

These tables must not be temporary base tables.

The database user must have the authorization to grant (GRANT statement) and revoke (REVOKE statement) privileges for the specified tables. For base tables, the owner of the table has this authorization.

In the case of view tables, the owner may not always be authorized to assign or revoke all privileges. The database determines the privileges that a user can assign or revoke for a view table when the table is created. The result depends on the type of table and on the database user's privileges for the tables selected in the view table. The owner of a table can interrogate the privileges that he or she is allowed to grant or revoke by selecting the system table DOMAIN.TABLEPRIVILEGES.

ALL [PRIV[ILEGES]]

All of the privileges that the database user can grant for tables are granted (GRANT statement) or revoked (REVOKE statement) for the specified database users, user groups, and roles.

If a database user who is not the owner of the table specifies ALL in a REVOKE statement, all of the privileges he or she has granted to the specified database user for this table are revoked.

If a role is defined as a privilege specification, it must exist and the current database user must be the owner of the role.

ALTER

Allows the identified database user to execute the ALTER TABLE statement for the specified tables. The ALTER privilege can only be granted for base tables. The current database user must be authorized to grant the ALTER privilege.

DELETE

Allows the identified database user to delete rows from the specified table. The current database user must be authorized to grant the DELETE privilege.

INDEX

Allows the identified database user to execute the CREATE INDEX and DROP INDEX statements for the specified tables. The INDEX privilege can only be granted for base tables. The current database user must be authorized to grant the INDEX privilege.

INSERT

Allows the identified database user to insert rows in the specified table. The current database user must be authorized to grant the INSERT privilege.

REFERENCES

Allows the identified user to specify the table as a referenced table (referenced_table) in a column definition or referential CONSTRAINT definition.

SELECT

Allows the identified database user to select rows in the specified table. If column names are specified, the rows may only be selected in the columns identified by these names. The current database user must be authorized to grant the SELECT privilege.

SELUPD

The SELECT and UPDATE privileges are granted. If column names are specified, the rows may only be selected or updated in the columns identified by these names. The current database user must be authorized to grant the SELECT and UPDATE privileges.

UPDATE

Allows the identified database user to change rows in the specified table. If column names are specified, the rows may only be updated in the columns identified by these names. The current database user must be authorized to grant the UPDATE privilege.

More Information

INSERT/UPDATE/DELETE Privilege for Owners of View Tables

Privileges: Overview


Routine (routine) - SAP Documentation

Background documentation Routine (routine)

The part of the CREATE DBPROC[EDURE] statement, CREATE TRIGGER statement, CREATE SYSTEM TRIGGER statement or CREATE FUNCTION statement described as the routine is the implementation of the database procedure, trigger or the database function. It comprises optional variable declarations and statements.

Structure

Syntax Syntax

  1. <routine> ::=
  [<local_variables>] <statement_list>;

<local_variables>> ::=
  VAR <local_variable_list>;

<local_variable_list>> ::=
  <local_variable>
| <local_variable_list>; <local_variable>

<local_variable> ::=
  <variable_name> <routine_data_type>

<variable_name> ::=
  <identifier>

<routine_data_type> ::=
  <data_type>
| CURSOR
| PREPAREDSTATEMENT

<statement_list> ::=
  <statement>
| <statement_list> ; <statement>
End of the code.
Control Structures, Statements and SQL Statements (statement)

Syntax Syntax

  1. <statement> ::=
  BEGIN <statement_list> END
| BREAK
| CONTINUE
| CONTINUE EXECUTE
| EXECUTE <expression>
| <if_statement>
| <while_statement>
| <assignment_statement>
| <case_statement>
| OPEN :<local_variable> FOR <select_statement>
| PREPARE <local_variable> FOR <expression>
| RETURN [<expression>]
| STOP (<expression>[,<expression>])
| TRY <statement_list>; CATCH <statement>
| <routine_sql_statement>

<if_statement> ::=
  IF <search_condition> THEN <statement>
    [ELSE <statement>]

<while_statement> ::=
  WHILE <search_condition> DO <statement>

<assignment_statement> ::=
  [SET] <variable_name> = <expression>

<case_statement> ::=
  <simple_case_statement>
| <searched_case_statement>

<routine_sql_statement> ::=
  <call_statement>
| <close_statement>
| <create_table_temp>
| <declare_cursor_statement>
| <delete_statement>
| <drop_table_temp>
| <fetch_statement>
| <insert_statement>
| <lock_statement>
| <recursive_declare_cursor_statement>
| <select_statement>
| <single_select_statement>
| <subtrans_statement>
| <unlock_statement>
| <update_statement>

<create_table_temp> ::=
<!  <create_table_statement> for creating
    temporary tables, that is,
    the table name <table_name> in the
    CREATE TABLE statement must have the
    form TEMP.<identifier>.
!>

<drop_table_temp> ::=
  <DROP TABLE> TEMP.<identifier>
End of the code.
Examples

SQL Tutorial, Database Procedures, Database Functions, Database Triggers

Explanation

The statements concerning database procedures below also apply for triggers and database functions.

Variables

Local variables of the database procedure must be declared explicitly by specifying a data type before they are used. Only the data types BOOLEAN, CHAR[ACTER] [BYTE], DATE, FIXED, FLOAT, INT[EGER], NUMBER, REAL, SMALLINT, TIME, TIMESTAMP and VARCHAR are permitted. Once they have been declared, these variables can be used in any SQL or other statements.

Every database procedure implicitly possesses the variables $RC, $ERRMSG and $COUNT.

The $RC variable returns a numeric error code after an SQL statement has been executed. The value 0 means that the SQL statement was successfully executed.

In parallel with $RC, the $ERRMSG variable returns an explanation of the error containing a maximum of 80 characters.

The number of lines processed in an SQL statement is indicated by the $COUNT variables. For a QUERY statement, this variable can have the value -1, which means that an unknown number of records, but at least one, comprises the result of the QUERY statement. For a DELETE statement, this variable can have the value -1, which means that an unknown number of records has been deleted, possibly 0 records.

Variables can be assigned a value using the assignment_statement.

EXECUTE

EXECUTE <expression> enables you to execute an SQL statement which is created only at the runtime of the database procedure. The specified expression must be either a local variable of the routine data type PREPAREDSTATEMENT or an expression of the data type CHAR(n).

If a local variable of the routine data type PREPAREDSTATEMENT is specified, this must previously have been prepared for execution by a PREPARE statement.

If an expression of the data type CHAR(n) is specified, the expression must display the SQL statement to be executed (in the form of a character string), which, however, may not contain any parameters.

Example Example

VAR test_expression CHAR(1000);

test_expression = 'SELECT * FROM DUAL'; /* the value of test_expression is a correct SQL statement */

EXECUTE test_expression; /* the SQL statement can be executed*/

End of the example.
Control Structures

The IF statement (if_statement) first evaluates the search condition. If this is met, the statement specified in the THEN branch is executed. Otherwise, the statement in the ELSE branch (if defined) is executed.

The WHILE statement (while_statement) enables statements to be repeated in response to certain conditions. The statement is executed as long as the search condition specified is met. The condition is checked, in particular, before the statement is executed for the first time. This means the statement may not be executed at all. By specifying BREAK, you can exit the loop straightaway without the condition being checked. If CONTINUE is specified in the loop, the condition is revaluated immediately and the loop is processed again, or exited, depending on the result.

The CASE statement (case_statement) allows the conditional execution of a statement, dependent on search conditions or the equality of operands. There are simple and general CASE statements.

OPEN

OPEN :<local_variable> FOR <select_statement> creates a result table with a name that is unique within the database session. The local variable specified must be of the routine data type CURSOR. The results table is identified in the FETCH or CLOSE statement with the variable name as the variable name is specified as a parameter for the results table name.

PREPARE

PREPARE <local_variable> FOR <expression> prepares a dynamic SQL statement for the execution using EXECUTE <expression>. The local variable specified must be of the routine data type PREPAREDSTATEMENT and must supply a permitted SQL statement during runtime. This SQL statement can contain parameters which refer to local variables or to call parameters of the database procedure.

When the database procedure is executed, the execution of the PREPARE statement leads to the SQL statement being checked for accuracy and type compatibility with the parameters specified, as well as to the generation of an execution plan which is identified with the PREPAREDSTATEMENT variable specified. The actual execution of the statement is carried out with the EXECUTE statement when the variable name is specified.

RETURN

CREATE DBPROC and CREATE TRIGGER statement: Specifying RETURN allows an immediate error-free exit of the surrounding database procedure.

CREATE FUNCTION statement: Specifying RETURN <expression> enables you to exit the database function and transfer the <expression> function value at the same time.

Error Handling

If an SQL error occurs in the statement list between TRY and CATCH, the system branches directly to the statement that follows CATCH. The actual troubleshooting routine can be programmed in this statement. If CONTINUE EXECUTE is executed here, the system jumps directly to the point after the statement that triggered the error.

The database procedure is interrupted immediately whenever the STOP function is invoked. The value of the first parameter of the STOP function is the return or error message received by the application as the result of the database procedure call. An error text can also be returned.

SQL Statements (routine_sql_statement)

Tables in SQL statements (routine_sql_statement) of the database procedure must always be complete. In other words, the schema must be specified. For SELECT statements, a complete specification of the table name in the FROM clause is sufficient.

Restrictions

The statement list (statement_list) cannot contain more than 255 SQL statements.

The length of an SQL statement (routine_sql_statement) must not exceed approximately 8 kB.


Keyword (keyword) - SAP Documentation

Background documentation Keyword (keyword)

Keyword (keyword). A distinction is made between normal (not_reserved_keyword) and reserved (reserved_keyword) keywords.

Structure

Syntax Syntax

  1. <keyword> ::=
  <not_reserved_keyword>
| <reserved_keyword>
End of the code.
Explanation

Keywords can be entered in uppercase/lowercase characters. Generally speaking, keywords should not be used to designate objects.

Normal Keywords (not_reserved_keyword)
ABS | ACOS | ADD | ADDDATE | ADDRESS
ADDTIME | ADD_MONTH | AFTER | ALPHA | ALTERIN
ANALYZE | AND | ANSI | APPEND | AS
ASC | ASIN | AT | ATAN | ATAN2
AUTHORIZATION | AUTO | AUTOSAVE | AVG |
BAD | BEFORE | BEGIN | BEGINLOAD | BEGINPROC
BETWEEN | BLOCK | BLOCKSIZE | BOTH | BREAK
BUFFER | BUFFERPOOL | BWHIERARCHY | BY |
CACHE | CACHELIMIT | CACHES | CALL | CANCEL
CASCADE | CASE | CATALOG | CATCH | CEIL
CEILING | CHECKPOINT | CHR | CLEAR | CLOSE
CLUSTER | COALESCE | COMMENT | COMMIT | COMPUTE
CONCAT | CONFIG | CONNECT | CONSTRAINTS | CONTAINER
CONTINUE | COS | COSH | COSTLIMIT | COSTWARNING
COT | COUNT | CREATE | CREATEIN | CURRENT_DATE
CURRENT_TIME | CURRENT_TIMESTAMP | CURRVAL | CURSOR | CYCLE
DAFS | DATA | DATEDIFF | DAY | DAYNAME
DAYOFMONTH | DAYOFWEEK | DAYOFYEAR | DAYS | DB2
DBA | DBPROC | DBPROCEDURE | DEBUG | DECLARE
DECODE | DEFAULTCODE | DEGREE | DEGREES | DESC
DESCRIBE | DETERMINISTIC | DEVICE | DIAGNOSE | DIGITS
DIMENSION | DISABLE | DIV | DO | DOMAIN
DROP | DROPIN | DSETPASS | DUPLICATES | DYNAMIC
EDITPROC | ELSE | ENABLE | END | ENDLOAD
ENDPROC | ERROR | ESCAPE | ESTIMATE | EUR
EXCLUSIVE | EXECUTE | EXP | EXPAND | EXPLAIN
EXPLICIT | EXTENDED | EXTERNALLY |  |
FACT | FETCH | FILE | FLOOR | FLUSH
FORCE | FOREIGN | FORMAT | FREEPAGE | FUNCTION
FVERSION |  |  |  |
GET | GET_OBJECTNAME | GET_SCHEMA | GRANT | GREATEST
HEX | HEXTORAW | HIGH | HISTORY | HOLD
HOUR | HOURS |  |  |
IDENTIFIED | IDENTIFIER | IF | IFNULL | IMPLICIT
IMPORT | IN | INCREMENT | INDEX | INDEXNAME
INDICATOR | INFO | INIT | INITCAP | INITRANS
INOUT | INPROC | INSTANCE | INSTR | INTTORAW
IS | ISO | ISOLATION | ISUPDATECOLUMN |
JAVA | JIS |  |  |
LABEL | LANGUAGE | LAST_DAY | LCASE | LEAST
LEFT | LENGTH | LEVEL | LFILL | LIKE
LN | LOAD | LOCAL | LOCATE | LOCK
LOG | LOG10 | LOGFULL | LOGWRITER | LOW
LOWER | LPAD | LTRIM |  |
MAKEDATE | MAKETIME | MAPCHAR | MAX | MAXTRANS
MAXVALUE | MBCS | MEDIANAME | MEDIUM | MICROSECOND
MICROSECONDS | MIGRATE | MIN | MINUS | MINUTE
MINUTES | MINVALUE | MOD | MODE | MODIFY
MONITOR | MONTH | MONTHNAME | MONTHS | MONTHS_BETWEEN
NAME | NEW | NEW_TIME | NEXTVAL | NEXT_DAY
NLSSORT | NLS_DATE_FORMAT | NLS_DATE_LANGUAGE | NLS_LANGUAGE | NLS_SORT
NOCACHE | NOCYCLE | NOLOG | NOMAXVALUE | NOMINVALUE
NONE | NOORDER | NOREWIND | NORMAL | NOROUND
NOSORT | NUM | NUMBER | NVL |
OBID | OFF | ONLY | OPEN | OPTIMISTIC
OPTIMIZE | OPTION | OR | ORACLE | OUT
OUTER | OVERWRITE |  |  |
PACKAGE | PAGE | PAGES | PARAM | PARAMETER
PARSE | PARSEID | PARTITION | PASSWORD | PCTFREE
PCTUSED | PER | PERCENT | PERMANENT | PING
PIPE | POS | POWER | PRECISION | PREPARE
PREPAREDSTATEMENT | PRIV | PRIVILEGES | PROC | PROCEDURE
PSM | PUBLIC |  |  |
QUICK |  |  |  |
RADIANS | RANGE | RAW | RAWTOHEX | READ
RECURSIVE | REFERENCES | REGISTER | RELATIVE | RELEASE
REMOTE | REMOVE | RENAME | REPLACE | REPLICATION
REPOSITORY | RESET | RESOURCE | RESTART | RESTORE
RESTRICT | RESUME | RETURN | RETURNS | REUSE
REVOKE | RFILL | RIGHT | ROLE | ROLLBACK
ROUND | ROW | ROWNUM | ROWS | RPAD
RTRIM |  |  |  |
SAME | SAMPLE | SAPR3 | SAVE | SAVEPOINT
SCHEMA | SECOND | SECONDS | SELECTIVITY | SEQUENCE
SERVERDB | SESSION | SHARE | SHARED | SHUTDOWN
SIGN | SIN | SINH | SNAPSHOT | SOUNDEX
SOUNDS | SPACE | SQLID | SQLMODE | SQRT
STANDARD | STANDBY | START | STARTPOS | STAT
STATE | STATIC | STDDEV | STOP | STORAGE
SUBDATE | SUBPAGES | SUBSTR | SUBSTRING | SUBTIME
SUBTRANS | SUM | SUSPEND | SWITCH | SYNCHRONIZE
SYNONYM | SYSDATE | SYSTEM |  |
TABLESPACE | TAKEOVER | TAN | TANH | TAPE
TEMP | THEN | TIMEDIFF | TIMEOUT | TOIDENTIFIER
TO_CHAR | TO_DATE | TO_NUMBER | TRACE | TRANSLATE
TRIGGER | TRIM | TRUNC | TRUNCATE | TRY
TYPE |  |  |  |
UCASE | UNIQUE | UNKNOWN | UNLOAD | UNLOCK
UNTIL | UNUSED | UPPER | UPSERT | USA
USAGE | USERID |  |  |
VALIDPROC | VALUE | VARCHAR2 | VARIANCE | VERIFY
VERSION | VIEW | VOLUME | VSIZE | VTRACE
WAIT | WEEK | WEEKOFYEAR | WHENEVER | WHILE
WORK | WRITE | WRITER |  |
YEAR | YEARS |  |  |
Reserved Keywords (reserved_keyword)

You must not use reserved keywords as simple identifiers. However, you can use reserved keywords as identifiers in the form of special identifiers.

ABSOLUTE | ALL | ALTER | ANY | ASCII
BINARY | BIT | BLOB | BOOLEAN | BYTE
CHAR | CHARACTER | CHECK | CLOB | COLUMN
CONSTRAINT | CROSS | CURDATE | CURRENT | CURRENT_SCHEMA
CURTIME |  |  |  |
DATABASE | DATE | DEC | DECIMAL | DEFAULT
DELETE | DISTINCT | DOUBLE |  |
EXCEPT | EXISTS |  |  |
FALSE | FIRST | FIXED | FLOAT | FOR
FROM | FULL |  |  |
GRAPHIC | GROUP |  |  |
HAVING |  |  |  |
IGNORE | INNER | INSERT | INT | INTEGER
INTERNAL | INTERSECT | INTO |  |
JOIN |  |  |  |
KEY |  |  |  |
LAST | LIMIT | LIST | LONG | LONGFILE
NATURAL | NCHAR | NCLOB | NEXT | NO
NOT | NOW | NOWAIT | NULL | NUMERIC
NVARCHAR |  |  |  |
OBJECT | OF | ON | ORDER |
PACKED | PI | PREV | PRIMARY |
REAL | REJECT | ROWID | ROWNO |
SELECT | SELUPD | SERIAL | SET | SHOW
SMALLINT | SOME | STAMP | STATISTICS | SYSDBA
TABLE | TIME | TIMESTAMP | TIMEZONE | TO
TOP | TRANSACTION | TRUE |  |
UID | UNICODE | UNION | UPDATE | USER
USERGROUP | USING | UTCDATE | UTCDIFF |
VALUES | VARCHAR | VARGRAPHIC |  |
WHEN | WHERE | WITH |  |
ZONED |  |  |  |

More Information

Identifier (identifier)

Character Set (token)


Privilege Specification for a Schema (schema_priv_spec) - SAP Documentation

Background documentation Privilege Specification for a Schema (schema_priv_spec)

A privilege specification for a schema (schema_priv_spec) defines a set of privileges in a schema.

Structure

Syntax Syntax

  1. <schema_priv_spec> ::=
  <schema_privilege> ON <schema_name>,...

<schema_privilege> ::=
  CREATEIN
| DROPIN
End of the code.
Explanation

The schema name must identify an existing schema but cannot be the same as the name of a database user.

The current database user must be the owner of all schemas identified by the schema name.

CREATEIN

The CREATEIN privilege enables you to create database objects in the specified schema.

DROPIN

The DROPIN privilege enables you to delete database objects from the specified schema. All database users that have been granted this privilege for a schema can delete any objects in the schema, irrespective of whether they created these objects themselves.

More Information

GRANT Statement (grant_statement)

REVOKE Statement (revoke_statement)

Privileges: Overview


Subquery (subquery) - SAP Documentation

Background documentation Subquery (subquery)

A subquery (subquery) specifies a result table that can be used in certain predicates and for updating column values.

A scalar subquery (scalar_subquery) is a special subquery.

Structure

Syntax Syntax

  1. <subquery> ::=
  (<query_expression>)

<scalar_subquery> ::=
  <subquery>
End of the code.
Examples

SQL Tutorial, Subquery: Inner Queries

Explanation

Subqueries can be used in a SET UPDATE clause of an UPDATE statement. In this case, the subquery must produce a result table that contains a maximum of one row. Subqueries can be used in an INSERT statement.

Subqueries can be used in the following predicates:

  • Comparison Predicate

  • EXISTS Predicate

  • IN Predicate

  • Quantified Predicate

Correlated Subqueries

Certain predicates can contain subqueries. These subqueries, in turn, can contain other subqueries, and so on. A subquery with further subqueries is the higher-level subquery of the subqueries it contains.

  • The search condition of a subquery can contain column names belonging to tables that are contained in higher levels in the FROM clause. This type of subquery is called a correlated subquery.

  • Tables that are used in subqueries in such a way are called correlated tables. No more than 64 correlated tables are allowed within an SQL statement.

  • Columns that are used in subqueries in this way are called correlated columns. A total of 64 correlated columns can be used in an SQL statement.

If the qualifying table name or reference name does not uniquely identify a table at a higher level, then the lowest level table of these non-unique tables is taken.

If the column name is not qualified by the table name or reference name, the tables at higher levels are searched. The column name must be unique in all tables of the FROM clause to which the found table belongs.

If a correlated subquery is used, the values of one or more columns in a temporary result row at a higher level are included in the search condition of a subquery at a lower level, whereby the result of the subquery is used to uniquely qualify the higher-level temporary result row.

Scalar Subquery (scalar_subquery)

Scalar subqueries are produced through the restriction of the result set of a result table to a maximum of one value. Scalar subqueries can be used as expressions.

Scalar subqueries are not allowed in a GROUP clause or an ORDER clause (table expression).

Example Example

Scalar subquery in the list of values to be inserted in an INSERT statement:

INSERT INTO hotel.hotel

  VALUES((SELECT MAX(hno)+10 FROM hotel), 'Three Seasons', 90014, 'Los Angeles', '247 Broad Street')

Scalar subquery in a selected column:

SELECT hno, price, (SELECT MIN(price) FROM hotel.room)

  FROM hotel.room

End of the example.


Literal (literal) - SAP Documentation

Background documentation Literal (literal)

A literal (literal) is an unnamed data object that is defined fully by virtue of its value (specifies a non-NULL value). Literal values cannot be modified. A distinction is made between numeric literals and string literals.

Structure

Syntax Syntax

  1. <literal> ::=
  <numeric_literal>
| <string_literal>

<numeric_literal> ::=
  <fixed_point_literal>
| <floating_point_literal>

<string_literal> ::=
  ''
| '<character>...'
| <hex_literal>
End of the code.

Example Example

Numeric literals

+0.58498

1E160

-765E-04

String literals

'69190 Walldorf'

'Anton Schmitt'

X'12ab'

End of the example.
Numeric Literal

A numeric literal (numeric_literal) represents a number as a fixed or floating point number (fixed_/floating_point_literal).

String Literal

A string literal (string_literal) is a sequence of characters contained within apostrophes.

An apostrophe within a character string is represented by two successive apostrophes.

A string literal of the type '<character>...' or '' is only valid for a value referring to an alphanumeric column with the code attribute ASCII.

A string literal of the type '', x'' and X'', and string literals that only contain blanks are not the same as the NULL value.

String literals can also be represented in hexadecimal notation by preceding them with x or X. A hex_literal hexadecimal value is only valid for a value referring to a column with the code attribute BYTE.

Syntax Syntax

  1. <hex_literal> ::=
  x''
| X''
| x'<hex_digit_seq>'
| X'<hex_digit_seq>'

<hex_digit_seq> ::=
  <hex_digit><hex_digit>
| <hex_digit_seq><hex_digit><hex_digit>

<hex_digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
| A | B | C | D | E | F
| a | b | c | d | e | f
End of the code.

More Information

Character Set (token)

Data Type (data_type)


Referential CONSTRAINT Definition (referential_constraint_definition) - SAP Documentation

Background documentation Referential CONSTRAINT Definition (referential_constraint_definition)

A referential CONSTRAINT definition (referential_constraint_definition) defines an integrity condition that must be satisfied by all the rows in two tables. The resultant dependency between two tables affects changes to the rows contained in them.

Structure

Syntax Syntax

  1. <referential_constraint_definition> ::=
  FOREIGN KEY [<referential_constraint_name>]
    (<referencing_column>,...)
    REFERENCES <referenced_table>
    [(<referenced_column>,...)]
    [<delete_rule>]

<referencing_column> ::=
  <column_name>

<referenced_table> ::=
  <table_name>

<referenced_column> ::=
  <column_name>
End of the code.
Referential CONSTRAINT Definition
referencing_column | Referencing column (column that establishes the link to the column that is to be addressed)
referenced_table referenced_column | Referenced table/referenced column (table/column that is to be addressed)
Examples

SQL Tutorial, Foreign Key Dependencies Between Tables

Explanation

A referential CONSTRAINT definition can be used in a CREATE TABLE statement or ALTER TABLE statement (ADD definition). The table (table_name) specified in a corresponding statement is referred to in the following sections as the referencing table.

Name of a Referential Constraint (referential_constraint_name)

The name of a referential constraint can be specified after the keywords FOREIGN KEY.

  • If the name of a referential constraint is specified, it must be different from all other names of referential constraints for the referencing table.

  • If no referential constraint name is specified, the database system assigns a unique name (based on the referencing table).

Referencing Columns (referencing_column)

The referencing columns (referencing_column ) are specified in the referential CONSTRAINT definition. The referencing columns must denote columns in the referencing table and must all be different. They are also called foreign key columns.

Referenced Columns (referenced_column)

  • If no referencing columns are specified, the result is the same as if the key columns in the referenced table (referenced_table) were specified in the defined sequence.

  • If referenced columns are specified that are not the key in the referencing table, the referenced table must have a UNIQUE definition whose column names and sequence match those of the referenced columns.

Relationship Between Referenced and Referencing Columns:

  • The number of referenced columns must be equal to the number of referencing columns.

  • The nth referencing column corresponds to the nth referenced column.

  • The data type and the length of each referencing column must match the data type and length of the corresponding referenced column.

The referencing table and the referenced table must be base tables, but not temporary base tables.

The current user must have the ALTER privilege for the referencing table and the REFERENCE privilege for the referenced table.

Inserting and Modifying Rows in the Referenced Table

The following restrictions apply when rows in the referencing table are added or modified:

Let Z be an inserted or modified row. Rows can only be inserted or modified if one of the following conditions is fulfilled for each associated referenced table (referenced_table):

  • Z is a matching row.

  • Z contains a NULL value in one of the referencing columns (referencing_column).

  • The referential CONSTRAINT definition defines the DELETE rule ON DELETE SET DEFAULT, and Z contains the DEFAULT value in each referencing column.

When an INSERT or UPDATE statement is applied to a referencing table, the database uses a blocking behavior for the referenced table that corresponds to isolation level 1, irrespective of the isolation level defined for the current session. When a DELETE statement is applied to a referenced table, the database system uses a locking behavior that corresponds to isolation level 3.

Matching Row

A row in the referencing table is called a matching row of a row in the referenced table (referenced_table) if the values of the corresponding referencing columns (referencing_column) and referenced columns (referenced_column) are identical.

A referential CONSTRAINT definition defines a 1:n relationship between two tables. This means that more than one matching row can exist for each row in the referenced table.

A row in the referenced table in a referenced column cannot be changed if at least one matching row exists.

CASCADE Dependency

A table T* is CASCADE dependent on table T if a series of referential CONSTRAINT definitions R1, R2, ..., Rn (n>=1) exist where:

  • T* is the referencing table of R1

  • T is the referenced table (referenced_table) of Rn

  • All referential CONSTRAINT definitions use CASCADE.

  • For i=1,...,n-1, n>1 is the referenced table of Ri is equal to the referencing table of Ri+1

Let R1 and R2 be two different referential CONSTRAINT definitions with the same referencing table S. T1 denotes the referenced table of R1, T2 denotes the referenced table of R2.

If T1 and T2 are identical, or if a table T exists so that T1 and T2 are CASCADE dependent on T, then R1 and R2 must both specify either CASCADE or RESTRICT.

Example Example

There are two different sequences of referential CONSTRAINT definitions that link the tables S and T. A DELETE statement on table T results in an action in table S. In order to ensure that the result of the DELETE statement does not depend on which of the two sequences of referential CONSTRAINT definitions is processed, the above restriction was selected for R1 and R2.

End of the example.
Reference Cycle

A reference cycle is a sequence of referential CONSTRAINT definitions R1, R2, ..., Rn where n>1, to which the following conditions apply:

  • For i=1, ..., n-1 the referenced table (referenced_table) of Ri is equal to the referencing table of Ri+1.

  • The referenced table of Rn is the referencing table of R1.

A reference cycle in which all of the referential CONSTRAINT definitions specify CASCADE is not allowed.

A reference cycle in which one referential CONSTRAINT definition does not specify CASCADE and all other referential CONSTRAINT definitions specify CASCADE is not allowed.

Self-Referencing CONSTRAINT Definition

A referential CONSTRAINT definition is self-referencing if the referenced (referenced_table) and referencing tables are identical.

With self-referencing referential CONSTRAINT definitions, the order in which a DELETE statement is processed can be important.

CASCADE specified: All of the rows affected by the DELETE statement are first deleted irrespective of the referential CONSTRAINT conditions. All matching rows in the rows that have just been deleted are then also deleted. As a result, all of the matching rows in the previous deletion operation are deleted, etc.

SET NULL or SET DEFAULT specified: All of the rows affected by the DELETE statement are first deleted irrespective of the referential CONSTRAINT conditions. Following this, SET NULL or SET DEFAULT is applied to the matching row.

More Information

Privileges: Overview

Ensuring Data Integrity


Trigonometric Function (trigonometric_function) - SAP Documentation

Background documentation Trigonometric Function (trigonometric_function)

A trigonometric function (trigonometric_function) is a function that produces a numerical value.

Structure

Syntax Syntax

  1. <trigonometric_function> ::=
  COS(<expression>)
| SIN(<expression>)
| TAN(<expression>)
| COT(<expression>)
| COSH(<expression>)
| SINH(<expression>)
| TANH(<expression>)
| ACOS(<expression>)
| ASIN(<expression>)
| ATAN(<expression>)
| ATAN2(<expression>,<expression>)
| RADIANS(<expression>)
| DEGREES(<expression>)
End of the code.
Explanation

All expressions (expression) in every trigonometric function identify an angle in radians and are denoted with a and b below. The only exception to this is the RADIANS function.

Trigonometric Function (trigonometric_function)
a, b | Result of the trigonometric function
a is a NULL value | NULL value
a is a special NULL value | Special NULL value
COS(a) | Cosine of number a
SIN(a) | Sine of number a
TAN(a) | Tangent of number a
COT(a) | Cotangent of number a
COSH(a) | Hyperbolic cosine of number a
SINH(a) | Hyperbolic sine of number a
TANH(a) | Hyperbolic tangent of number a
ACOS(a) | Arc cosine of number a
ASIN(a) | Arc sine of number a
ATAN(a) | Arc tangent of number a
ATAN2(a,b) | Arc tangent of the value a/b, when -pi<=a<=+pi and -pi<=b<=+pi
ASIN(a) | Arc sine of number a
RADIANS(a) | Angle in radians of the number a
DEGREES(a) | Value in degrees of the number a

More Information

Functions: Overview


Results Table Name (result_table_name) - SAP Documentation

Background documentation Results Table Name (result_table_name)

A results table name (result_table_name) identifies a results table.

Structure

Syntax Syntax

  1. <result_table_name> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Data Query

Explanation

An error message is output if the name consists of more than 32 characters.

More Information

QUERY Statement

UPDATE Clause


QUERY Expression (query_expression) - SAP Documentation

Background documentation QUERY Expression (query_expression)

QUERY expressions (query_expression) are required to generate an unordered result table in a SELECT statement or for an INSERT statement.

Structure

Syntax Syntax

  1. <query_expression> ::=
  <query_term>
| <query_expression> UNION [ALL] <query_term>
| <query_expression> EXCEPT [ALL] <query_term>

<query_term> ::=
  <query_primary>
| <query_term> INTERSECT [ALL] <query_primary>

<query_primary> ::=
  <query_spec>
| (<query_expression>)

<query_spec> ::=
  SELECT [<distinct_spec>] [<top_spec>]
    <select_column>,... <table_expression>

<top_spec> ::=
  TOP <unsigned_integer>
| TOP <parameter_name>
End of the code.
Examples

SQL Tutorial, Selecting, Arranging and Renaming Columns, Set Operations: UNION, INTERSECT, EXCEPT

Explanation

A QUERY specification specifies a result table. The result table is generated from a temporary result table. The temporary result table is the result of the table expression.

If the QUERY expression consists of only one QUERY specification (query_spec), the result of the QUERY expression is the unchanged result of the QUERY specification.

If a QUERY expression consists of more than one QUERY specification, the number of selected columns in all QUERY specifications of the QUERY expression must be the same. The respective ith selected columns of the QUERY specifications must be comparable.

Column Type (select column) |
Numeric columns | Are comparable. If all ith selected columns are numeric columns, the ith column of the result table is a numeric column.
Alphanumerical column, code attribute BYTE | Are comparable.
Alphanumerical column, code attribute ASCII, UNICODE | Are comparable. Are also comparable with date, time, and time stamp values.
All ith columns are date values | The ith column of the result table is a date value.
All ith columns are time values | The ith column of the result table is a time value.
All ith columns are time stamp values | The ith column of the result table is a time stamp value.
Columns of the type BOOLEAN | Are comparable.
All ith columns are of the type BOOLEAN | The ith column of the result table is of the type BOOLEAN.
Columns of any other data type (not mentioned above) | The ith column of the result table is an alphanumeric column. Comparable columns with differing code attributes are converted.

If columns are comparable but have different lengths, the corresponding column of the result table has the maximum length of the underlying columns.

Column Names in the Result Table

The names of the result table columns are formed from the names of the selected columns of the first QUERY specification.

Let T1 be the left operand of UNION, EXCEPT or INTERSECT (defined in query_term). Let T2 be the right operand. Let R be the result of the operation on T1 and T2.

  • A row is a duplicate of another row if both have identical values in each column. NULL values are assumed to be identical. Special NULL values are assumed to be identical.

  • UNION: R contains all rows from T1 and T2.

  • EXCEPT: R contains all rows from T1 that have no duplicate rows in T2.

  • INTERSECT: R contains all rows from T1 that have one duplicate row in T2. A row from T2 can only be a duplicate row of exactly one row from T1. More than one row from T1 cannot have the same duplicate row in T2.

  • DISTINCT is implicitly assumed for the QUERY expressions belonging to T1 and T2 if ALL is not specified. All duplicate rows are removed from R.

If parentheses are missing, then INTERSECT will be evaluated before UNION and EXCEPT. UNION and EXCEPT have the same priority and will be evaluated from left to right if parentheses are missing.

TOP

You can use the TOP syntax element to specify that only the first n lines of the result are to be generated. Whole numbers between 0 and 2147483647 are permitted.

If you use a TOP syntax element and an ORDER clause in a SELECT statement, the first n  lines of all lines sorted by the ORDER clause are generated. If you do not use an ORDER clause in the SELECT statement, any n  lines are generated.

If a QUERY expression (query_expression) consists of several QUERY specifications (query_spec), the TOP syntax element must only be contained in the first QUERY specification.

If you use a ROWNO predicate, a LIMIT-clause or a CREATE VIEW statement, you cannot use the TOP syntax element.


UNLOCK Statement (unlock_statement) - SAP Documentation

Background documentation UNLOCK Statement (unlock_statement)

The UNLOCK (unlock_statement) releases locks on rows.

Structure

Syntax Syntax

  1. <unlock_statement> ::=
  UNLOCK <row_spec> ... IN SHARE MODE
| UNLOCK <row_spec> ... IN EXCLUSIVE MODE
| UNLOCK <row_spec> ... IN SHARE MODE <row_spec> ... IN EXCLUSIVE MODE
| UNLOCK <row_spec> ... OPTIMISTIC

<row_spec> ::=
  ROW <table_name> KEY <key_spec>,...
| ROW <table_name> CURRENT OF <result_table_name>
End of the code.
Explanation

Using the UNLOCK statement, shared locks, optimistic locks and exclusive locks can be released within a transaction for single table rows that have not yet been changed.

If a row has been inserted, changed or deleted, its exclusive lock cannot be released using the UNLOCK statement.

The UNLOCK statement does not fail if the specified lock does not exist or cannot be released.

For tables defined without key columns, the implicit key column SYSKEY CHAR(8) BYTE can be used in a key specification (key_spec).

If CURRENT OF <result_table_name> is specified, the results table must have been specified with FOR UPDATE.

More Information

LOCK Statement (lock_statement)

Concepts of the Database System, Locks


Fixed Point Number (fixed_point_literal) - SAP Documentation

Background documentation Fixed Point Number (fixed_point_literal)

A fixed point number (fixed_point_literal) is a numeric literal that specifies a number as a fixed point number.

Structure

Syntax Syntax

  1. <fixed_point_literal> ::=
  [<sign>]<digit_sequence>[.<digit_sequence>]
| [<sign>]<digit_sequence>.
| [<sign>].<digit_sequence>

<sign> ::=
  +
| -

<digit_sequence> ::=
  <digit>...

<digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
End of the code.

Example Example

+123.12

1234.

End of the example.

More Information

FIXED

INT[EGER]

SMALLINT

Floating Point Number (floating_point_literal)


Floating Point Number (floating_point_literal) - SAP Documentation

Background documentation Floating Point Number (floating_point_literal)

A floating point number (floating_point_literal) is a numeric literal that specifies a number as a floating point number.

Structure

Syntax Syntax

  1. <floating_point_literal> ::=
  <mantissa>E<exponent>
| <mantissa>e<exponent>

<mantissa> ::=
  <fixed_point_literal>

<exponent> ::=
  [<sign>][[<digit>]<digit>]<digit>

<sign> ::=
  +
| -

<digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
End of the code.

Example Example

1e160

-765E-04

End of the example.

More Information

FLOAT

Fixed Point Number (fixed_point_literal)


MapChar Set Name (mapchar_set_name) - SAP Documentation

Background documentation MapChar Set Name (mapchar_set_name)

A MapChar set name (mapchar_set_name) identifies a MapChar set.

Structure

Syntax Syntax

  1. <mapchar_set_name> ::=
  <identifier>
End of the code.

The identifier may not exceed 32 characters in length.

Explanation

Function in which MapChar sets are used: MAPCHAR

More Information

Glossary, Language Support (Mapchar Sets)

SQL Reference Manual, DOMAIN.MAPCHARSETS


Data Definition - SAP Documentation

Background documentation Data Definition

The following sections contain an introduction to the data definition language (DDL) used by the database system.

Activities

SQL Statements for Data Definition
CREATE TABLE Statement | DROP TABLE Statement | ALTER TABLE Statement RENAME TABLE Statement RENAME COLUMN Statement EXISTS TABLE Statement
CREATE SCHEMA Statement | DROP SCHEMA Statement | RENAME SCHEMA Statement
CREATE DOMAIN Statement | DROP DOMAIN Statement |
CREATE SEQUENCE Statement | DROP SEQUENCE Statement |
CREATE SYNONYM Statement | DROP SYNONYM Statement | RENAME SYNONYM Statement
CREATE VIEW Statement | DROP VIEW Statement | RENAME VIEW Statement
CREATE INDEX Statement | DROP INDEX Statement | ALTER INDEX Statement RENAME INDEX Statement
CREATE DBPROC[EDURE] Statement | DROP DBPROC[EDURE] Statement |
CREATE SYSTEM TRIGGER Statement | DROP SYSTEM TRIGGER Statement |
CREATE FUNCTION Statement | DROP FUNCTION Statement |
CREATE TRIGGER Statement | DROP TRIGGER Statement |
COMMENT ON Statement |  |

Example

SQL Tutorial, Data Definition

More Information

SQL Statements: Overview

SQL Reference Manual


EXISTS TABLE Statement (exists_table_statement) - SAP Documentation

Background documentation EXISTS TABLE Statement (exists_table_statement)

An EXISTS TABLE statement (exists_table_statement) indicates whether or not a table exists.

Structure

Syntax Syntax

  1. <exists_table_statement> ::=
  EXISTS TABLE <table_name>
End of the code.
Explanation

The specified table must be a base table, view table, or a synonym.

The existence or non-existence of the specified table is indicated by the return code 0 or by the error message -4004 Unknown table name .

A table only exists for a database user if the user has a privilege on this table.

More Information

Privileges: Overview


Data Manipulation - SAP Documentation

Background documentation Data Manipulation

The following is an introduction to the data manipulation language (DML) used by the database system.

Every SQL statement for data manipulation implicitly sets a write lock for each inserted, updated, or deleted row.

Activities

SQL Statements for Data Manipulation
INSERT Statement | UPDATE Statement | DELETE Statement
NEXT STAMP Statement | CALL Statement |

Example

SQL Tutorial, Data Manipulation

More Information

Concepts of the Database System, Locks

SQL Statements: Overview

SQL Reference Manual


Ensuring Data Integrity - SAP Documentation

Background documentation Ensuring Data Integrity

The database system provides you with the following tools to ensure data integrity:

  • Integrity rules: Integrity rules that refer to a table can also be specified (see CONSTRAINT definition).

  • Keys: A key consisting of one or more columns can be defined for each table. The database system ensures that keys in a table are unique. A key can also consist of columns of different data types (see key definition).

  • UNIQUE definition: In addition, uniqueness can be enforced for the values of other columns or column combinations (see UNIQUE definition for "alternate keys").

  • NOT NULL: For single columns, values other than the NULL value can be enforced by specifying NOT NULL (see column definition).

  • DEFAULT definition: You can define default values for each column (see DEFAULT specification).

  • Referential constraints: By specifying referential constraints, you can declare deletion and existence dependencies between the rows in two tables (see referential CONSTRAINT definition).

  • Database procedures and triggers: Complex integrity rules requiring access to more tables can be formulated using database procedures or triggers.


CREATE SCHEMA Statement (create_schema_statement) - SAP Documentation

Background documentation CREATE SCHEMA Statement (create_schema_statement)

The CREATE SCHEMA statement (create_schema_statement) defines a schema.

Structure

Syntax Syntax

  1. <create_schema_statement> ::=
  CREATE SCHEMA <schema_name_clause> [<schema_element>...]

<schema_name_clause> ::=
  <schema_name>
| <schema_name> AUTHORIZATION <schema_authorization_identifier>

<schema_authorization_identifier> ::=
  <identifier>

<schema_element>  ::=
  <create_table_statement>
| <create_view_statement>
| <create_dbproc_statement>
| <create_function_statement>
| <create_sequence_statement>
End of the code.
Examples

SQL Tutorial, Schemas

Explanation

The current database user must be a database administrator.

The specified schema name (schema_name) must differ from the names of all existing schemas, database users, and roles. Using the CREATE SCHEMA statement you can create one of the following database objects in the schema (schema_elements): table, view table, database procedure, database function, sequence.

CREATE SCHEMA <schema_name>

A schema with the name schema_name is created. The current user (a database administrator) becomes the owner of this schema.

CREATE SCHEMA <schema_name> AUTHORIZATION <schema_authorization_identifier>

A schema with the name schema_name is created. The user specified by schema_authorization_identifier must exist and be a database administrator. This database administrator becomes the owner of the schema. The owner has the CREATEIN and DROPIN privileges for the generated schema and can therefore at any time add database objects to the schema or delete objects.

More Information

Privileges: Overview


Date Function (date_function) - SAP Documentation

Background documentation Date Function (date_function)

A date function (date_function) is a function that is applied to date or time stamp values or supplies a date or time stamp value as a result.

Structure

Syntax Syntax

  1. <date_function> ::=
  ADDDATE(<date_or_timestamp_expression>,<expression>)
| ADD_MONTHS(<date_or_timestamp_expression>,<expression>)
| DATEDIFF(<date_or_timestamp_expression>,<date_or_timestamp_expression>)
| DAYNAME(<date_or_timestamp_expression>)
| DAYOFMONTH(<date_or_timestamp_expression>)
| DAYOFWEEK(<date_or_timestamp_expression>)
| DAYOFYEAR(<date_or_timestamp_expression>)
| MAKEDATE(<expression>,<expression>)
| MONTHNAME(<date_or_timestamp_expression>)
| SUBDATE(<date_or_timestamp_expression>,<expression>)
| WEEKOFYEAR(<date_or_timestamp_expression>)

<date_or_timestamp_expression> ::=
  <expression>
End of the code.
Examples

SQL Tutorial, Date and Time Calculations

Explanation

When used in a function, the argument date_or_timestamp_expression must supply a date, a time stamp or an alphanumeric value that matches the current date or time stamp format. Date and time values can be specified in a variety of date and time formats (ISO, USA, EUR, JIS, INTERNAL). Although the Gregorian calendar was not introduced until 1582, it can also be applied to date functions that use dates prior to that year. This means that every year is assumed to have either 365 or 366 days.

More Information

Functions: Overview


Name of a Database Function (dbfunction_name) - SAP Documentation

Background documentation Name of a Database Function (dbfunction_name)

A database function name (dbfunction_name) identifies a database function. Database functions are specialized database procedures. These are subprograms consisting of any number of input characters but one output parameter only. This returns the result of the function.

Structure

Syntax Syntax

  1. <dbfunction_name> ::=
  [<schema_name>.]<identifier>
End of the code.

Neither the schema name nor the identifier can be longer than 32 characters.

Examples

SQL Tutorial, Database Functions

Explanation

You can define user-specific functions to transfer application logic to the server of the database system. You can use these database functions like the predefined functions. When naming your functions, make sure you do not use the names of predefined functions (Functions: Overview).

The database system provides a language (special SQL syntax that has been extended to include variables, control structures, and troubleshooting measures) that allows an SQL access layer to be formulated on the server side. This special SQL syntax can be used to define database functions. These database functions can then be executed as function calls of an SQL statement (database function call).

More Information

CREATE FUNCTION Statement

Database Function Call (dbfunction_call)

DROP FUNCTION Statement


SUBTRANS Statement (subtrans_statement) - SAP Documentation

Background documentation SUBTRANS Statement (subtrans_statement)

The SUBTRANS statement (subtrans_statement) divides a transaction into units known as subtransactions.

Structure

Syntax Syntax

  1. <subtrans_statement> ::=
  SUBTRANS BEGIN
| SUBTRANS END
| SUBTRANS ROLLBACK
End of the code.
SUBTRANS BEGIN

A subtransaction is opened. This means the database system records the current point in the transaction. Any sequence of SQL statements can then follow. If the sequence does not contain an additional SUBTRANS BEGIN, all database modifications performed since the SUBTRANS BEGIN can be reversed using a SUBTRANS ROLLBACK.

However, the sequence can also contain additional SUBTRANS BEGIN statements that open additional subtransactions. This means several nested subtransactions may be opened at the same time.

SUBTRANS END

If a subtransaction is concluded with SUBTRANS END, the modifications that have been made are kept. A subtransaction is closed. This means the database system "forgets" the point in the transaction recorded with SUBTRANS BEGIN. A prerequisite for this is that an open subtransaction exists. If more than one open subtransaction exists, the last opened subtransaction is closed; that is, it is no longer considered to be an open subtransaction.

SUBTRANS ROLLBACK

If a subtransaction is concluded with SUBTRANS ROLLBACK, all database modifications made within a subtransaction are reversed and the subtransaction is closed. Any database modifications performed by any subtransactions within the subtransaction are reversed, irrespective of whether they were ended with SUBTRANS END or SUBTRANS ROLLBACK. All result tables generated within the subtransaction are closed.

A prerequisite for this is that an open subtransaction exists. If more than one open subtransaction exists, the last opened subtransaction is rolled back. The subtransaction concerned is then no longer considered open.

Further Explanations

The SUBTRANS statement does not affect locks assigned to the transaction. In particular, SUBTRANS END and SUBTRANS ROLLBACK do not release any locks.

The SUBTRANS statement is particularly useful for keeping the effects of subroutines or database procedures atomic in the sense that they either fulfill all their tasks or otherwise have no effect. A SUBTRANS BEGIN statement is issued initially for this. If the subroutine succeeds in fulfilling its task, it is ended with a SUBTRANS END. In the event of an error, a SUBTRANS ROLLBACK is used to reverse all modifications performed by the subroutine.

The COMMIT statement and the ROLLBACK statement close any open subtransactions implicitly.

More Information

Transactions

SQL SAVEPOINT Statements


Quantified Predicate (quantified_predicate) - SAP Documentation

Background documentation Quantified Predicate (quantified_predicate)

By specifying a quantified predicate (quantified_predicate), you can compare a value or list of values to a set of values or value lists.

Structure

Syntax Syntax

  1. <quantified_predicate> ::=
  <expression> <comp_op> <quantifier> <expression_list>
| <expression> <comp_op> <quantifier> <subquery>
| <expression_list> <equal_or_not> <quantifier> (<expression_list>,...)
| <expression_list> <equal_or_not> <quantifier> <subquery>
End of the code.

The following operators are available for comparing values:

Syntax Syntax

  1. <comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>
End of the code.

Only the following operators are available for comparing value lists:

Syntax Syntax

  1. <equal_or_not> ::=
  <>
| =
| ~= <!  for computers with ASCII code  !>
End of the code.

The quantified predicate can be qualified with ALL, SOME or ANY.

Syntax Syntax

  1. <quantifier> ::=
  ALL
| SOME
| ANY
End of the code.
Examples

SQL Tutorial, Subquery: Inner Queries

Explanation

The subquery must supply a result table that contains the same number of columns as the number of values created by the expression (expression or expression_list) on the left of the operator.

Each list of values (expression_list) specified to the right of the equal_or_not comparison operator must contain the same number of values as specified in the value list in front of the equal_or_not operator.

  • Let x be the result of the first value expression and S the result of the subquery or sequence of values. S is a set of s values. The value x and the values in S must be comparable with each other.

  • If a value list (expression_list) is specified on the left of the comparison operator equal_or_not, then let x be the value list comprising the results of the values x1, x2, ..., xn of this value list. Let S be the result of the subquery consisting of a set of value lists s or a sequence of value lists s. A value list s consists of the results of the values s1, s2, ..., sn.

    A value xm must be comparable with all values sm.

    x=s is true if xm=sm, m=1,...,n

    x<>s is true, if there is at least one m for which xm<>sm

    x <equal_or_not> s is undefined, if there is no m for which xm <equal_or_not> sm is false, and if there is at least one m for which xm <equal_or_not> sm is undefined. If one xm or one sm is a NULL value, or if the result of the subquery is empty, then x <equal_or_not> y is undefined.

The entry '------' in the list below means that no statement can be made if only the result of the comparison with one s is known.

x <compare> <quantifier> S, whereby <compare> ::= <comp_op> | <equal_or_not>

 | <quantifier> ::= ALL | <quantifier> ::= ANY | SOME
S is empty | True | False
x <compare> S is true for at least one s from S | ------ | True
x <compare> S is true for all s from S | True | True
x <compare> S is not false for any value s from S and is undefined for at least one value s | Undefined |
S contains NULL values and x <compare> S is true for all other s | Undefined | True
x <compare> S is false for at least one value s from S | False | ------
x <compare> S is false for all s from S | False | False
x <compare> S is not true for any value s from S and is undefined for at least one value s |  | Undefined
S contains NULL values and x <compare> S is true for all other s | False | Undefined

More Information

Comparison Predicate (comparison_predicate)


INSERT Statement (insert_statement) - SAP Documentation

Background documentation INSERT Statement (insert_statement)

The INSERT statement (insert_statement) creates new rows in a table.

Structure

Syntax Syntax

  1. <insert_statement> ::=
  INSERT [INTO] <table_name>
    [(<column_name>,...)]
    VALUES (<insert_expression>,...)
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
| INSERT [INTO] <table_name>
    [(<column_name>,...)]
    <query_expression>
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
| INSERT [INTO] <table_name>
    SET <set_insert_clause>,...
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions  !>

<insert_expression> ::=
  <extended_expression>
| <subquery>

<extended_expression> ::=
  <expression>
| DEFAULT
| STAMP

<set_insert_clause> ::=
  <column_name> = <extended_value_spec>
End of the code.
Examples

SQL Tutorial, Inserting, Updating and Deleting Rows

Explanation

The table name must identify an existing base table, view table or a synonym.

The database user must have the INSERT privilege for the table identified by the table name. If the table name identifies a view table, it may be the case that the owner of the view table has not been granted the INSERT privilege as the view table is not updatable.

Column Names

If column names are specified (in syntax clauses column_name or set_insert_clause), all column names must be columns in the specified table. If the table was defined without a key (the SYSKEY column has been created internally by the database), the SYSKEY column cannot appear in the column names sequence or in a SET INSERT clause. A column cannot occur more than once in a sequence of column names or in more than one SET INSERT clause.

A specified column (identified by column_name or the column name in the set_insert_clause) is a target column. Target columns can be specified in any order.

  • The number of selected columns specified in the QUERY expression (query_expression) must be the same as the number of target columns.

  • All mandatory columns of the table identified by the table name must be target columns.

  • If the table name identifies a view table, rows are inserted into the underlying base table(s) of the view table. In such cases, the target columns of the table name specified correspond to the columns of the underlying base tables in the view table. The term “target column” always refers to the corresponding column in the base table in the following description.

If you specify neither a column name nor a SET INSERT clause, the effect is the same as if you specify a sequence of columns containing all table columns in the sequence in the CREATE TABLE statement or CREATE VIEW statement. In such cases, all table columns defined by the user are target columns.

SET <set_insert_clause>

Caution Caution

This SQL clause is no longer recommended to be used and might be removed from future versions.

End of the caution.
<insert_expression>

  • The number of insert_expression expressions must be equal to the number of target columns. The ith expression is assigned to the ith column name.

  • You can specify both an extended_expression and subquery at the same time.

  • You can also specify one or more subqueries.

  • The subqueries you specify may return no more than one results row.

<extended_expression>

You specify an extended_expression using an expression or one of the DEFAULT or STAMP keywords.

  • Expression (expression)

    An expression in an INSERT statement may not contain a column specification. In an expression, the value specified by a parameter specification is the value of the parameter identified by the specification. If you specify an indicator parameter and this has a negative value, the value defined by the parameter specification is a NULL value.

  • DEFAULT keyword

    DEFAULT denotes the value used as the DEFAULT for the column.

  • STAMP keyword

    The database system is capable of generating unique values. These comprise a series of consecutive numbers starting at X'000000000001'. The values are assigned in ascending order. There is no guarantee that a sequence of values is uninterrupted. The STAMP keyword returns the next value generated by the database system. The STAMP keyword can be used in the INSERT statement or in the UPDATE statement, but only for columns of the data type CHAR(n) BYTE with n>=8.

    If the user wants to find out the generated value before it is applied to a column, the NEXT STAMP SQL statement must be used.

IGNORE TRIGGER

If you specify IGNORE TRIGGER, the INSERT statement does not execute an INSERT trigger. IGNORE TRIGGER must be specified within a CREATE TRIGGER statement only.

NOWAIT

If you specify NOWAIT, the system does not wait for the lock to be released where a lock collision occurs. Instead, it returns an error message immediately.

More Information

Data Type of the Target Column and Data Type of the Value to be Inserted

Join View Table, QUERY Expression, CONSTRAINT Definition, Trigger in INSERT Statement

Data Manipulation


Frequently Used Syntax Elements: Overview - SAP Documentation

Background documentation Frequently Used Syntax Elements: Overview

Frequently Used Syntax Elements: Overview
Syntax | Explanation
arithmetic_function | Arithmetic Function (arithmetic_function)
between_predicate | BETWEEN Predicate (between_predicate)
bool_predicate | Boolean Predicate (bool_predicate)
cascade_option | CASCADE Option (cascade_option)
character | Character (character)
column_spec | Column Specification (column_spec)
comparison_predicate | Comparison Predicate (comparison_predicate)
conversion_function | Conversion Function (conversion_function)
data_type | Data Type (data_type)
date_function | Date Function (date_function)
dbfunction_call | Database Function Call (dbfunction_call)
default_predicate | DEFAULT Predicate (default_predicate)
default_spec | DEFAULT Specification (default_spec)
delete_rule | DELETE Rule (delete_rule)
distinct_spec | DISTINCT Specification (distinct_spec)
duplicates_clause | DUPLICATES Clause (duplicates_clause)
exists_predicate | EXISTS Predicate (exists_predicate)
expression | Expression (expression)
extended_value_spec | Specifying Values (extended_value_spec)
extraction_function | Extraction (extraction_function)
fixed_point_literal | Fixed Point Number (fixed_point_literal)
floating_point_literal | Floating Point Number (floating_point_literal)
function_spec | Function (function_spec)
identifier | Identifier (identifier)
in_predicate | IN Predicate (in_predicate)
integer | Integer (integer)
joined_table | Joined Table (joined_table)
join_predicate | JOIN Predicate (join_predicate)
keyword | Keyword (keyword)
key_spec | Key Specification (key_spec)
like_predicate | LIKE Predicate (like_predicate)
literal | Literal (literal)
null_predicate | NULL Predicate (null_predicate)
parameter_spec | Parameter Specification (parameter_spec)
predicate | Predicate (predicate)
quantified_predicate | Quantified Predicate (quantified_predicate)
rowno_predicate | ROWNO Predicate (rowno_predicate)
sample_definition | SAMPLE Definition (sample_definition)
search_condition | Search Condition (search_condition)
select_column | Selected Column (select_column)
set_function_spec | Set Function (set_function_spec)
sounds_predicate | SOUNDS Predicate (sounds_predicate)
special_function | Special Function (special_function)
string_function | String Function (string_function)
time_function | Time Function (time_function)
token | Character Set (token)
trigonometric_function | Trigonometric Function (trigonometric_function)
unsigned_integer | Unsigned Integer (unsigned_integer)

More Information

SQL Syntax

SQL Reference Manual


FETCH Statement (fetch_statement) - SAP Documentation

Background documentation FETCH Statement (fetch_statement)

The FETCH statement (fetch_statement) assigns the values from the current row in a result table to parameters.

Structure

Syntax Syntax

  1. <fetch_statement> ::=
  FETCH [FIRST | LAST | NEXT | PREV | <position> | SAME]
    [<result_table_name>] INTO <parameter_spec>,...

<position> ::=
  POS (<unsigned_integer>)
| POS (<parameter_spec>)
| ABSOLUTE <integer>
| ABSOLUTE <parameter_spec>
| RELATIVE <integer>
| RELATIVE <parameter_spec>
End of the code.
Explanation

If the name of a result table is not specified, the FETCH statement refers to the last unnamed result table that was generated.

Depending on the search strategy, either all the rows in the result table are searched when the SELECT statement (select_statement) is executed and the result table is physically generated, or each subsequent result table row is searched when a FETCH statement is executed without being physically stored. This must be taken into account for the time behavior of FETCH statements. Depending on the isolation level selected, this can also cause locking problems with a FETCH, such as the return code 500 - Lock request timeout.

Row Not Found

Let C be the position in the result table. The return code 100 - Row not found is output and no values are assigned to the parameters if one of the following conditions is satisfied:

  • The result table is empty.

  • C is positioned on or after the last result table row, and FETCH or FETCH NEXT is specified.

  • C is positioned on or before the first row of the result table and FETCH PREV is specified.

  • FETCH is specified with a position that is not within the result table.

FIRST | LAST | NEXT | PREV

  • FETCH FIRST or FETCH LAST: The result table is not empty. C is positioned in the first or last row of the result table and the values of this row are assigned to the parameters.

  • FETCH or FETCH NEXT: C is positioned before a row in the result table. C is positioned in this row and the values of this row are assigned to the parameters.

  • FETCH or FETCH NEXT: C is positioned in a row that is not the last row in the result table. C is positioned directly on the next row and the values in this row are assigned to the parameters.

  • FETCH PREV: C is positioned after a row in the result table. C is positioned in this row and the values of this row are assigned to the parameters.

  • FETCH PREV: C is positioned in a row that is not the first row in the result table. C is positioned in the immediately preceding row and the values in this row are assigned to the parameters.

<position>

A range of options exists for position specification using the key words POS, ABSOLUTE and RELATIVE.

ABSOLUTE

ABSOLUTE (<integer>)/ABSOLUTE (<parameter_spec>): Let x be the value of the integer (integer) or the parameter specification specified with the position. Let abs_x be the absolute amount of x.

  • FETCH ABSOLUTE and x is positive: FETCH ABSOLUTE corresponds to a FETCH POS.

  • FETCH ABSOLUTE and x=0: The return code 100 - Row not found is set.

  • FETCH ABSOLUTE and x is negative: C is set after the last row of the result table where FETCH PREV is executed abs_x times. The last row found is the result of the SQL statement. This description refers to the logic and not the flow of the statement. If abs_x is larger than the number of rows in the result table, the message 100 - Row not found is output.

POS

Regardless of whether an ORDER clause is specified, the rows in a result table are ordered implicitly to make internal numbering possible. You can display this by specifying a ROWNO column as a selected column. The specification of a position refers to this internal numbering.

  • POS (<unsigned_integer>)

    If a position that is less than or equal to the number of rows in the result table was defined with POS, C is set to the corresponding row and the values of this row are assigned to the parameters. If a position is specified that is greater than the number of rows in the result table, a corresponding message is displayed.

  • POS (<parameter_spec>)

    If a position is defined with POS, the parameter specification must denote a positive integer.

RELATIVE (<integer>)/RELATIVE (<parameter_spec>)

Let x be the value of the integer (integer) or parameter specification specified with the position. Let abs_x be the absolute amount of x.

  • FETCH RELATIVE and x is positive: FETCH NEXT is executed x times from the current position in the result table C.

  • FETCH RELATIVE and x=0: Corresponds to a FETCH SAME.

  • FETCH RELATIVE and x is negative: FETCH PREV is executed abs_x times starting from C. This description refers to the logic and not the flow of the statement. The return code 100 – Row not found is output if one of the conditions in the "Row Not Found" section is satisfied.

SAME

The last row found in the result table is output again.

<parameter_spec>

The parameter specification specified in a position (position) must denote an integer. The remaining parameters in the parameter specification are output parameters. The parameter identified by the nth parameter specification corresponds to the nth value in the current result table row. If the number of columns in this row exceeds the number of specified parameters, the column values for which no corresponding parameters exist are ignored. If the number of columns in the row is less than the number of specified parameters, no values are assigned to the remaining parameters. You must specify an indicator name in order to assign NULL values or special NULL values.

Numbers are converted and character strings are truncated or lengthened, if necessary, to suit the corresponding parameters. If an error occurs when assigning a value to a parameter, the value is not assigned and no further values are assigned to the corresponding parameters for this FETCH statement. Any values that have already been assigned to parameters remain unchanged.

Let p be a parameter and v the corresponding value in the current row of the result table.

  • v is a number: p must be a numeric parameter and v must be within the permissible range of p.

  • v is a character string: p must be an alphanumeric parameter.

Further Explanations

If FOR REUSE was not specified in the QUERY statement, subsequent INSERT-, UPDATE or DELETE statements that refer to the underlying base table and are executed by the current user or other users can cause multiple executions of a FETCH statement to denote different rows in the result table, even though the same position was specified.

You can prevent other users from making changes by executing a LOCK statement for the entire table or by using the 2, 3, 15, 20 or 30 isolation level with the CONNECT statement or the LOCK option of the QUERY statement. FOR REUSE must be specified if this is not possible or if users make changes to this table themselves. Changes made in the meantime are not visible in this case.

If a result table that was generated physically contains LOB columns and if the isolation levels 0, 1 and 15 are used, consistency cannot be ensured between the content of the LOB columns and that of the other columns. If the result table was not generated physically, consistency cannot be ensured on isolation level 0 only. For this reason, it is advisable to ensure consistency by using a LOCK statement or the isolation levels 2, 3, 20 or 30.

More Information

Data Query


Extraction (extraction_function) - SAP Documentation

Background documentation Extraction (extraction_function)

An extraction (extraction_function) is a function that extracts parts of a date, time or time stamp value or that calculates a date, time or time stamp value.

Structure

Syntax Syntax

  1. <extraction_function> ::=
  DATE(<expression>)
| DAY(<date_or_timestamp_expression>)
| HOUR(<time_or_timestamp_expression>)
| MICROSECOND(<expression>)
| MINUTE(<time_or_timestamp_expression>)
| MONTH(<date_or_timestamp_expression>)
| SECOND(<time_or_timestamp_expression>)
| TIME(<expression>)
| TIMESTAMP(<expression>[,<expression>])
| YEAR(<date_or_timestamp_expression>)

<date_or_timestamp_expression ::=
  <expression>

<time_or_timestamp_expression> ::=
  <expression>
End of the code.
Examples

SQL Tutorial, Date and Time Calculations

Explanation

When used in a function, the argument date_or_timestamp_expression must supply a date, time stamp or alphanumeric value that matches the current date or time stamp format. When used in a function, the argument time_or_timestamp_expression must supply a time, time stamp or alphanumeric value that matches the current time or time stamp format. Date and time values are available in a variety of date and time formats (ISO, USA, EUR, JIS, INTERNAL)

More Information

Functions: Overview


EXISTS Predicate (exists_predicate) - SAP Documentation

Background documentation EXISTS Predicate (exists_predicate)

The EXISTS predicate (exists_predicate) is a predicate that checks whether a result table contains at least one row.

Structure

Syntax Syntax

  1. <exists_predicate> ::=
  EXISTS <subquery>
End of the code.
Examples

SQL Tutorial, Subquery: Inner Queries

Explanation

The truth content of an EXISTS predicate is either true or false.

The subquery generates a result table. If this result table contains at least one row, EXISTS <subquery> is true.


ROWNO Predicate (rowno_predicate) - SAP Documentation

Background documentation ROWNO Predicate (rowno_predicate)

The ROWNO predicate (rowno_predicate) is a predicate that restricts the number of rows in a result table or the number of rows to be changed or deleted.

Structure

Syntax Syntax

  1. <rowno_predicate> ::=
  ROWNO < <unsigned_integer>
| ROWNO < <parameter_spec>
| ROWNO <= <unsigned_integer>
| ROWNO <= <parameter_spec>
End of the code.
Examples

SQL Tutorial, Selecting and Arranging Rows

Explanation

A ROWNO predicate may only be used in a WHERE clause that belongs to a QUERY, DELETE or UPDATE statement. The ROWNO predicate can be used in the WHERE clause like any other predicate, providing the following restrictions are observed:

  • The ROWNO predicate must be linked to the other predicates by a logic AND

  • The ROWNO predicate must not be negated

  • The ROWNO predicate may not be used more than once in the WHERE clause

You can specify the maximum number of rows in the result table using an unsigned integer (unsigned_integer) or a parameter specification (parameter_spec). If more lines are found, they are simply ignored and do not lead to an error message. Specifying a ROWNO predicate of the type ROWNO <= 0 results in an empty result table or no changed or deleted rows.

If a ROWNO predicate and an ORDER clause are specified in a QUERY statement, only the first n result rows are searched and sorted. The result usually differs from that which would have been obtained if a ROWNO predicate had not been used and if the first n result rows had been considered.

If a ROWNO predicate and a set function are specified in a QUERY statement, then the set function is only applied to the number of result rows restricted by the ROWNO predicate.

It is useful to specify a ROWNO predicate in an UPDATE or DELETE statement if so many rows have to be processed that the log information would exceed the available space as a result. Consequently, you can execute the required change statements in several substeps until the number of changed or deleted rows is less than the number specified in the ROWNO predicate.

If you use a LIMIT clause or a TOP syntax element, you cannot use the ROWNO predicate.

More Information

QUERY Statement


Simple CASE Statement (simple_case_statement) - SAP Documentation

Background documentation Simple CASE Statement (simple_case_statement)

The simple CASE statement (simple_case_statement) is a syntax element that can be used in a routine to define a database procedure (see CREATE DBPROC[EDURE] statement), a database function (see CREATE FUNCTION statement), or a trigger (see CREATE TRIGGER statement).

Structure

Syntax Syntax

  1. <simple_case_statement> ::=
  CASE <expression>
    <simple_case_when_clause>...
    [<case_else_clause>]
  END [CASE]

<simple_case_when_clause> ::=
  WHEN <literal>[,...] THEN <statement>;

<case_else_clause> ::=
  ELSE <statement>;
End of the code.
Explanation

A CASE statement (case_statement) allows the conditional execution of a statement depending on search conditions or equality of operands.

In the case of a simple CASE statement (simple_case_statement), the expression is compared with the literals. If the expression matches a literal, the associated statement is executed and the CASE statement ends.

Examples

CASE digit

WHEN 0 THEN toCHAR = 'zero';

WHEN 1 THEN toCHAR = 'one';

WHEN 2 THEN toCHAR = 'two';

WHEN 3 THEN toCHAR = 'three';

WHEN 4 THEN toCHAR = 'four';

WHEN 5 THEN toCHAR = 'five';

WHEN 6 THEN toCHAR = 'six';

WHEN 7 THEN toCHAR = 'seven';

WHEN 8 THEN toCHAR = 'eight';

WHEN 9 THEN toCHAR = 'nine';

ELSE STOP(-29000, 'no digit');

END CASE

If no matching literal or fulfilled search condition exists in a CASE statement, the statement defined in the ELSE branch is executed.

If there is no ELSE branch, the runtime error -28901 is returned.

More Information

General CASE Statement (searched_case_statement)


Simple CASE Function (simple_case_function) - SAP Documentation

Background documentation Simple CASE Function (simple_case_function)

The simple CASE function (simple_case_function) is a special function that compares an expression with a set of simple expressions to determine a result expression.

Structure

Syntax Syntax

  1. <simple_case_function> ::=
  CASE <check_expression>
    WHEN <search_expression> THEN <result_expression>
    [...]
    [ELSE <default_expression>]
  END

<check_expression> ::=
  <expression>

<search_expression> ::=
  <expression>

<result_expression> ::=
  <expression>

<default_expression> ::=
  <expression>
End of the code.
Examples

SQL Tutorial, Functions

Explanation

CASE compares the value of the comparison expression check_expression with the values of the expressions search_expression, one after the other. If values match, the result of the simple CASE function is the value of the result_expression that belongs to the search_expression.

If no match is found, CASE returns the result of default_expression. If default_expression is not specified, the result of CASE is the NULL value.

The data types of check_expression and search_expression must be comparable. The data types of result_expression and default_expression must be comparable. The data types of search_expression and result_expression do not have to be comparable.

If the values of the expressions check_expression and search_expression are NULL values, then a match exists. The comparison of the special NULL value with any other value never results in a match.

More Information

General CASE Function (searched_case_function)


-1108: Too complicated SQL statement (Correlated row too long) - SAP Documentation

Background documentation -1108: Too complicated SQL statement (Correlated row too long)

Explanation

The processing of an SQL statement containing at least one correlated subquery requires the generation of an internal result whose rows would exceed the valid length.

User Response

Check whether some columns within the SELECT statement can be omitted or the SQL statement can be reformulated in such a way that less or no corresponding (correlated) columns are used.


Function (function_spec) - SAP Documentation

Background documentation Function (function_spec)

There is a series of functions (function_spec) that can be applied to a value (row) as an argument and supply a result. These functions (predefined and user defined) and their calls are introduced in the following sections.

Structure

Syntax Syntax

  1. <function_spec> ::=
  <arithmetic_function>
| <conversion_function>
| <date_function>
| <dbfunction_call>
| <extraction_function>
| <special_function>
| <string_function>
| <time_function>
| <trigonometric_function>
End of the code.
Examples

SQL Tutorial, Functions

Explanation

The arguments and results of the functions are numeric, alphanumeric or Boolean values that are subject to certain restrictions. LOB columns are not allowed as arguments, with the exception of those explicitly stated.

More Information

Functions: Overview


RELEASE Statement (release_statement) - SAP Documentation

Background documentation RELEASE Statement (release_statement)

The RELEASE statement (release_statement) terminates a user transaction and database session.

Structure

Syntax Syntax

  1. <release_statement> ::=
  COMMIT [WORK] RELEASE
| ROLLBACK [WORK] RELEASE
End of the code.
Explanation

Ending a session using a RELEASE statement implicitly deletes all result tables, the data stored in temporary base tables, and the metadata of these tables.

COMMIT [WORK] RELEASE

The current transaction is aborted without opening a new one. The user session is ended.

If the database system has to reverse the current transaction implicitly, COMMIT WORK RELEASE fails, and a new transaction is opened. The user session is not ended in this case.

ROLLBACK [WORK] RELEASE

The current transaction is aborted without opening a new one. Any database modifications performed during the current transaction are undone. The user session is ended. ROLLBACK WORK RELEASE has the same effect as the ROLLBACK statement followed by COMMIT WORK RELEASE.

More Information

Transactions


Name of a Referential Constraint (referential_constraint_name) - SAP Documentation

Background documentation Name of a Referential Constraint (referential_constraint_name)

The name of a referential constraint (referential_constraint_name) identifies a referential constraint. This integrity condition specifies deletion and existence dependencies between two tables.

Structure

Syntax Syntax

  1. <referential_constraint_name> ::=
  <identifier>
End of the code.
Examples

SQL Tutorial, Foreign Key Dependencies Between Tables

Explanation

An error message is output if the name consists of more than 32 characters.

More Information

Referential CONSTRAINT definition

ALTER TABLE Statement

Ensuring Data Integrity


Configuration File for NetWorker - SAP Documentation

Example documentation Configuration File for NetWorker

You can make creating the configuration file for NetWorker easier by using the following example and adjusting it to suit your needs. If you do not want a certain parameter to be set by the parameter file, you must invalidate or delete the relevant keyword.

Content of the Configuration File

NSR_HOST p47579

NSR_HOME "C:\Program Files\nsr\bin"

NSR_POOL MAXDBPOOL

NSR_EXPIRE year

NSR_NOTVERBOSE RECOVER

NSR_EBIDTYPE NSAVETIME

NSR_USEOUTPUT SAVE

NSR_IGNOREERROR " unknown error 109 (0x6d)"

NSR_IGNOREERROR " using unlocked access"

NSR_IGNOREERROR " The pipe has been ended."

NSR_SAVEINTERVAL 60

NSR_BACKUPNAME MAXDB:<database_name>_on_<node>

NSR_AVOIDPSSIDBUG YES

NSR_SAVETIMEFORMAT "yyyy/mm/dd HH:MM:SS AM"

Explanation
Keyword | Value | Explanation
NSR_HOST | p47579 | The NetWorker server is running on computer p47579.
NSR_HOME | "C:\Program Files\nsr\bin" | The NetWorker client is installed on the database computer in the directory C:\Program Files\nsr\bin.
NSR_POOL | MAXDBPOOL | Backups are stored in the NetWorker pool MAXDBPOOL.
NSR_EXPIRE | year | The backups have an expiration time of one year.
NSR_NOTVERBOSE | RECOVER | The NetWorker RECOVER program runs without the -v option.
NSR_EDITTYPE | NSAVETIME | The backup time is used to identify backups.
NSR_USEOUTPUT | SAVE | The output of the NetWorker SAVE program is scanned for errors during every backup.
NSR_IGNOREERROR | " unknown error 109 (0x6d)" " using unlocked access" " The pipe has been ended." | The messages <pipe_name>: unknown error 109 (0x6d), <pipe_name>: using unlocked access and <pipe_name>: The pipe has been ended are ignored for the pipes in use.
NSR_SAVEINTERVAL | 60 | The system waits 60 seconds between two SAVE calls during parallel backups.
NSR_BACKUPNAME | MAXDB:<database_name>_on_<node> | If. for example, the name of the database is DEMODB and the name of the database computer is p47579, the backups in NetWorker are created with the name MAXDB:DEMODB_on_p47579.
NSR_AVOIDPSSIDBUG | YES | The PSSID bug in the NetWorker program MMINFO is avoided.
NSR_SAVETIMEFORMAT | "yyyy/mm/dd HH:MM:SS AM" | The NetWorker MMINFO program outputs dates in the specified format, for example 2007/12/31 11:59:58 AM.

More Information

Creating the Configuration File for NetWorker


How the SAP MaxDB Adapter Program Works - SAP Documentation

Background documentation How the SAP MaxDB Adapter Program Works

To enable you to connect Backint for Oracle to SAP MaxDB, an adapter program is supplied with the database software. This program meets the Backint for SAP MaxDB specifications if it is used with a Backint for Oracle program.

How Backups Work

The backup data of the database system is received by one or more pipes and saved in temporary files. You can define the number and size of these files in the parameter file of the SAP MaxDB adapter program.

The SAP MaxDB adapter program calls the third-party backup tool and saves the temporary files by using the Backint for Oracle program. The temporary files are then deleted. This step is repeated until all data has been saved.

To speed up the backup process, you need to configure the adapter program to enable parallel backups. To do this, you define a group of parallel data carriers and a separate staging area for each pipe. In this way, new temporary files are created while existing temporary files are saved by using Backint for Oracle.

Administrative information is saved in a backup history, which the system backs up using Backint for Oracle after each backup.

How Restores Work

The information about the backup history is evaluated by the adapter program.

The adapter program uses the backup history and Backint for Oracle to restore the required temporary files in the correct sequence. The temporary files are transferred by the adapter program to the database system by using one or more pipes.

If an error occurs and the backup history is no longer available, you have to manually restore the last version of the backup history by using Backint for Oracle.

Make sure that you are familiar with Backint for Oracle and the handling of your third-party backup tool before starting the process.


Block Diagram: Backing Up and Restoring - SAP Documentation

Background documentation Block Diagram: Backing Up and Restoring

The following block diagram illustrates the software components that are involved when you back up and restore data. The diagram also shows how these components work together with a third-party backup tool.

This graphic is explained in the accompanying text.

Backing Up and Restoring

Description of the Backup Process

The Database Manager client is used to send the command that saves the data; this calls the DBM Server program. If you are using a Unix operating system, the DBM Server creates one or more pipes. If you are using Microsoft Windows, the pipes are created by the database kernel. The DBM Server sends the information, which starts the backup process to the database kernel. As soon as the data is written to the pipes, the DBM Server program calls the third-party backup tool. The third-party backup tool reads the data from the pipes and saves it on a data carrier.

Description of the Restore Process

The Database Manager client is used to send the command that restores the data; this calls the DBM Server program.

If you are using a Unix operating system, the DBM Server creates one or more pipes. If you are using Microsoft Windows, the pipes are created by the database kernel.

The DBM Server sends the information, which starts the restore process to the database kernel. The program then calls the third-party backup tool and transfers the information about which backup has to be restored.

The client of the third-party backup tool requests the specified data carrier from the third-party backup server. The third-party backup server gets the data carrier, reads the data of the backup, and transfers the data to the client of the third-party backup tool. The client writes the data to the pipe/s. Here they are read by the database kernel and transferred to the database system.


Block Diagram: Importing and Exporting Data - SAP Documentation

Background documentation Block Diagram: Importing and Exporting Data

The following block diagram illustrates the software components that are involved when you import and export data. The diagram also shows how the components work together with a third-party backup tool.

This graphic is explained in the accompanying text.

Exporting and Importing Data

Description of the Import Procedure

The Loader client is used to send the command that imports the data; this calls the Loader Server program. The Loader Server then creates the pipes. At the same time, it calls the third-party backup tool and tells the tool which data carrier to load the data from. The client of the third-party backup tool requests the specified data carrier from the third-party backup server. The third-party backup server gets the data carrier, reads the data to be imported from the volume, and transfers the data to the client of the third-party backup tool. The client writes the data sequentially to the pipes. The Loader Server then reads the data from the pipes and imports it into the database.

Description of the Export Procedure

The Loader client is used to send the command that exports the data; this calls the Loader Server program. The Loader Server then creates the pipes. The Loader Server starts to export the data and writes it sequentially to the pipes. At the same time, it calls the third-party backup tool. The third-party backup tool reads the data from the pipes sequentially and saves it on a data carrier.


Setting Tool-Independent Environment Variables for Database Manager - SAP Documentation

Background documentation Setting Tool-Independent Environment Variables for Database Manager

To enable Database Manager to access the variables it needs on the database computer, or to force Database Manager to export environment variables before it calls a backup tool, you must define these environment variables with the help of Database Manager CLI.

You can set these environment variables for each backup tool. The values you define here override any values defined for the variables in the environment or in the configuration file of the backup tool.

  • If you want to override the environment variable TEMP or TMP, proceed as described in Setting TEMP or TMP.

  • If you want to define timeouts for third-party backup tools, proceed as described under Setting DBM_TTO_SUCCESS and DBM_TTO_FAILURE.

    In this way, you can define the time after which the backup tool should terminate the backup after all the data has been copied to the pipe(s)), or how long it should wait before interrupting the backup if an error occurs.

    If you set these parameters, you override the values defined for TIMEOUT_SUCCESS and/or TIMEOUT_FAILURE in the Backint for SAP MaxDB configuration file.

  • If you want to define time-outs for the database kernel when using third-party backup tools, proceed as described under Setting DBM_KTO_SUCCESS and DBM_KTO_FAILURE.

    In this way, you can define how much time the database kernel should have to terminate after the backup tool has terminated, or after which period of time the action should be cancelled if an error occurs.


Connecting to a Backint for SAP MaxDB Interface - SAP Documentation

Procedure documentation Connecting to a Backint for SAP MaxDB Interface

Third-party backup tools with their own Backint for SAP MaxDB interface are still in the development phase. The requirements that need to be met by an interface of this type are documented in Backint for SAP MaxDB. You can find this document in the SAP MaxDB archive at http://maxdb.sap.com/archive/.

The section Connecting to a Backint for Oracle Interface describes a Backint for SAP MaxDB implementation, which uses an adapter program. This program is developed by SAP and supplied with the SAP MaxDB software package. It is intended for the connection to Backint for Oracle and requires you to create a configuration file. However, this is identical to the configuration file that would need to be created for a third-party backup tool with its own Backint for SAP MaxDB interface, where the requirements under Backint for SAP MaxDB have been met by the vendor.

Prerequisites

The version of your SAP MaxDB database system is 7.5 or higher.

Note Note

If your SAP MaxDB version is lower than 7.5, refer to the previous version of this documentation at http://maxdb.sap.com/doc/7_6/43/e0f23ab6b4317de10000000a11402f/frameset.htm.

End of the note.

Procedure

To connect to a Backint for SAP MaxDB interface, perform the following steps:

  1. Create the configuration file for Backint for SAP MaxDB, see case 2.

  2. Export the environment variables of the third-party backup tool if this is required by the backup tool vendor.

  3. Set the environment variable BSI_ENV for Database Manager.

  4. If necessary, set the tool-independent environment variables for Database Manager.


Connecting to a Backint for Oracle Interface - SAP Documentation

Procedure documentation Connecting to a Backint for Oracle Interface

Procedure

Many third-party backup tools have a Backint for Oracle interface.

In principle, the program Backint for Oracle can backup any files in the file system, regardless of whether the Oracle database system is installed on the computer or not. The following description of how to connect SAP MaxDB to a Backint for Oracle interface assumes that this feature is guaranteed by the vendor of the third-party backup tool with the Backint for Oracle interface.

After the SAP MaxDB software has been configured accordingly, the SAP MaxDB database tools for backing up, restoring, importing, and exporting data can be connected to the interface of a Backint for Oracle backup tool.

The connection is made by using the Backint for Oracle program of the third-party backup tool and an adapter program, which implements a Backint for SAP MaxDB program. This adapter program is part of your SAP MaxDB installation.

After you have triggered the relevant action using the database tool, the adapter program copies the data in segments into temporary files. The adapter program calls the Backint for Oracle program several times in succession to save these temporary files by means of the third-party backup tool.

For SAP MaxDB software of versions 7.5 and above, there are no restrictions on connecting SAP MaxDB to third-party backup tools using the Backint for Oracle interface.

More Information

How the SAP MaxDB Adapter Program Works

Configuring the Backint for Oracle Connection


Connecting to NetWorker - SAP Documentation

Procedure documentation Connecting to NetWorker

SAP MaxDB supports the use of the NetWorker backup tool (from Legato) for backing up, restoring, importing, and exporting data. Before you can use the NetWorker backup tool you must configure the SAP MaxDB software accordingly.

Prerequisites

  • The version of your SAP MaxDB database system is 7.5 or higher.

    Note Note

    If your SAP MaxDB version is lower than 7.5, refer to the previous version of this documentation at http://maxdb.sap.com/doc/7_6/43/e0f23ab6b4317de10000000a11402f/frameset.htm.

    End of the note.

  • If you want to use NetWorker on Unix to create a database backup on one computer and to restore this backup in a second database on a second computer, both the databases must be run by operating system users with the same user ID. Otherwise NetWorker fails and consequently, MaxDB cannot restore the backup in the second database on the second computer.

Procedure

  1. Set the environment variables NSR_ENV

  2. Create the configuration file for NetWorker

  3. If necessary, set the tool-independent environment variables for Database Manager.


Configuring the Backint for Oracle Connection - SAP Documentation

Procedure documentation Configuring the Backint for Oracle Connection

Configure the SAP MaxDB software for the Backint for Oracle Connection. This enables you to connect the SAP MaxDB database tools for backing up, restoring, importing, or exporting data to the Backint for Oracle interface of a third-party backup tool.

Prerequisites

  • Your third-party backup tool has a Backint for Oracle interface.

  • The version of your SAP MaxDB database system is 7.5 or higher.

    Note Note

    If your SAP MaxDB version is lower than 7.5, refer to the previous version of this documentation at http://maxdb.sap.com/doc/7_6/43/e0f23ab6b4317de10000000a11402f/frameset.htm

    End of the note.

  • Your Backint for Oracle program is able to save any files in a file system, even if you do not have an Oracle database system installed on your computer.

Procedure

To connect SAP MaxDB to the Backint for Oracle interface, perform the following steps:

  1. Configure the Backint for Oracle interface of the third-party backup tool in accordance with the vendor's instructions.

    If you have to create a configuration file here, you have to specify the file name in the parameter file of the adapter program (see step 2).

  2. Create the parameter file for the SAP MaxDB adapter program

    This file connects the SAP MaxDB adapter program with a third-party backup tool. If necessary, enter the name of the configuration file for the third-party backup tool in this file as well (see step 1).

    Example

  3. Create the configuration file for Backint for SAP MaxDB (case 1)

    This file connects Database Manager to the SAP MaxDB adapter program. Enter the name of the parameter file for the SAP MaxDB adapter program in this file also (see step 1).

    Example

  4. Export the environment variables for the backup tool if you are required to do so by the third-party backup tool vendor.

  5. Set the environment variable BSI_ENV for the Database Manager program.

  6. If necessary, set the tool-independent environment variables for Database Manager.


Connecting to TSM - SAP Documentation

Procedure documentation Connecting to TSM

SAP MaxDB supports the use of the TSM backup tool from IBM/Tivoli for backing up, restoring, importing, and exporting data. Before you can use the TSM backup tool you must configure the SAP MaxDB software using the TSM client adint2. If this client is not available for the platform you are using, you can also connect TSM to SAP MaxDB by using Backint for Oracle (see Connecting to a Backint for Oracle Interface).

Note Note

The adint2 program is not contained in a standard installation of the TSM client. The program is provided separately by IBM. For more information, see http://www.ibm.com.

End of the note.

Prerequisites

You have installed the TSM client adint2.

The version of your SAP MaxDB database system is 7.5 or higher.

Note Note

If your SAP MaxDB version is lower than 7.5, refer to the previous version of this documentation at http://maxdb.sap.com/doc/7_6/43/e0f23ab6b4317de10000000a11402f/frameset.htm.

End of the note.

Procedure

  1. Set the environment variables ADINT and ADA_OPT.

  2. If necessary, set the tool-independent environment variables for Database Manager.

More Information

Connecting to a Backint for Oracle Interface


Creating the Parameter File for the SAP MaxDB Adapter Program - SAP Documentation

Background documentation Creating the Parameter File for the SAP MaxDB Adapter Program

If you want to use a third-party backup tool with a Backint for Oracle interface for a SAP MaxDB database system, you first have to configure the connection between SAP MaxDB and the Backint for Oracle program (Configuring the Backint for Oracle Connection). Creating the parameter file for the SAP MaxDB adapter program is one of the required steps for this configuration.

In the parameter file, you specify where the adapter program generates the required temporary files and the location of the interface program Backint for Oracle.

Note Note

Enter the name of this parameter file in the configuration file of Backint for SAP MaxDB under the keyword PARAMETERFILE when configuring Backint for SAP MaxDB.

End of the note.

On every line in the parameter file, specify a parameter of the SAP MaxDB adapter program. Specify the keyword for the parameter at the beginning of each line and then the relevant value(s). Lines that do not begin with keywords are ignored by the system.

Structure

<key_string> <value_string>

Options
Option | Description
<key_string> | The key word for a parameter may consist of one or more words
<value_string> | Value(s) of the parameter
Define the following parameters for the SAP MaxDB adapter program:

Parameter

Syntax

Description

Absolute path and size of a temporary file

STAGING AREA:<absolute_path>/<file_name> <size> [KB|MB|GB]

You can define up to 256 temporary files. If you do not specify a unit for the size, it is configured in bytes.

The program uses precisely one temporary file for each pipe.

Maximum number of temporary files to be processed by Backint for Oracle concurrently.

FILES PER BACKINT CALL: <number>

Default value: 1

The program can back up temporary files and generate other temporary files at the same time, providing that the <number> defined here is less than the number of pipes used during backup or recovery.

Absolute path and name of the Backint for Oracle program

BACKINT: <absolute_path>/<file_name>

-

Absolute path and name of the configuration file for the Backint for Oracle program

PARAMETERFILE OF BACKINT: <absolute_path>/<file_name>

Set this parameter only if the third-party backup tool requires you to create a configuration file.

Absolute path and name of the backup history

HISTORY FILE: <absolute_path>/<file_name>

The backup history contains the information, which is required for the recovery function.

Absolute path and name of the standard input file

INPUTFILE FOR BACKINT: <absolute_path>/<file_name>

These files must differ from the files that are configured for the Backint for SAP MaxDB connection (see INPUT, OUTPUT, ERROROUTPUT in Creating the Configuration File for Backint for SAP MaxDB).

Absolute path and name of standard output file

OUTPUTFILE FOR BACKINT: <absolute_path>/<file_name>

Absolute path and name of standard error output file

ERRORFILE FOR BACKINT: <absolute_path>/<file_name>

Maximum waiting time in seconds between creating a temporary file and starting to save the file using Backint for Oracle

MAXIMAL DELAY OF BACKINT CALL: <number>

Default value: 10

This value prevents deadlocks in exceptional situations during a parallel backup or a recovery.

If the temporary files are created at different speeds and one temporary file is already complete, the adapter program waits the maximum time specified here for a further temporary file to be completely created. If no further file is created within the specified time, the existing temporary file is saved.

Specify a time period which allows that all temporary files configured (FILES PER BACKINT CALL:) can be saved at the same time.

Specifies whether or not the adapter program should ignore the closing slash (/ or \) of an absolute directory name for Backint for Oracle.

OMIT LAST DIRECTORY DELIMITER ON RESTORE: <option>

<option> ::= YES | NO

NO: Default value

The slash or backslash is not ignored.

YES: The slash or backslash is ignored.

Use this option to avoid problems with Backint for Oracle implementations that do not expect a closing slash (/ or \) at the end of a directory name.

Value of environment variable BI_CALLER

BI_CALLER VALUE: <value>: <value>

Set this parameter only if the third-party backup tool requires you to set this parameter.

In accordance with the system default, the variable BI_CALLER is removed from the environment before Backint for Oracle is called.

For most Backint for Oracle implementations, you do not need to set this value, as these implementations do not require the environment variable BI_CALLER.

More Information

Example of a Parameter File for the SAP MaxDB Adapter Program


Creating the Configuration File for Backint for SAP MaxDB - SAP Documentation

Procedure documentation Creating the Configuration File for Backint for SAP MaxDB

Creating the configuration file for Backint for SAP MaxDB is a necessary step for connecting SAP MaxDB to a third-party backup tool via the Backint for Oracle interface or the Backint for SAP MaxDB interface. By means of this configuration file, you inform Database Manager where the Backint for SAP MaxDB program is located and how to address it.

Case 1: Connecting to Backint for Oracle Using the SAP MaxDB Adapter Program

If you want to use a third-party backup tool with a Backint for Oracle interface for an SAP MaxDB database system, you first must configure the connection between SAP MaxDB and the Backint for Oracle program (see Configuring the Backint for Oracle Connection). Creating the configuration file for Backint for SAP MaxDB is one of the necessary steps for this configuration.

Case 2: Connecting to the Backint for SAP MaxDB Interface of a Backup Tool

If you want to use a third-party backup tool with a Backint for SAP MaxDB interface for an SAP MaxDB database system, you must create a configuration file for Backint for SAP MaxDB. Essentially, this is the same as the configuration file in case 1. Differences are taken into account in the following description.

It is assumed that the Backint for SAP MaxDB interface of the third-party vendor meets the Backint for SAP MaxDB specification.

Procedure

Specify a parameter of Database Manager in each line in the configuration file. Specify the keyword for the parameter at the beginning of each line and then the relevant value(s).

Lines that do not begin with keywords are ignored by the system.

Syntax

<key_string> <value_string>

Options
Option | Description
<key_string> | Keyword for a parameter, can consist of one or more words
<value_string> | Value(s) of the parameter

Define the following parameters for connecting Backint for SAP MaxDB to Database Manager:

Parameters

Syntax

Description

Absolute path and name of the Backint program

BACKINT <absolute_path>/<file_name>

Case 1- Connecting to a Backint for Oracle interface using the SAP MaxDB adapter program:

Enter the absolute path and name of the adapter program supplied with SAP MaxDB.

Case 2 - Connecting to the Backint for MaxDB interface of the third-party backup tool:

Enter the absolute path and name of the Backint for SAP MaxDB program.

Absolute path and name of the standard input file

INPUT <absolute_path>/<file_name>

Database Manager creates these files temporarily and uses them as standard input for Backint for SAP MaxDB.

The default file is bsi.in in the run directory of the database.

Absolute path and name of the standard output file

OUTPUT <absolute_path>/<file_name>

Database Manager creates these files temporarily and uses them as standard output for Backint for SAP MaxDB.

The default file is bsi.out in the run directory of the database.

Absolute path and name of the standard error output file

ERROROUTPUT <absolute_path>/<file_name>

Database Manager creates these files temporarily and uses them as standard error output for Backint for SAP MaxDB.

The default file is bsi.err in the run directory of the database.

Absolute path and name of the configuration file of the Backint for SAP MaxDB program

PARAMETERFILE <absolute_path>/<file_name>

Case 1- Connecting to a Backint for Oracle interface using the SAP MaxDB adapter program:

Enter the absolute path and name of the parameter file for the adapter program.

Case 2 - Connecting to the Backint for SAP MaxDB interface of a third-party backup tool:

Enter the absolute path and name of a configuration file (you may have to define this file) for the Backint for SAP MaxDB program.

Time in seconds.

Time after which the backup tool automatically quits once the database kernel has copied all data successfully

TIMEOUT_SUCCESS <number>

Default value: 300

Case 1- Connecting to a Backint for Oracle interface using the SAP MaxDB adapter program:

Choose a value sufficiently large to enable the third-party backup tool to back up all data copied onto tape during this time. The number of temporary files and their configured size are defining factors for this.

Case 2 - Connecting to the Backint for SAP MaxDB interface of a third-party backup tool:

Time span after which Database Manager should quit the backup tool if all data has been copied to the pipes.

Note that the backup tool always quits after the defined period, regardless of whether all data copied from the database kernel has been backed up or not.

Time in seconds.

Time after which the third-party backup tool automatically quits if the database kernel has interrupted the backup due to an error.

TIMEOUT_FAILURE <number>

Default value: 300

Make sure you allow sufficient time for the third-party backup tool to save all data copied by the database kernel, as the backup tool always quits when the timeout is reached, even if not all the copied data has been saved. On the other hand, you must be careful not to specify too much time. Otherwise a situation may occur where a backup interrupted by the database kernel blocks other backups from being started (such as automatic nighttime backups).

Absolute path of the run directory of the source database

ORIGINAL_RUNDIRECTORY <absolute_path>

Default value: Run directory of the current database

Only specify this parameter for a migration. A prerequisite for migration from one computer to another is that the version of Backint for SAP MaxDB that you are using can make backups from the source computer available on the target computer.

Pay attention to uppercase and lowercase spelling when you specify this value.

Activating and deactivating the check mechanism of Backint for SAP MaxDB implementation.

This checks whether backups listed in the backup history are actually available in the backup tool.

CHECK_AVAILABILITY <option>

<option> :: = YES | NO | <definition>

<definition> :: = <number> BACKUPS | <number> <time_period>

<time_period> :: = days | weeks | months | years

YES: The system checks whether backups listed in the backup history are available for the system in the backup tool (default value)

NO: The system assumes that backups listed in the backup history are actually available in the third-party backup tool without carrying out a check beforehand.

<definition>: The system checks whether the specified number of last backups or the backups made in the designated period are available. It assumes that the rest of the backups are available.

<number>: Number, 1 ≤ <number> ≤ 2^31–1 applies

days: Days

weeks: Weeks

months: Months

years: Years

Note Note

Define this parameter only if you think the system is taking too long to evaluate external backup IDs.

End of the note.

More Information

Example of a Configuration File for Backint for SAP MaxDB

How the SAP MaxDB Adapter Program Works

Concepts of the Database System, Database Tools

For the Backint for SAP MaxDB documentation, see the SAP MaxDB archive at http://maxdb.sap.com/archive/.


Creating the Configuration File for NetWorker - SAP Documentation

Procedure documentation Creating the Configuration File for NetWorker

Procedure

Creating the configuration file for NetWorker is a necessary step for connecting SAP MaxDB to NetWorker. By means of this configuration file, you inform Database Manager where the Networker program is located and how to address it.

Specify a parameter of Database Manager in each line in the configuration file. Specify the keyword for the parameter at the beginning of each line and then the relevant value(s).

Lines that do not begin with keywords are ignored by the system.

Syntax

<key_string> <value_string>

Options
Option | Description
<key_string> | Keyword for a parameter Can consist of one or more words
<value_string> | Value(s) of the parameter

Define the following parameters for connecting NetWorker to Database Manager:

Parameters

Syntax

Description

Absolute path of the directory where NetWorker is installed

NSR_HOME <absolute_path>

The NetWorker programs SAVE, MMINFO, and RECOVER are stored in this directory.

Name of the NetWorker server

NSR_HOST <name>

-

Name of the NetWorker tape pool

NSR_POOL <name>

If you specify a name, it overwrites the default value for the tape pool which was configured in NetWorker.

Expiry date or shelf-life of backup

NSR_EXPIRE <value>

This value is transferred to the NetWorker program SAVE and overwrites the default value for the expiry date or shelf-life which was configured in NetWorker.

See the NetWorker documentation for permitted entries.

Specifies which of the NetWorker programs SAVE and RECOVER is started with the option -v

NSR_NOTVERBOSE <option>

<option> :: = NONE | SAVE | RECOVER | "SAVE AND RECOVER"

You set this parameter in cases in which the NetWorker programs do not support this option.

NONE: The NetWorker programs SAVE and RECOVER are started with the option -v (default value)

SAVE: The NetWorker program SAVE is started without the -v option whereas the NetWorker program RECOVER is started with the -v option.

RECOVER: The NetWorker program SAVE is started with the -v option whereas the NetWorker program RECOVER is started without the -v option.

"SAVE AND RECOVER": The NetWorker programs SAVE and RECOVER are started without the -v option.

Specifies whether the output of the NetWorker program SAVE should be analyzed

NSR_USEOUTPUT <option>

<option> ::= SAVE | NONE

SAVE: The output of the NetWorker SAVE program is checked for error messages (default value).

NONE: The output of the NetWorker program SAVE is not checked for error messages. Only the return code of the program is used.

Since the program SAVE can also return the value 0 in the case of an error, we recommend that you do not use the value NONE.

Error messages of the NetWorker program SAVE to be ignored

NSR_IGNOREERROR <error_text>

All error messages in the form <pipe_name>:<error_text> are ignored.

Repeat this parameter definition for each error message to be ignored.

Specifies whether Database Manager uses backup times or NetWorker Save Set Identifiers (for restores)

NSR_EBIDTYPE <option>

<option> :: := NSAVETIME | SSID

NSAVETIME: Backups are identified by means of their backup time (default value)

This is also the recommended value since the NetWorker program RECOVER does not require any operating system user rights.

SSID: Backups are identified using the NetWorker Save Set Identifier.

Waiting time (in seconds) between two SAVE calls during parallel backups

NSR_SAVEINTERVAL <time>

Default value: 10

Name under which the backup in NetWorker should be saved

NSR_BACKUPNAME <name>

Any string of characters which can contain the placeholders <database_name> and/or <node>.

Default value: database name

When backing up or restoring with NetWorker, the placeholders are replaced with the database name and/or the database computer.

Avoids a NetWorker software error

NSR_AVOIDPSSIDBUG <option>

<option> :: = NO | YES | "WITHOUT DOUBLE QUOTES"

As of NetWorker 6.0, a known software error exists in the MMINFO program when using the option -q pssid=0 (PSSID bug). You can avoid the error by defining this parameter.

NO: The NetWorker program MMINFO is called with the option -q pssid=0 (default value)

YES: The system inserts the option -o "VSS:*=off" into the NetWorker parameter list, thus getting around the software error in the MMINFO program (only for NetWorker).

"WITHOUT DOUBLE QUOTES": The system inserts the option -o VSS:*=off into the list of networker parameters and thus gets around the software error in the MMINFO program (only for NetWorker).

Date format used for analyzing the output of the NetWorker program MMINFO

NSR_SAVETIMEFORMAT <format>

<format> :: =[<separator_definition><separator>]<datetime_format>[<separator><AM_definition>][<separator><PM_definition>]

<separator_definition> :: = SEPARATOR=<new_separator>

<new_separator> ::= sign that does not occur in <date_time_format>, <AM_definition> and <PM_definition>

<separator> :: = when <separator_definition> is missing, the comma sign (','), otherwise <new_separator>

<datetime_format> :: = { <year> | <month> | <day> | <hour> | <minute> | <second> | <AM> | <PM> [<datetime_separator>] }

<datetime_separator> :: = ein beliebiges Zeichen außer y, m, d, H, M, S, a, A, p, P

<year> :: = yy | yyyy

<month> :: = mm

<day> :: = dd

<hour> :: = HH

<minute> :: = MM

<second> :: = SS

<AM> :: = am | AM | a.m. | A.M.

<PM> :: = pm | PM | p.m. | P.M.

<AM_definition> :: = AM=<local_AM_string>

<local_AM_string> :: = string in any order without the sign <separator>

<PM_definition> :: = PM=<local_PM_string>

<local_PM_string> :: = string in any order without the sign <separator>

This specification is required for cases in which the current default value does not correspond to the NetWorker output.

Default values are mm/dd/yy HH:MM:SS AM: for NetWorker data outputs that are 8 characters long or

mm/dd/yyyy HH:MM:SS AM: for NetWorker date outputs that are 10 characters long.

You can only configure one format. This format is allowed to differ from the default values, providing that the specified syntax elements are used.

yy|yyyy: Year

mm: Month

dd: Day

HH: Hour

MM: Minute

SS: Second

AM | PM: in the morning or in the afternoon

Specifies how the size specification for backups transferred with the NetWorker SAVE program is to be used

NSR_SIZEROUNDUP <option>

<option> :: = NOROUNDUP | FIRSTDECIMAL | NORMAL | LASTINTEGER

This specification is necessary for cases in which the size transferred by the NetWorker program SAVE is rounded down for the backup.

NOROUNDUP: Default value. The size specification is used without being changed.

FIRSTDECIMAL: The size specification is increased by 0.1. (For example: backup size 14 GB continues to be used with 14.1 GB).

NORMAL: The size specification is increased by 0.5.

LASTINTEGER: The size specification is increased by 1.

Character string which is used as the value for the MMINFO option -t

NSR_AVOIDTIMEBUG <value>

This specification is necessary for cases in which the NetWorker program MMINFO does not work without the option –t.

This parameter can only be used for the following database version as of the specified build numbers: 7.2.05 from build 018, 7.3.00 from build 022, 7.4.02 from build 004, 7.4.03 from build 000.

The character string must match the format expected by MMINFO. If the character string consists of multiple words, you have to set them in single quotation marks.

Note that backups that are not within the time span specified by the character string are regarded by MaxDB as no longer available for a restore.

Client name which is used by Database Manager when calling the NetWorker program MMINFO as well as the NetWorker program SAVE where required. This name is used instead of the computer name supplied by the operating system.

NSR_CLIENT

The value of this parameter must match the client name configured in NetWorker.

Once this client name has been specified or changed for the first time, any backups executed previously can only be accessed as backups from another client. These are identified as UNAVAILABLE in the backup history. Their availability can only be determined using the DBM command backup_ext_ids_get. When using this command, the previous client name and not the database computer must be entered as a parameter.

There are no other restrictions when restoring.

Definition of how the value selected for NSR_CLIENT is to be used.

NSR_USECLIENTFOR <option>

<option> :: = "SAVE and MMINFO" | MMINFO

MMINFO: The selected value for NSR_CLIENT is only used for the NetWorker program MMINFO (default value).

"SAVE and MMINFO": The selected value for NSR_CLIENT is used for the NetWorker programs SAVE and MMINFO. This enables you to use a logical computer name for backups or a second network card.

By specifying "SAVE and MMINFO", you can check whether a backup is being executed with your NetWorker version and configuration and whether this is restorable. If the backup cannot be restored, select the default value MMINFO for the NSR_USECLIENTFOR parameter and contact NetWorker support.

More Information

Example: Configuration File for NetWorker


Avg User Suspend Time for Task - SAP Documentation

Background documentation Avg User Suspend Time for Task

Avg user suspend time for task <task_ID>: <duration> ms, <number_of> suspends, application pid <pid>

Explanation

The execution of this user task has been interrupted by wait times. You see the average duration of all wait times that have been determined. This value is normally under 100 milliseconds.

You also see how often wait times occurred.

User Response

Check the state of the user task at regular intervals.


Avg User cmd exec Time for Task - SAP Documentation

Background documentation Avg User cmd exec Time for Task

Avg user cmd exec time for task <task_ID>: <duration> ms, <number_of> commands, application pid <pid>

Explanation

The time needed by the specified user tasks to execute the statements is very long. You see the average execution time of a statement, the number of statements checked, and the process ID of the relevant application process.

Whether this counts as a bottleneck depends on the application structure.

Mass statements in background processes can often cause long runtimes. As well as this, situations such as locks in SQL objects, physical reads and writes, or dispatching caused by the prioritization of other tasks, can cause internal kernel wait situations that increase runtimes.

If, in SAP liveCache databases, a DB procedure takes a long time to execute, it is highly likely that other users are being blocked in the same SAP liveCache thread. This can cause unexpectedly long runtimes for other transactions or DB procedures.


Avg User Wait Time For Task - SAP Documentation

Background documentation Avg User Wait Time For Task

Avg user wait time for task <task_ID>: <duration> ms, <number_of> waits, application pid <pid>

Explanation

In a lock collision, the wait for a lock to be released is very long.

This can be caused by a transaction that takes too long. Long wait times (task state vwait) can also occur when many applications want to lock the same object.

If the locks are requested by other sessions, the database system attempts to execute locking tasks with higher priority within the database kernel.

For information on the current locks, see the system tables SYSINFO.TRANSACTIONS and DOMAIN.LOCKS of the database instance.

User Response

Check the following aspects of the application:

  • Is it suitable for isolation level 0 (uncommitted)?

  • Can the time between the lock request and the COMMIT statement be reduced?

  • Can you avoid simultaneous locks on the same row by splitting tables?

More Information

Concepts of the Database System, Locks

System Tables


Catalog Cache Hit Rate - SAP Documentation

Background documentation Catalog Cache Hit Rate

Catalog cache hitrate <percentage>%, <number> of <number> accesses failed

Explanation

The hit rate is too low when accessing the catalog cache in which the parsed SQL statements are administered. In a running database application, the catalog cache hit rate should be about 90%. If new program components or programs are started, the hit rate can drop temporarily to a low level. However, the average over a 15-minute period should not drop below 85%.

User Response

The size of the catalog cache should be about 100 pages for each database session. You can check this using the general database parameter MaxUserTasks and the special database parameter TaskSpecificCatalogCacheMinSize.

The catalog cache is enlarged dynamically by the active database sessions, and released again with a RELEASE statement. You can determine the current cache sizes using the SQL statement SELECT * FROM CONNECTEDUSERS.

If sessions need significantly more than 100 pages, we recommend that in the medium term you increase the catalog cache accordingly, memory permitting.


Number of Physical Writes - SAP Documentation

Background documentation Number of Physical Writes

Number of physical writes: <count>

Explanation

Not all of the data used by the applications can be held in the data cache. This causes pages from the data cache to be displaced to the data area, which means that there are a large number of writes to the data volumes.

This phenomenon is almost unavoidable if load times (data import) are long, because the imported data is usually much larger than the size of the data cache.

A savepoint also writes modified pages from the data cache to the data area at regular intervals. Read and write activity increases significantly at this time, without causing a genuine bottleneck. In normal operations, you should not be able to measure any significant write activities other than the savepoints.

User Response

If you notice a high level of write activity in normal operations, first make sure that no savepoint was active during the measurement interval (which is possibly too short).

If no savepoint was active, increase the size of the data cache.

More Information

Concepts of the Database System, Working Memory Areas


Physical Reads for User Task - SAP Documentation

Background documentation Physical Reads for User Task

<number of> physical reads for user task <task_ID>, <number of> commands, application pid <pid>

Explanation

The user task <task_id> causes a large number of physical reads to take place on the volumes of the database, because the data requested by the applications was not found in the data cache.

User Response

If a table is accessed for the first time, or if it has not been used for a long time, and was therefore displaced from the data cache, then this situation is not a problem.

However, if this does not explain the read activity, you should check the hit rate for the data cache, and increase the size of the data cache, if necessary.

Make sure that the SQL statements specified by the application do not read significantly more data than is necessary for processing, because of poor search strategies, for example.

If the special database parameter UseDataCacheScanOptimization has the value yes, then table scans (TABLE SCAN) use only 10% of the data cache for caching the table. This means that it may not be possible to hold the entire table in the data cache, and the next scan has to read it physically again.


Optimizer Strategies - SAP Documentation

Background documentation Optimizer Strategies

<number of> <optimizer_strategy_executes>, selectivity <percentage>%: <number of> rows read, <number of> rows qualified

Explanation

The ratio of read table rows to found table rows is poor when a particular access strategy (<optimizer_strategy_executes>) is used.

The access strategy can be one of the following strategies:

  • Primary key accesses(EQUAL CONDITION FOR KEY, SUBQ CONDITION FOR KEY, IN CONDITION FOR KEY)

  • Primary key range accesses (RANGE CONDITION FOR KEY, SUBQ CONDITION FOR KEY, IN CONDITION FOR KEY)

  • Index accesses (EQUAL CONDITION FOR INDEX, SUBQ CONDITION FOR INDEX, IN CONDITION FOR INDEX)

  • Index range accesses (RANGE CONDITION FOR INDEX, SUBQ CONDITION FOR INDEX, IN CONDITION FOR INDEX)

  • Isolated index accesses see: EXPLAIN statement: Columns O,D,T,M, column O (Only Index) as well as Index accesses

  • Isolated index range accesses see: EXPLAIN statement: Columns O,D,T,M, column O (Only Index) as well as Index range accesses

  • Isolated index scans (INDEX SCAN)

User Response

Find the statement that causes this poor ratio of read rows to found rows, and check the access strategies for this statement.

Note Note

For information on creating optimized SQL statements, see the SQL Optimizer documentation.

See also: TABLE SCAN

End of the note.

More Information

SQL Optimizer,

  • List of All Search Strategies

  • Analyzing Search Strategies Using the EXPLAIN Statement


Max Log Queue Filling - SAP Documentation

Background documentation Max Log Queue Filling

Max log queue filling: <percentage>%

Explanation

The fill level of the log queue is high. If the fill level reaches 100%, you risk a log queue overflow.

User Response

Check the value of the special database parameter LogQueueSize, and increase it if possible.

Check the performance of the hard disk on which the log volumes are located.


OMS Version is Old - SAP Documentation

Background documentation OMS Version is Old

OMS version <OMS_version_ID> is <hours> hours old, uses <number> KB

Explanation

This message can occur for SAP liveCache databases only.

OMS versions are often open for long periods of time and occupy memory in the OMS heap. The number of history pages (links to undo log entries for the object) increases in the data cache and on the hard disk.

User Response

Find out the OMS version and the fill level of the data cache.

If the fill level of the data cache and the percentage of the history pages are high, try and find out the cause.

Check whether the reports /SAPAPO/OM_REORG_DAILY and /SAPAPO/OM_DELETE_OLD_SIMSESS are being executed at regular intervals (see also Database Administration in CCMS, Monitoring OMS Versions).

More Information

Concepts of the Database System, How Databases Log Data Changes


Data Volume Filling Level - SAP Documentation

Background documentation Data Volume Filling Level

Data volume filling level <percentage>%, <number_of> pages configured, perm used <perm_used>, temp used <temp_used>

Explanation

The fill level of the data volumes is high. If the fill level is 100%, the database stops.

User Response

If the amount of data that needs administering in the database instance has increased, you may need to add a new data volume.

A large proportion of temporary data pages (temp used) indicates large amounts of (buffer) result sets. Find the statement that is causing these large amounts of (buffer) result sets to be created, and check the access strategies for this statement.

For information on creating optimized SQL statements, see the SQL Optimizer documentation.

More Information

Database Administration, Adding Data Volumes


Number of Physical Reads - SAP Documentation

Background documentation Number of Physical Reads

Number of physical reads: <count>

Explanation

A large number of physical reads are taking place on the volumes of the database as the data requested by the applications was not found in the data cache.

User Response

If a table is accessed for the first time, or if it has not been used for a long time, and was therefore displaced from the data cache, then this situation is not a problem.

However, if this does not explain the read activity, you should check the hit rate for the data cache, and increase the size of the data cache, if necessary.

Make sure that the SQL statements specified by the application do not read significantly more data than is necessary for processing, because of poor search strategies, for example.

If the special database parameter UseDataCacheScanOptimization has the value yes, then table scans use only 10% of the data cache for caching the table. This means that the table cannot be held completely in the data cache, and the next scan has to read it physically again.

More Information

  • Concepts of the Database System, Working Memory Areas

  • SQL Optimizer, Search Strategies

  • Database Administration, Special Database Parameters


Parse Activities - SAP Documentation

Background documentation Parse Activities

Parse activities <percentage>%, <number of> prepares, <number of> commands

Explanation

The number of parse activities in the total number of executed statements is high.

Before an SQL statement is executed for the first time, it has to be analyzed (parsed) first. To do this, the database system determines the possible access strategies and saves the SQL statement to the database in a compact form. When the statement is executed again, only this internal information is accessed, and the statement is executed directly.

In applications that are based on ODBC and use the PREPARE statement, the developer is responsible for the number of parse or EXECUTE requests.

If the SQLDBC or JDBC interface is used, and the parse info cache is active, the corresponding interface is responsible for optimizing the parse requests.

A high level of parse activity when the database is running can indicate a missing statement cache implementation in your application, or a deactivated parse info cache in the JDBC interface.

Note Note

A high level of parse activity is normal when programs or program components are started for the first time.

End of the note.


OMS Heap Collisions - SAP Documentation

Background documentation OMS Heap Collisions

Explanation

This message can occur for SAP liveCache technology only.

Tasks that run in different threads attempt to request or release memory from the OMS heap in parallel. This increases the number of collisions.

User Response

Check whether the SAP liveCache database parameter OmsSubHeaps, which determines the number of OMS heap segments, has an appropriate value.

The risk of collisions rises with the number of processors used (MaxCPUs general database parameter). Check whether the SAP liveCache database can fulfill the requirements of the applications with fewer processors. If not, check whether the CPU on the computer is overloaded, and whether the SAP liveCache threads are blocked by other applications running on the computer. If this is the case, the SAP liveCache threads that contain user tasks should have received REAL TIME PRIORITY in the operating system. To avoid blocking other applications running on the same computer, the value of MaxCPUs must be at least one lower than the number of actual CPUs.

More Information

Database Administration, General Database Parameters


Collision Rate - SAP Documentation

Background documentation Collision Rate

<region_name>: collision rate (<percentage>%), <number_of> collisions, <number_of> accesses on region <region_ID>

Explanation

The rate of lock collisions is high. Tasks that run in different threads are attempting to access a global storage area in parallel. The synchronization required for this often leads to an increased collision rate.

Note Note

One exception to this in SAP liveCache databases is high collision rates in the OMSVDIR and CNSTVIEW regions (<region_id>). This is normal for certain actions, such as a simultaneous CIF queue transfer.

End of the note.
User Response

You need to act if the collision rate rises above 10%. Generally, the risk of collision rises with the number of processors used (MaxCPUs general database parameter). In multiprocessor systems, you should therefore check whether the database system can fulfill the needs of the applications with fewer CPUs.

If high collision rates occur in multiprocessor central systems (database system and application running on the same computer), check whether the computer’s CPU is overloaded, and whether the database threads are blocked by other applications. In this case, the database threads that contain user tasks should have received REAL TIME PRIORITY in the operating system. To avoid operating system blocks however, the value of MaxCPUs must be at least one lower than the number of actual CPUs.

More Information

Database Administration, General Database Parameters, Traces


Free User Tasks - SAP Documentation

Background documentation Free User Tasks

Explanation

The number of free user tasks is low. If there are no free user tasks, then no more applications can connect to the database.

User Response

Check the existing database connections. Check whether any applications have connected to the database more than once. If the number of applications that want to work with the database rises, you may need to increase the value of the general database parameter MaxUserTasks.


OMS Version is Unloaded - SAP Documentation

Background documentation OMS Version is Unloaded

OMS version <OMS_version_ID> is unloaded, uses <number> KB

Explanation

This message can occur for SAP liveCache technology only.

OMS version data was loaded from the OMS heap into the data cache, since the value of one of the two SAP liveCache parameters OmsHeapThreshold or OmsVersionThreshold was exceeded.

Performance suffers when accessing the relevant OMS versions, since it takes longer to access the data cache than the OMS heap.

User Response

Check the special parameters OmsHeapThreshold and OmsVersionThreshold.

If necessary, increase the size of the OMS heap.

More Information

Database Administration, Special Database Parameters


Number of Physical Writes of Temporary Pages - SAP Documentation

Background documentation Number of Physical Writes of Temporary Pages

Number of physical writes of temporary pages: <count>

Explanation

When temporary data pages are generated to build (buffer) result sets (in JOINS or ORDER BY statements, for example), the data cache is not large enough to accommodate the temporary pages, which have to be moved into the data area. However, these pages must be exported out of the data area again for the further processing of the SQL statement.

User Response

Find the statement that causes these large (buffer) result sets to be created, and check the access strategies for this statement.

Note Note

For information on creating optimized SQL statements, see the SQL Optimizer documentation.

End of the note.


OMS Cache Hit Rate - SAP Documentation

Background documentation OMS Cache Hit Rate

OMS cache hitrate <percentage>%, <number> of <number of> accesses failed

Explanation

This message can occur for SAP liveCache technology only.

The hit rate when accessing the OMS data in the data cache is too low. In a running SAP liveCache application, the hit rate should not fall below 100%, otherwise the data must be read physically.

The hit rate may fall for short periods of time, for example, when objects are accessed for the first time.

User Response

Check the following points:

  • The data cache load

  • The size of the plan version

  • Long-running OMS versions

  • Configuration of the SAP liveCache and the hardware

More Information

Concepts of the Database System, Working Memory Areas


Number of Cached History Pages - SAP Documentation

Background documentation Number of Cached History Pages

Number of cached history pages (<number>) exceeds number of cached OMS pages (<number>)

Explanation

This message can occur for SAP liveCache technology only.

In the data cache, the number of history pages is higher than the number of OMS data pages.

User Response

Search for old OMS versions and transactions that prevent the history pages from being deleted in the data cache.

Check whether the reports /SAPAPO/OM_REORG_DAILY and /SAPAPO/OM_DELETE_OLD_SIMSESS are being executed at regular intervals (see also Database Administration in CCMS, Monitoring OMS Versions).


Out of Memory Exceptions - SAP Documentation

Background documentation Out of Memory Exceptions

Out of memory exceptions: <count>

Explanation

This message can occur for SAP liveCache technology only.

DB procedures failed due to too little memory in the OMS heap.

User Response

  • Look in the kernel log for more detailed information.

  • Check the OMS versions, and check how much space they occupy in the OMS heap, for example, by using the log files DBAN_OMS_VERSIONS.csv and DBAN_OMS_HEAP.csv.

  • Check the OMS heap and, if possible, increase the size of the heap.

More Information

Database Administration, Log Files

Concepts of the Database System, Working Memory Areas


Log Area Filling Level - SAP Documentation

Background documentation Log Area Filling Level

Log area filling level <percentage>%, <number_of> pages configured, <number> used

Explanation

The fill level of the log area is high. If the fill level is 100%, the database stops.

User Response

Back up the log area. If necessary, activate automatic log backups. If automatic log backups are already activated, check whether the last backup was successful.

More Information

Database Administration, Backing Up Log Entries


Table scans - SAP Documentation

Background documentation Table scans

<number of> table scans, selectivity <percentage>%: <number of> rows read, <number of> rows qualified

Explanation

The ratio of read rows to found rows is poor for table scans (TABLE SCAN). This often indicates a poor search strategy, caused either by the application (missing or insufficient indexes), or by a problem in the SELECT optimization of the database kernel.

Scanning large tables can have seriously negative effects on the performance of the entire system.

User Response

Find the statement that causes this poor ratio of read rows to found rows, and check the access strategies for this statement.

Note Note

For information on creating optimized SQL statements, see the SQL Optimizer documentation.

End of the note.


OMS Terminates - SAP Documentation

Background documentation OMS Terminates

Explanation

This message can occur for SAP liveCache technology only.

An error occurred during the execution of the specified DB procedure.

User Response

Use the log files (such as the kernel log and lcapo_com_trace_<xy>.txt) to find out the cause of the error.

More Information

Database Administration, Log Files


OMS Heap Utilization - SAP Documentation

Background documentation OMS Heap Utilization

OMS heap utilization <percentage>%, used/max: <used_size>/<heap_limit_size> MB

Explanation

This message can occur for SAP liveCache technology only.

The memory requirements in the OMS heap are high for the running DB procedures.

If the memory utilization in the OMS heap reaches 100%, there is the risk of errors in the DB procedures (Out Of Memory Exceptions), or that OMS version data is swapped from the OMS heap to the global data cache (OMS version is unloaded).

User Response

If necessary, increase the size of the OMS heap.

Check whether the configuration of your database and hardware meets the requirements of the SAP liveCache application.

More Information

Concepts of the Database System, Working Memory Areas


Log Queue Overflows - SAP Documentation

Background documentation Log Queue Overflows

Log queue overflows: <count>

Log queue overflows: <count>, configured log queue pages: <count>

Explanation

The log queue is full before the log pages are written to the log area.

User Response

Use the special database parameter LogQueueSize to check the size of the log queue, and increase its value if possible.

Check the performance of the hard disk on which the log volumes are located.


User Task Physical Writes - SAP Documentation

Background documentation User Task Physical Writes

User task physical writes: <count>

Explanation

Modified pages can be displaced from the data cache to the data area, because not all of the data used by the applications can be held in the data cache.

If the size of the data cache is sufficient, the physical writing is delayed until the next Savepoint and then be done asynchronously. Cache displacements, however, use synchronous writes and reads, and should be avoided if possible.

This phenomenon is almost unavoidable if load times (data import) are long, since the volume of imported data is usually much larger than the size of the data cache.

User Response

Increase the size of the data cache.

More Information

Concepts of the Database System, Working Memory Areas


Data Cache Hit Rate - SAP Documentation

Background documentation Data Cache Hit Rate

Data cache hitrate <percentage>%, <number> of <number> accesses failed

Explanation

The hit rate when accessing the data cache is too low. The hit rate in a running SAP liveCache application should not be under 100%.

Lower hit rates may occur for short periods of time, for example, when objects are accessed for the first time, or if a table that is being scanned (TABLE SCAN) is larger than 10% of the data cache (only if the special database parameter UseDataCacheScanOptimization has the value yes). Data cache hit rates that are lower than 99% over a fifteen-minute average must be avoided.

User Response

Check the following points:

  • The data cache load

  • The configuration of the database instance and the hardware

  • In SAP liveCache databases, the size of the plan versions, as well as OMS versions that have existed for a long time

    Note Note

    Frequently, individual SQL statements cause a high percentage of the total logical and physical read activity. Increasing the cache just moves the load from the hard disk to the CPU, even though, for example, an additional index could turn a read-intensive table scan into a quick direct access. For information on creating optimized SQL statements, see SQL Optimizer.

    End of the note.

More Information

Concepts of the Database System, Working Memory Areas


Lock List Escalations - SAP Documentation

Background documentation Lock List Escalations

Lock list escalations: <count>

Explanation

The number of row locks in a table is too high. The database system attempts to convert the row locks into a table lock.

User Response

You can specify the maximum number of possible row locks in the lock list in the general database parameter MaxSQLLocks. The database system attempts to convert the row lock to a table lock if a task holds more than 0,1*MaxSQLLocks row locks in a table. If too many escalations occur, increase the parameter value.

Whether escalations lead to problems depends strongly on the application in question. If escalations occur, check the application to see whether you can split any change transactions that lock many rows into several individual transactions.


Deletes/Updates - SAP Documentation

Background documentation Deletes/Updates

Delete selectivity <percentage>%: <number_of> deletes, <number_of> rows read, <number_of> rows qualified

Update selectivity <percentage>%: <number_of> updates, <number_of> rows read, <number_of> rows qualified

Explanation

The ratio of read rows to modified rows is poor for UPDATE or DELETE statements.

Before UPDATE and DELETE statements can modify or delete rows, the rows must be located in the table. The same access strategies are used as in a SELECT statement.

User Response

Find the statement that causes this poor ratio of read rows to found rows, and check the access strategies for this statement.

Note Note

For information on creating optimized SQL statements, see the SQL Optimizer documentation.

End of the note.


OMS History Cache Hit Rate - SAP Documentation

Background documentation OMS History Cache Hit Rate

OMS history cache hitrate <percentage>%, <number> of <number of> accesses failed

Explanation

This message can occur for SAP liveCache databases only.

The hit rate when accessing history data (links to undo log entries for the objects) in the data cache is too low. In a running SAP liveCache application, the hit rate should not fall below 100%, otherwise the data must be read physically.

The hit rate may fall for short periods of time, for example, when objects are accessed for the first time.

User Response

Check the following points:

  • The data cache load

  • The size of the plan version

  • Long-running OMS versions

  • Configuration of the SAP liveCache database and the hardware

More Information

Concepts of the Database System, How Databases Log Data Changes


Database Analyzer Messages - SAP Documentation

Background documentation Database Analyzer Messages

The following table lists the most important Database Analyzer messages that are written to the DBAN.prt log file.

Database Analyzer: Messages

Avg User cmd exec Time for Task

Avg User Suspend Time for Task

Avg User Wait Time For Task

Catalog Cache Hit Rate

Collision Rate

Data Cache Hit Rate

Data Volume Filling Level

Deletes/Updates

Free User Tasks

Index accesses

Index range accesses

Isolated index accesses

Isolated index range accesses

Isolated index scans

More information: Optimizer Strategies

Log Area Filling Level

Lock List Escalations

Log Queue Overflows

Log write time

Max Log Queue Filling

Number of Cached History Pages

Number of Physical Reads

Number of Physical Writes

Number of Physical Writes of Temporary Pages

OMS Cache Hit Rate

OMS Heap Collisions

OMS Heap Utilization

OMS History Cache Hit Rate

OMS Terminates

OMS Version is Old

OMS Version is Unloaded

Out of Memory Exceptions

Parse Activities

Physical Reads for User Task

Primary key accesses

Primary key range accesses

More information: Optimizer Strategies

Selects and Fetches

Table scans

User Task Blocked in State

User Task Physical Writes

More Information

Database Analyzer Log Files


Database Analyzer Configuration File - SAP Documentation

Background documentation Database Analyzer Configuration File

The dbanalyzer<version>.cfg configuration file determines how Database Analyzer collects performance-relevant information. Database Analyzer obtains this performance-relevant information either directly from the system tables in the database, or calculates it from the data in those tables.

The configuration file also describes the five classes (information, three levels of warnings, error messages) that Database Analyzer uses to analyze the parameters and log them in the DBAN.prt or DBAN<monitor_class>.prt log file.

More Information

Calling Database Analyzer

Database Analyzer Log Files


Calling Database Analyzer - SAP Documentation

Procedure documentation Calling Database Analyzer

Procedure

We recommend that you use one of the following tools to start and stop Database Analyzer.

  • CCMS (in SAP systems only)

    DBA Cockpit, Database Analyzer

  • Database Studio

    Database Studio, Starting or Stopping Database Analyzer

  • Database Manager CLI

    Database Manager CLI, Analyzing Databases

More Information

Database Analyzer Configuration File

Database Analyzer Log Files


User Task Blocked in State - SAP Documentation

Background documentation User Task Blocked in State

User task <task_ID> blocked in state '<state_description>'

User task <task_ID> blocked in state '<state description>', DB procedure: <DB_procedure_name>

Explanation

The specified user task is active, however, its task state is not changing. This also blocks all other tasks in the same user kernel thread. In extreme cases, the blocking task may be in an endless loop.


Log Write Time - SAP Documentation

Background documentation Log Write Time

Avg log write time (log_writer_task) <duration> ms, <number_of> writes, <number_of> pages

Avg log write time (dev_thread) <duration> ms, <number_of> writes, <number_of> pages

Explanation

The physical writing of log entries takes too long. There is the risk of a bottleneck.

User Response

Check the read and write operations in the disk area or device on which the log volumes are located. If possible, only the log entries should be made here, and no other read or write operations. In certain circumstances, you may need to move the log volumes to a quicker device.

More Information

Concepts of the Database System, How Databases Log Data Changes


Pseudo Column - SAP Documentation

Background documentation Pseudo Column

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in the ORACLE SQL mode differ, among other things, in the definition of pseudo columns.

  • The pseudo column LEVEL is not supported in SAP MaxDB.

  • The pseudo column ROWID can only be used if the option ROWID was specified in the CREATE TABLE statement. In contrast to Oracle, SAP MaxDB produces a logical column identification of the data type RAW(8).

  • In SAP MaxDB, pseudo column ROWNUM cannot be used in the UPDATE statement.

  • The pseudo column ROWNUM is entered into a selected column (select_column) after the result table has been sorted.

More Information

SQL Syntax Elements: Differences


Access to Objects - SAP Documentation

Background documentation Access to Objects

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in ORACLE SQL mode differ with regard to object access, among other things.

If a schema is not specified when a database object is accessed, and no object belonging to the current user exists with this name, the following procedure (which is different from Oracle) applies for MaxDB when the database object is accessed:

  1. SAP MaxDB searches for this object in the PUBLIC synonyms.

  2. If the object was not found, SAP MaxDB searches for this object in the part of the database catalog of the database administrator that the current user generated.

  3. If the object was not found, SAP MaxDB searches for this object in the database administrator's part of the database catalog.

More Information

SQL Syntax Elements: Differences


Operator - SAP Documentation

Background documentation Operator

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in the ORACLE SQL mode differ, among other things, in the definition of operators.

The Oracle operator PRIOR is not supported in SAP MaxDB.

More Information

SQL Syntax Elements: Differences


Database Object - SAP Documentation

Background documentation Database Object

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in ORACLE SQL mode differ with regard to the definition of possible database objects, among other things.

The following database objects are not supported by SAP MaxDB:

  • Clusters

  • Database links

  • Packages

  • Profiles

  • Rollback segments

  • Snapshot logs

  • Tablespaces

The following database object is supported by SAP MaxDB, but uses a different syntax or procedure for creation than Oracle:

Procedure (object in SAP MaxDB: database procedure)

Snapshot

More Information

SQL Syntax Elements: Differences


Function - SAP Documentation

Background documentation Function

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in the ORACLE SQL mode differ, among other things, in the definition of functions.

  • The following Oracle functions are not available as functions in SAP MaxDB:

    - CHARTOROWID

    - ROWIDTOCHAR

    - CONVERT

    - DUMP

    - USERENV

    - NLS_INITCAP

    - NLS_LOWER

    - NLS_UPPER

    - TO_MULTI_BYTE

    - TO_SINGLE_BYTE

    - INSTRB

    - LENGTHB

    - SUBSTRB

  • When the string functions LPAD and RPAD are specified in SAP MaxDB, the character string x cannot be longer than n.

  • When string function SUBSTR is specified in SAP MaxDB, a cannot be less than 1.

  • When the function INSTR is specified in MaxDB, the parameter "n" must not be smaller than 1.

  • When the functions TO_CHAR, TO_DATE and TO_NUMBER are specified in MaxDB, the parameter "nlsparams" is not available.

More Information

Functions: Overview

SQL Syntax Elements: Differences


Name - SAP Documentation

Background documentation Name

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in SQL mode ORACLE differ, among other things, in the definition of names for objects.

If SAP MaxDB assigns names for objects, these names differ from the names generated by Oracle.

The following keywords are reserved in Oracle 7 but not in SAP MaxDB:
ACCESS | COMPRESS | ELSE | FILE
IMMEDIATE | INCREMENT | INITIAL | MAXEXTENTS
NOAUDIT | NOCOMPRESS | OFFLINE | ONLINE
PRIOR | SIZE | START | SUCCESSFUL
THEN | VALIDATE |  |

If possible, these key words should not be used to designate objects in SAP MaxDB.

Note Note

You can find a list of all the keywords reserved in SAP MaxDB in the section reserved_keyword of the SQL Reference Manual.

You can find a list of all the keywords not reserved in SAP MaxDB in the section not_reserved_keyword of the SQL Reference Manual.

End of the note.

More Information

SQL Syntax Elements: Differences

Names: Overview


Number - SAP Documentation

Background documentation Number

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in ORACLE SQL mode differ, among other things, in the definition of numbers.

  • For Oracle, the permitted value range for numbers covers values from 0.999E-128 to 0.999E126.

  • In SAP MaxDB, the permitted value range for floating point numbers (number) consists of the interval from -9.9999999999999999999999999999999999999E+62 to -1E-64, the value 0.0, and the interval from +1E-64 to +9.9999999999999999999999999999999999999E+62.

More Information

SQL Syntax Elements: Differences


Data Type - SAP Documentation

Background documentation Data Type

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in the ORACLE SQL mode differ, among other things, in the definition of data types.

  • In contrast to Oracle, columns with the data type CHAR[ACTER] are only stored up to a length of 30 characters with fixed length in SAP MaxDB.

  • The Oracle data type VARCHAR2 does not differ from VARCHAR in SAP MaxDB.

  • The data types INT[EGER] and SMALLINT have 20 significant digits in SAP MaxDB.

  • In SAP MaxDB, the data type FLOAT is always represented with 20 significant digits.

  • In SAP MaxDB, data types cannot be defined for numbers with a negative scale. It is not possible to specify a scale that is greater than the number of significant digits.

  • In SAP MaxDB, numbers are not implicitly converted into date values or vice versa.

  • In Oracle, date values run from 1/1/4712 BC to 12/31/9999 AD. In SAP MaxDB, date values run from 1/1/0001 to 12/31/9999.

  • SAP MaxDB does not support the comparison of character strings denoted as "non padded comparison" in Oracle.

  • The NCHAR, NVARCHAR2, MLSLABEL, BFILE, and UROWID data types supported by Oracle are not supported by SAP MaxDB.

More Information

SQL Syntax Elements: Differences


Namespace - SAP Documentation

Background documentation Namespace

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in the ORACLE SQL mode differ, among other things, in the definition of namespaces.

Differences in the namespace
Oracle 7 | SAP MaxDB
All indexes of a database instance form a namespace. | All indexes of a table form a namespace.
All constraints of a database instance form a namespace. | All constraints of a table form a namespace.
All triggers of a database instance form a namespace. | All triggers of a table form a namespace.
All sequences, together with the tables, views, synonyms, procedures, and further objects, form a namespace. | All sequences of a database instance form a separate namespace.
All procedures, together with the tables, views, synonyms, and further objects, form a namespace. | All database procedures of a database instance form a separate namespace.

More Information

SQL Syntax Elements: Differences


alter_cluster_statement - SAP Documentation

Background documentation alter_cluster_statement

The schema object cluster is not supported by MaxDB. The ALTER CLUSTER (alter_cluster_statement) SQL statement is therefore not accepted by MaxDB.

More Information

Database Object

SQL Statements: Differences


Integer - SAP Documentation

Background documentation Integer

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in the ORACLE SQL mode differ, among other things, in the definition of integers.

In contrast to Oracle, an integer in SAP MaxDB has 20 significant characters.

More Information

SQL Syntax Elements: Differences


alter_database_statement - SAP Documentation

Background documentation alter_database_statement

The ALTER DATABASE (alter_database_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


Format - SAP Documentation

Background documentation Format

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in SQL mode ORACLE differ in the definition of the date format, among other things.

Unless otherwise specified in the ALTER SESSION statement, date format DD-MON-YY, language English, and BINARY sorting are assumed for a database session.

More Information

SQL Syntax Elements: Differences


SQL Statements: Differences - SAP Documentation

Background documentation SQL Statements: Differences

This section lists all the Oracle SQL statements that behave differently in Oracle Version 7 and SAP MaxDB in ORACLE SQL mode.

A detailed description of the syntax for the Oracle SQL statements can be found in the ORACLE7 Server SQL Reference Manual, and not in the sections below. The Oracle SQL statements are listed in the same order that is used in the ORACLE7 Server SQL Reference Manual.

To enable a better understanding of the system explanations, a reference to the syntax description of the relevant SAP MaxDB SQL statement in the SQL Reference Manual has been provided where appropriate.

For SQL statements that are not listed below, it can be assumed that there are no differences apart from the general differences.

More Information

SQL Statements: Overview

SQL Syntax

SQL Mode ORACLE


alter_package_statement - SAP Documentation

Background documentation alter_package_statement

The ALTER PACKAGE (alter_package_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_function_statement - SAP Documentation

Background documentation alter_function_statement

The ALTER FUNCTION (alter_function_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_snapshot_statement - SAP Documentation

Background documentation alter_snapshot_statement

The database object snapshot is also included in SAP MaxDB. However, the ALTER SNAPSHOT (alter_snapshot_statement) SQL statement is not accepted by SAP MaxDB, so you have to use database tools to change a snapshot.

More Information

Database Object

SQL Statements: Differences

Database Administration, Snapshot of the Data Area


alter_resource_cost_statement - SAP Documentation

Background documentation alter_resource_cost_statement

The ALTER RESOURCE COST (alter_resource_cost_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_procedure_statement - SAP Documentation

Background documentation alter_procedure_statement

The ALTER PROCEDURE (alter_procedure_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_system_statement - SAP Documentation

Background documentation alter_system_statement

The ALTER SYSTEM (alter_system_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_table_statement - SAP Documentation

Background documentation alter_table_statement

The ALTER TABLE (alter_table_statement) SQL statement is known in SAP MaxDB, but has different syntax and semantics to Oracle (ALTER TABLE statement).

  • The variants PCTFREE, PCTUSED, INITRANS, MAXTRANS, STORAGE, DROP, and ALLOCATE are meaningless in SAP MaxDB and are rejected.

  • SAP MaxDB cannot deactivate constraints. SAP MaxDB therefore ignores the specification of DISABLE.

  • SAP MaxDB cannot delete any UNIQUE constraints using the DROP clause. The DROP INDEX statement must be used for this instead.

  • When columns are inserted, SAP MaxDB automatically inserts these columns in all view tables that use the "*" in the <select_list>, in order to identify all columns of the table.

More Information

SQL Statements: Differences


alter_role_statement - SAP Documentation

Background documentation alter_role_statement

The ALTER ROLE (alter_role_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_tablespace_statement - SAP Documentation

Background documentation alter_tablespace_statement

The schema object tablespace is not supported by SAP MaxDB. The ALTER TABLESPACE (alter_tablespace_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


alter_rollback_segment_statement - SAP Documentation

Background documentation alter_rollback_segment_statement

The schema object rollback segment is not supported by SAP MaxDB. The ALTER ROLLBACK SEGMENT (alter_rollback_segment_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


alter_index_statement - SAP Documentation

Background documentation alter_index_statement

Since SAP MaxDB needs no reorganization, you do not have to modify the memory characteristics for indexes. The ALTER INDEX (alter_index_statement) SQL statement is known in SAP MaxDB, but has different syntax and semantics to Oracle (ALTER INDEX statement).

More Information

SQL Statements: Differences


alter_snapshot_log_statement - SAP Documentation

Background documentation alter_snapshot_log_statement

The schema object snapshot log is not supported by SAP MaxDB. The ALTER SNAPSHOT LOG (alter_snapshot_log_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


alter_trigger_statement - SAP Documentation

Background documentation alter_trigger_statement

SAP MaxDB cannot deactivate triggers. The ALTER TRIGGER (alter_trigger_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_sequence_statement - SAP Documentation

Background documentation alter_sequence_statement

The ALTER SEQUENCE (alter_sequence_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


alter_profile_statement - SAP Documentation

Background documentation alter_profile_statement

The schema object profile is not supported by SAP MaxDB. The ALTER PROFILE (alter_profile_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


drop_cluster_statement - SAP Documentation

Background documentation drop_cluster_statement

The database object cluster is not supported by SAP MaxDB. The DROP CLUSTER (drop_cluster_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements


drop_trigger_statement - SAP Documentation

Background documentation drop_trigger_statement

Because of the different namespaces for triggers, specifying a trigger name in SAP MaxDB does not uniquely identify the trigger.

For this reason, SAP MaxDB only accepts the DROP TRIGGER (drop_trigger_statement) SQL statement with the following restriction: The table that the trigger refers to must be specified explicitly (see also DROP TRIGGER statement (drop_trigger_statement)).

More Information

Triggername (trigger_name)

SQL Statements: Differences


create_cluster_statement - SAP Documentation

Background documentation create_cluster_statement

The database object cluster is not supported by SAP MaxDB. The CREATE CLUSTER (create_cluster_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements:Differences


rename_statement - SAP Documentation

Background documentation rename_statement

The RENAME (rename_statement) SQL statement is known in SAP MaxDB, but it behaves differently to Oracle: In SAP MaxDB, only base tables can be renamed (RENAME TABLE statement (rename_table_statement)).

More Information

SQL Statements: Differences


create_index_statement - SAP Documentation

Background documentation create_index_statement

The CREATE INDEX (create_index_statement) SQL statement is known in SAP MaxDB, but has different syntax and semantics to Oracle (CREATE INDEX statement).

  • However, the specifications CLUSTER <cluster>, INITRANS <integer>, MAXTRANS <integer>,TABLESPACE <tablespace>, STORAGE <storage_clause>, PCTFREE <integer>, and NOSORT have no meaning for SAP MaxDB, but are accepted syntactically.

  • The index is generated in descending order in SAP MaxDB when DESC is specified.

More Information

SQL Statements: Differences


describe_statement - SAP Documentation

Background documentation describe_statement

The DESCRIBE (describe_statement) SQL statement is accepted by SAP MaxDB with the following syntax restriction: SAP MaxDB rejects the specification of a PL/SQL block.

More Information

SQL Statements: Differences


alter_user_statement - SAP Documentation

Background documentation alter_user_statement

The ALTER USER (alter_user_statement) SQL statement is supported with a restricted syntax by SAP MaxDB. In SAP MaxDB, the ALTER USER statement can only be used to change the database user's password. SAP MaxDB rejects the specification of EXTERNALLY.

All other variants of the ALTER USER statement are rejected by SAP MaxDB.

More Information

SQL Statements: Differences


Errors: Differences - SAP Documentation

Background documentation Errors: Differences

When some errors occur, SAP MaxDB produces the same error number as Oracle Version 7:

Matching Error Messages
Message number | Message text
1403 | Row not found
-1 | Duplicate key in index
-51 | Lock request timeout
-54 | Lock collision
-602 | System error
-942 | Unknown table name
-955 | Duplicate name
-1007 | Parameter is too long
-1008 | Too many or too few host variables for output
-1034 | Serverdb must be restarted
-1400 | Input parameter cannot be NULL value
-1402 | Integrity violation
-1405 | Missing indicator variable
-1452 | Duplicate secondary key
-1556 | Data space full (emergency shutdown)

For all other errors, SAP MaxDB produces the error numbers described in the messages documentation. These are different to the numbers for the corresponding Oracle errors.

More Information

SQL Mode ORACLE

Messages


audit_statement - SAP Documentation

Background documentation audit_statement

The AUDIT (audit_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


revoke_statement - SAP Documentation

Background documentation revoke_statement

The REVOKE SQL statement is known in SAP MaxDB, but behaves differently to Oracle in the following areas (REVOKE statement):

  • SAP MaxDB does not accept the revoking of system privileges.

  • The database object package cannot be specified when object privileges are revoked in SAP MaxDB.

More Information

SQL Statements: Differences


create_synonym_statement - SAP Documentation

Background documentation create_synonym_statement

SAP MaxDB does not permit any synonyms for database procedures or synonyms. When the SQL statement CREATE SYNONYM (create_synonym_statement) is executed, the object for which the synonym is defined in SAP MaxDB must exist. The current database user must have a privilege for this object.

More Information

SQL Statements: Differences


drop_procedure_statement - SAP Documentation

Background documentation drop_procedure_statement

The DROP PROCEDURE (drop_procedure_statement) SQL statement is not accepted by SAP MaxDB.

Use the DROP DBPROC statement (drop_dbproc_statement) in the SAP MaxDB database system to delete a database procedure.

More Information

SQL Statements: Differences


drop_database_link_statement - SAP Documentation

Background documentation drop_database_link_statement

The database object database link is not supported by SAP MaxDB. The DROP DATABASE LINK (drop_database_link_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


drop_snapshot_statement - SAP Documentation

Background documentation drop_snapshot_statement

The database object snapshot is supported by SAP MaxDB. However, the DROP SNAPSHOT (drop_snapshot_statement) SQL statement is not accepted by SAP MaxDB, so you have to use database tools to delete a snapshot.

More Information

  • Database Object

  • SQL Statements: Differences

  • Database Administration, Snapshot of the Data Area


insert_statement - SAP Documentation

Background documentation insert_statement

The INSERT (insert_statement) SQL statement is supported in SAP MaxDB with the following restriction (INSERT statement): SAP MaxDB rejects the specification of array host variables in the WHERE clause.

More Information

SQL Statements: Differences


commit_statement - SAP Documentation

Background documentation commit_statement

SAP MaxDB does not accept the specification of FORCE or COMMENT for the COMMIT (commit_statement) SQL statement.

More Information

SQL Statements: Differences


create_controlfile_statement - SAP Documentation

Background documentation create_controlfile_statement

The CREATE CONTROLFILE (create_controlfile_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


execute_statement - SAP Documentation

Background documentation execute_statement

The EXECUTE (execute_statement) SQL statement is accepted by SAP MaxDB with the following syntax restriction: SAP MaxDB rejects the specification of a PL/SQL block.

More Information

SQL Statements: Differences


alter_view_statement - SAP Documentation

Background documentation alter_view_statement

SAP MaxDB always keeps view tables in an executable state. The ALTER VIEW (alter_view_statement) SQL statement is therefore not necessary, and is not accepted.

More Information

SQL Statements: Differences


create_package_statement - SAP Documentation

Background documentation create_package_statement

The CREATE PACKAGE (create_package_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


declare_table_statement - SAP Documentation

Background documentation declare_table_statement

The DECLARE TABLE (declare_table_statement) SQL statement is accepted by SAP MaxDB, even though it is meaningless for SAP MaxDB.

More Information

SQL Statements: Differences


noaudit_statement - SAP Documentation

Background documentation noaudit_statement

The NOAUDIT (noaudit_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


create_database_statement - SAP Documentation

Background documentation create_database_statement

The CREATE DATABASE (create_database_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


lock_table_statement - SAP Documentation

Background documentation lock_table_statement

The LOCK TABLE (lock_table_statement) SQL statement is accepted by SAP MaxDB with the following syntax restrictions: If ROW EXCLUSIVE, SHARE ROW EXCLUSIVE or EXCLUSIVE is specified, SAP MaxDB sets an exclusive lock for the table. Concurrent requests on the table are therefore not possible.

More Information

SQL Statements: Differences

Concepts of the Database System, Locks


create_tablespace_statement - SAP Documentation

Background documentation create_tablespace_statement

The database object tablespace is not supported by SAP MaxDB. Nevertheless, SAP MaxDB still accepts the CREATE TABLESPACE (create_tablespace_statement) SQL statement, even though it has no effect.

More Information

Database Object

SQL Statements: Differences


truncate_statement - SAP Documentation

Background documentation truncate_statement

The TRUNCATE (truncate_statement) SQL statement is only supported with a restricted syntax by SAP MaxDB:

  • The TRUNCATE CLUSTER [<schema>.]<cluster> SQL statement is not accepted by SAP MaxDB.

  • The syntax elements DROP/REUSE STORAGE are accepted by SAP MaxDB. They do not have any semantic meaning, however, since they trigger a response that is standard in SAP MaxDB.

More Information

SQL Statements: Differences


drop_snapshot_log_statement - SAP Documentation

Background documentation drop_snapshot_log_statement

The database object snapshot log is not supported by SAP MaxDB. The DROP SNAPSHOT LOG (drop_snapshot_log_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

SQL Statements


drop_tablespace_statement - SAP Documentation

Background documentation drop_tablespace_statement

The database object tablespace is not supported by SAP MaxDB. The DROP TABLESPACE (drop_tablespace_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


create_table_statement - SAP Documentation

Background documentation create_table_statement

The CREATE TABLE (create_table_statement) SQL statement is known in SAP MaxDB, but has different syntax and semantics to Oracle (CREATE TABLE statement).

  • However, the specifications PCTFREE <integer>, PCTUSED <integer>, INITRANS <integer>, MAXTRANS <integer>, TABLESPACE <tablespace> STORAGE <storage clause>, and CLUSTER <cluster> have no meaning for SAP MaxDB, but are accepted syntactically.

  • The specification DISABLE is ignored by SAP MaxDB.

  • If a subquery is specified, SAP MaxDB does not generate NOT NULL constraints.

  • In Oracle, each table row has a unique address that can be accessed as ROWID. The row can be addressed directly by using the ROWID. The ROWID also exists if the table has a key. Such an address is not available in SAP MaxDB, because the rows are always addressed using the key.

    The table option ROWID is provided for displaying the ORACLE behavior and has the following effect:

    - The table is implicitly assigned the key column ROWID with data type RAW(8). This column is usually invisible and can only be selected using the ROWID function.

    - If the CREATE TABLE statement contains a key_definition, an index with the UNIQUE attribute that corresponds to the key definition is implicitly generated.

    In this way, a row has a ROWID and can be quickly selected with both the ROWID and the key.

More Information

SQL Statements:Differences


drop_view_statement - SAP Documentation

Background documentation drop_view_statement

In SAP MaxDB, the SQL statement DROP VIEW (drop_view_statement) is used to drop all synonyms and view tables that are based on the view table.

More Information

SQL Statements: Differences


create_sequence_statement - SAP Documentation

Background documentation create_sequence_statement

The CREATE SEQUENCE (create_sequence_statement) SQL statement is accepted by SAP MaxDB with the following syntax restriction: The option ORDER is meaningless in SAP MaxDB (CREATE SEQUENCE statement (create_sequence_statement)).

More Information

SQL Statements: Differences


set_transaction_statement - SAP Documentation

Background documentation set_transaction_statement

The SET TRANSACTION (set_transaction_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


constraint_clause - SAP Documentation

Background documentation constraint_clause

The following restrictions exist in SAP MaxDB for the syntax element CONSTRAINT clause (constraint_clause) used in SQL statements:

  • A constraint_name for a key or [NOT] NULL is not stored in the database catalog.

  • USING INDEX is allowed within the syntax, but is meaningless in SAP MaxDB.

  • SAP MaxDB ignores the DISABLE option.

More Information

SQL Statements: Differences


drop_index_statement - SAP Documentation

Background documentation drop_index_statement

The DROP INDEX (drop_index_statement) SQL statement is accepted by SAP MaxDB with the following restriction:

Due to different namespaces existing for indexes, an index is not always uniquely identified in SAP MaxDB by an index name specification. In such a case, the table to which the index refers must be explicitly specified.

More Information

Index Name (index_name)

SQL Statements: Differences


create_view_statement - SAP Documentation

Background documentation create_view_statement

The CREATE VIEW (create_view_statement) SQL statement is supported with a restricted syntax by SAP MaxDB. The following restrictions exist in SAP MaxDB for the syntax of the CREATE VIEW statement:

  • SAP MaxDB rejects the specification of FORCE and NOFORCE.

  • A Constraint Name given to the CHECK OPTION is not stored in the database catalog. If no constraint name is specified, SAP MaxDB does not generate a name.

  • View tables that are changeable in Oracle are not necessarily changeable in SAP MaxDB. This is especially true for view tables whose definition contains subqueries.

More Information

SQL Statements: Differences


delete_statement - SAP Documentation

Background documentation delete_statement

The DELETE (delete_statement) SQL statement is supported in SAP MaxDB with restricted syntax (DELETE statement).

  • If CURRENT OF <cursor> is specified, the results table in SAP MaxDB must be based on an updatable table.

  • A cursor built by a join or join view table is rejected in SAP MaxDB.

More Information

SQL Statements: Differences


create_package_body_statement - SAP Documentation

Background documentation create_package_body_statement

The CREATE PACKAGE BODY (create_package_body_statement) SQL statement is not accepted by SAP MaxDB.

More Information

SQL Statements: Differences


create_database_link_statement - SAP Documentation

Background documentation create_database_link_statement

The database object database link is not supported by SAP MaxDB. The CREATE DATABASE LINK (create_database_link_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


create_profile_statement - SAP Documentation

Background documentation create_profile_statement

The database object profile is not supported by SAP MaxDB. The CREATE PROFILE (create_profile_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


select_statement - SAP Documentation

Background documentation select_statement

The SELECT (select_statement) SQL statement is supported in SAP MaxDB with restricted syntax (SELECT statement).

  • SAP MaxDB does not support the specification of START WITH <condition> and CONNECT BY <condition>.

  • SAP MaxDB sometimes rejects outer joins with more than two tables in the FROM clause valid in Oracle.

  • If the results in a table that are obtained from a SELECT statement are to be updateable, the syntax element FOR UPDATE must be entered.

More Information

SQL Statements: Differences


analyze_statement - SAP Documentation

Background documentation analyze_statement

SAP MaxDB only supports the variant ANALYZE TABLE for the ANALYZE (analyze_statement) SQL statement. The options DELETE, VALIDATE STRUCTURE, and LIST CHAINED ROWS are not valid in SAP MaxDB.

More Information

SQL Statements: Differences


rollback_statement - SAP Documentation

Background documentation rollback_statement

The ROLLBACK (rollback_statement) SQL statement is supported in SAP MaxDB with restricted syntax (ROLLBACK statement).

  • SAP MaxDB rejects the specification of FORCE.

  • If ROLLBACK TO [SAVEPOINT] <savepoint> is specified, SAP MaxDB does not release any locks.

More Information

SQL Statements: Differences


create_snapshot_statement - SAP Documentation

Background documentation create_snapshot_statement

The database object snapshot is supported by SAP MaxDB. However, the CREATE SNAPSHOT (create_snapshot_statement) SQL statement is not accepted by SAP MaxDB, so you have to use database tools to create a snapshot.

More Information

  • Database Object

  • SQL Statements

  • Database Administration, Snapshot of the Data Area


grant_statement - SAP Documentation

Background documentation grant_statement

The GRANT (grant_statement)SQL statement is known in SAP MaxDB, but behaves differently to Oracle in the following areas (GRANT statement):

  • SAP MaxDB does not accept the granting of system privileges.

  • The schema object package cannot be specified when object privileges are granted in SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


create_procedure_statement - SAP Documentation

Background documentation create_procedure_statement

The CREATE PROCEDURE (create_procedure_statement) SQL statement is not accepted by SAP MaxDB.

Use the CREATE DBPROC[EDURE] statement (create_dbproc_statement) in the SAP MaxDB database system to create a database procedure.

More Information

SQL Statements: Differences


create_trigger_statement - SAP Documentation

Background documentation create_trigger_statement

In SAP MaxDB, the CREATE TRIGGER (create_trigger_statement) SQL statement can only be used to define triggers described in Oracle as after row trigger.

Use the CREATE TRIGGER statement (create_trigger_statement) in the SAP MaxDB database system to create a trigger.

More Information

SQL Statements: Differences


create_user_statement - SAP Documentation

Background documentation create_user_statement

The CREATE USER (create_user_statement) SQL statement is supported with a restricted syntax by SAP MaxDB. In the CREATE USER statement, SAP MaxDB does not accept the specification of IDENTIFIED EXTERNALLY, GLOBALLY AS <external_name>, DEFAULT TABLESPACE <tablespace>, TEMPORARY TABLESPACE <tablespace>, QUOTA, and PROFILE <profile>.

The created database user has the RESOURCE status.

More Information

SQL Statements: Differences


create_rollback_segment_statement - SAP Documentation

Background documentation create_rollback_segment_statement

The database object rollback segment is not supported by SAP MaxDB. The CREATE ROLLBACK SEGMENT (create_rollback_segment_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


drop_rollback_segment_statement - SAP Documentation

Background documentation drop_rollback_segment_statement

The database object rollback segment is not supported by SAP MaxDB. The DROP ROLLBACK SEGMENT (drop_rollback_segment_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


declare_statement - SAP Documentation

Background documentation declare_statement

The DECLARE (declare_statement) SQL statement is accepted by SAP MaxDB with the following syntax restriction: SAP MaxDB rejects the specification of a PL/SQL block.

More Information

SQL Statements: Differences


create_snapshot_log_statement - SAP Documentation

Background documentation create_snapshot_log_statement

The database object snapshot log is not supported by SAP MaxDB. The CREATE SNAPSHOT LOG (create_snapshot_log_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements: Differences


drop_profile_statement - SAP Documentation

Background documentation drop_profile_statement

The database object profile is not supported by SAP MaxDB. The DROP PROFILE (drop_profile_statement) SQL statement is therefore not accepted by SAP MaxDB.

More Information

Database Object

SQL Statements


SQL Syntax Elements: Differences - SAP Documentation

Background documentation SQL Syntax Elements: Differences

The SQL syntax elements for Oracle Version 7 and SAP MaxDB in ORACLE SQL mode differ in the following areas:

  • Database Object

  • Name

  • Namespace

  • Access to Objects

  • Integer

  • Number

  • Data Type

  • Pseudo Column

  • Operator

  • Function

  • Format

More Information

SQL Mode ORACLE


update_statement - SAP Documentation

Background documentation update_statement

The UPDATE (update_statement) SQL statement is supported in SAP MaxDB with restricted syntax (UPDATE statement).

  • A Correlated Subquery is not permitted as a subquery (subquery) of a SET UPDATE clause in SAP MaxDB.

  • If CURRENT OF <cursor> is specified, the results table in SAP MaxDB must be based on an updatable table. A cursor built by a join or join view table is rejected.

More Information

SQL Statements: Differences


drop_table_statement - SAP Documentation

Background documentation drop_table_statement

The DROP TABLE (alter_table_statement) SQL statement is known in SAP MaxDB, but with the following syntax restrictions:

  • All synonyms and view tables based on the table are dropped in SAP MaxDB.

  • Specifying CASCADE CONSTRAINTS has no effect in SAP MaxDB.

More Information

SQL Statements: Differences


Database Analyzer Log Files - SAP Documentation

Background documentation Database Analyzer Log Files

To specify the log file directory, you can use the option -o <outputdir>. When activated, Database Analyzer saves the analysis data that is collected in the course of a day, as well as other log files, in the /YYYYMMDD subdirectories of the log file directory.

More information: Calling Database Analyzer

If you start Database Analyzer on the computer on which the database is installed, you do not need to specify the option -o. When activated, Database Analyzer saves the log files in the analyzer subdirectory of the database run directory.

More information: Database Administration, Log Files

DBAN.prt/DBAN<monitor_class>.prt

The file DBAN.prt contains the following information:

  • Information about the configuration and data relevant to the performance of the database

  • Bottlenecks discovered by Database Analyzer

The DBAN<monitor_class>.prt files contain information about SQL statements and tasks which were relevant during snapshots.

DBAN.prt/DBAN<monitor_class>.prt: Abbreviations
I | Information | General information, such as the number of executed commands
W1 to W3 | Warning levels 1 to 3 | Bottleneck warnings with low, medium, and high priority
E | Emergency | Critical problems, such as an imminent database crash
DBAN_<monitor_class>.csv

These files contain all analysis data. They allow you to check the runtime behavior.

There is one file for each monitor class (analysis area). You can use Microsoft Excel to open these files.

Log Files for the Database Analyzer Program

If problems with the Database Analyzer program occur, the system writes messages to the following log files:

  • DBAN.err: Error file

  • DBAN.inf: Runtime information for the Database Analyzer that was most recently started

    This file also contains information for identifying the database session (DBAN.sid file) and for identifying the processes (DBAN.pid file).

List of All Log Files
Database Analyzer: Log Files (All Database Types)
Log File | Description
DBAN.err | Error file
DBAN.inf | Current information about the Database Analyzer most recently started
DBAN.prt | Records Database Analyzer messages, including analysis rules and the current values that caused these messages More information: Database Analyzer Messages
DBAN_RUNNING_COMMANDS.prt | List of SQL statements that were active when starting Database Analyzer analysis. The SQL statements are logged only if the command monitor was enabled.
DBAN_SHOW_ACTIVE.prt | Information about tasks that were active when starting Database Analyzer analysis.
DBAN_USER_TASKS_CMDS_EXECUTED.prt | List/information about user tasks that executed at least one SQL statement during the last analyses.
DBAN_ANALYZER_TASK_STAT.csv | Information about the number of SQL statements, accesses to critical sections, dispatches, and physical reads of Database Analyzer task. This Database Analyzer information helps to identify the workload generated due to data collection.
DBAN_BACKUP.csv | Number and duration of physical write and read operations during data and/or log backups
DBAN_CACHES.csv | Successful and unsuccessful accesses to caches, and also hit rates
DBAN_CLUSTER_IO.csv | Information about clustered read and cluster compression operations
DBAN_CPU_UTILIZATION.csv | Information about the system load: CPU usage in user and system mode, broken down by system, database, and time in idle state.
DBAN_FILLING.csv | Fill level of the database (for example, the size of the data volumes, number of permanently and temporarily used pages)
DBAN_GC.csv | Information about garbage collector task activities: how often they were active, number of deleted and history objects, and number of physical I/O operations.
DBAN_IO.csv | Read and write operations to cache pages and data pages
DBAN_IOTHREADS.csv | Number and duration of physical write and read operations (I/O threads)
DBAN_LOAD.csv | Accesses and selectivity of SELECT, FETCH, INSERT, UPDATE, and DELETE statements
DBAN_LOGGING.csv | Number of log pages written, fill level of the log queue, and so on
DBAN_OVERVIEW.csv | Overview of the most important information from the log files of Database Analyzer
DBAN_REGIONS.csv | Information about accesses to critical sections
DBAN_RW_LOCKS.csv | Information about accesses to critical sections (reader-writer locks)
DBAN_SHARED_SQL.csv | Statistics about shared SQL (hit rates of the prepare cache, command cache, cleanup, unload)
DBAN_SPINLOCKS.csv | Information about accesses to critical sections (spinlocks)
DBAN_STRATEGY_INDEX.csv | Accesses and selectivity for index searches
DBAN_STRATEGY_PRIMKEY.csv | Accesses and selectivity for PRIMARY KEY searches
DBAN_STRATEGY_SCANS.csv | Accesses and selectivity for INDEX SCAN and TABLE SCAN searches
DBAN_SV.csv | Information about server tasks activities (such as number/duration of I/O, dispatches, suspends)
DBAN_SYNC_OVERVIEW.csv | Information about synchronization mechanisms (such as accesses to/collisions on regions, RW regions, spinlocks)
DBAN_SYS_ALLOCATION.csv | Information about memory allocation on runtime environment memory and system heap allocator
DBAN_TASK_ACTIVITIES.csv | Information about task activities (such as number of SQL statements, number of running user tasks, number of task changes)
DBAN_TASK_IO.csv | Number and duration of physical writes and reads from perspective of the log writer, the user task, and the pager
DBAN_TASK_STATES.csv | Number and execution duration of processed statements Number and wait duration of the task states Vsuspend, Vwait, sleep
DBAN_TRANSACTIONS.csv | Number of SQL statements and procedure calls, PREPARE, EXECUTE, COMMIT, and ROLLBACK statements, subtransactions, TIMEOUTS caused by locks, and conversions of row locks to table locks (Lock List Escalations)
DBAN_USER_TASK_ACT_DETAIL.csv | Number of user tasks in different task states (states such as running, waiting for log, waiting for I/O, waiting for region access)
Database Analyzer: SAP liveCache/OneDB-Specific Log Files
Log File | Description
DBAN_CACHES_OCCUPANCY.csv | Cache load and occupancy (proportion of OMS, SQL, and history pages in the data cache)
DBAN_OMS.csv | Number of calls by DB procedures, dereferences, deleted objects, history accesses
DBAN_OMS_CONTAINER.csv | Information on class containers (such as number of classes, occupancy, number of free pages)
DBAN_OMS_HEAP.csv | Information on the OMS heap (such as occupancy, current size, collisions)
DBAN_OMS_VERSIONS.csv | Information on OMS versions (such as number and age of versions used)


Command Buffer - SAP Documentation

Function documentation Command Buffer

If you call SQLCLI in multiple line mode, SQLCLI stores all commands in an internal command buffer.

More information: Multiple Line Mode

Activities

  • Displaying the contents of the command buffer: \p

  • Deleting the contents of the command buffer: \r

  • Editing Commands in an External File

  • Executing the command buffer: \g


Redirecting Results to a File - SAP Documentation

Procedure documentation Redirecting Results to a File

You redirect the result of one or more SQLCLI commands to a <file>.

Prerequisites

You are logged on to a database.

More information: Logging on to a Database

Procedure

  1. Enter the following command:

    \o <file>

    Note Note

    Enter the full path of the file.

    End of the note.

  2. Enter the command whose result is to be redirected to the <file>.

    <command>

    To enter multiple commands in succession, press Enter after each command.

  3. To stop redirection to a file, enter \o.

Example

  1. Log on to the DEMODB database as user MONA with the password RED:

    sqlcli -d DEMODB -u MONA,RED

  2. Create the file c:\tmp\redirected.txt to which SQLCLI is to redirect the result:

    \o c:\tmp\redirected.txt

  3. Enter the following command:

    \ds

  4. Enter another command (SQL statement).

    select * from HOTEL.CUSTOMER

  5. Stop redirection to the file.

    \o

    The redirected.txt file now has the following content:

    | Schema name | Owner name |

    | ----------- | -------------------------------- |

    | DBADMIN | DBADMIN |

    | DBM | DBM |

    | DOMAIN | DBADMIN |

    | HOTEL | MONA |

    | MONA | MONA |

    | OMS | DBADMIN |

    | SYSINFO | DBADMIN |

    | CNO | TITLE | FIRSTNAME | NAME | ZIP | ADDRESS|

    | ------ | ------- | ---------- | ---------- | ----- | -------|

    | 3200 | Company | ? | Datasoft | 90018 | 486 Maple Str.|

    | 3400 | Mrs | Mary | Griffith | 20005 | 3401 Elder Lane|

    | 3500 | Mr | Martin | Randolph | 60615 | 340 MAIN STREET, #7|

    | 3600 | Mrs | Sally | Smith | 75243 | 250 Curtis Street|

    | 3700 | Mr | Mike | Jackson | 45211 | 133 BROADWAY APT. 1|

    | 3900 | Mr | George | Howe | 75243 | 111 B Parkway, #23|

    | 4000 | Mr | Frank | Miller | 95054 | 27 5th Str., 76|

    | 4400 | Mr | Antony | Jenkins | 20903 | 55 A Parkway, #15|

    ...

More Information

Executing Commands


Executing Database Procedures - SAP Documentation

Procedure documentation Executing Database Procedures

You execute the database procedure <dbproc_name> in SQLCLI in interactive mode (session mode).

Note Note

For information about the other options for executing database procedures in SQLCLI, see Executing Commands

End of the note.

Prerequisites

You are logged on to the database.

More information: Logging On to a Database

Procedure

call <dbproc_name> (<parameter_value_1>,<parameter_value_2>,..., <parameter_value_n>)

Enter the parameter values <parameter_value_n> as follows:

  • For input parameters, enter the values between inverted commas.

  • For output parameters, enter placeholders. You can use either a question mark ? as placeholder or the name of the placeholder using the following notation: :<placeholder_name>

Example

SQL Tutorial, Database Procedures

More Information

SQL Reference Manual, Name of a Database Procedure (dbproc_name)


Exiting SQLCLI - SAP Documentation

Procedure documentation Exiting SQLCLI

You exit the interactive operating mode of SQLCLI.

Procedure

exit | quit | \q


Editing Commands in an External File - SAP Documentation

Procedure documentation Editing Commands in an External File

If you have entered a long command in SQLCLI, you can make changes to this command at a later stage by editing the command buffer in an external file.

Further information: Command Buffer

Prerequisites

You have already executed a command.

More information: Executing a Command

Procedure

  1. To export the contents of the command buffer to an external file, enter the following command:

    \e [<file>]

    • Enter the complete file path and <file> name.

    • If you do not specify a file, SQLCLI generates a temporary file.

    The system opens the file in an editor. To determine which editor is used, SQLCLI evaluates the environment variables SQLCLI_EDITOR, EDITOR, and VISUAL in succession. If you have not set any of these environment variables, Notepad is used on Microsoft Windows and vi on Linux and Unix. For information on setting environment variables, see your operating system documentation.

  2. Make the desired changes to the file.

  3. Save the file in the editor then close file and editor.

Result

You have changed the contents of the command buffer and can now execute the changed command with the command \g.

More Information

Multiple Line Mode

Batch File


Requesting Information About the Database Catalog - SAP Documentation

Procedure documentation Requesting Information About the Database Catalog

You use an SQLCLI command to request information about the database catalog of a database in interactive mode.

Note Note

For information about the other options for executing SQLCLI commands, see Executing Commands.

End of the note.

Prerequisites

You are logged on to the database.

More information: Logging On to a Database

Procedure

Enter one of the SQLCLI commands listed below.

SQLCLI returns information about the database objects that correspond to the specified [PATTERN] or [NAME] and to which you have access. If you do not specify a pattern, the system displays information about all the database objects to which you have access.

SQLCLI Commands: Requesting Information About the Database Catalog

Database Object

SQLCLI Command

Result

Column

\dc [PATTERN]

  • Column name

  • Data Type

  • Column length

  • Null value permitted or not

  • Position of column in primary key of table (if applicable)

Index

\de [PATTERN]

  • Index name

  • Columns contained in index

  • Position of column in index

  • Specifies whether index is UNIQUE

  • Sort sequence

Database Procedure

\dp [PATTERN]

  • Schema Name

  • Name of the database procedure

  • Package to which database procedure is assigned

Schema

\ds [NAME]

  • Schema Name

  • Owner

Table

\dt [PATTERN]

  • Schema Name

  • Table Name

  • Table type

Database users

\du [NAME]

  • Name of the database user

  • User properties

View

\dv [PATTERN]

  • Schema Name

  • View name

  • View types

The following syntax applies to the [PATTERN]:

Property | Description
PATTERN | [OWNER.][OBJECT_NAME] or [SCHEMA.][OBJECT_NAME]
OWNER | Owner of the database objects about which you want to request information
SCHEMA | Schema of the database objects about which you want to request information
OBJECT_NAME | Name of the database object

You can use the following placeholders:

  • For one character: _

  • For any number of characters: %

Example

Requesting information on the columns in the HOTEL.CUSTOMER table:

\dc HOTEL.CUSTOMER

Table "HOTEL.CUSTOMER"

Column Name | Type | Length | Nullable | KEYPOS

------------+------------+--------+----------+-------

ADDRESS | CHAR ASCII | 25 | NO |

CNO | FIXED | 4 | NO | 1

FIRSTNAME | CHAR ASCII | 10 | YES |

NAME | CHAR ASCII | 10 | NO |

TITLE | CHAR ASCII | 7 | YES |

ZIP | CHAR ASCII | 5 | YES |

(6 rows selected)


Multiple Line Mode - SAP Documentation

Function documentation Multiple Line Mode

This mode enables you to enter long commands on several lines. SQLCLI stores multiple line commands in an internal command buffer.

More information: Command Buffer

Prerequisites

You run SQLCLI in multiple line mode. You have the following options for activating multiple line mode:

  • Call option: sqlcli [<options>] -m

  • SQLCLI command: \mu ON

Activities

To start a new line in multiple line mode, press Enter.

To execute the command, either close the last line by entering a semicolon and pressing Enter or enter the command \g.

Example

  1. Log on to the DEMODB database in multiple line mode as user MONA with the password RED:

    sqlcli -d DEMODB -u MONA,RED

  2. Enter a multiple line SQL statement:

    select * from

    HOTEL.CUSTOMER

  3. Execute the SQL statement.

    \g

More Information

Editing Commands in an External File

Executing Commands


Executing SQL Statements - SAP Documentation

Procedure documentation Executing SQL Statements

You execute an SQL statement in SQLCLI in interactive mode (session mode).

Note Note

For information about the other options for executing SQL statements in SQLCLI, see Executing Commands.

End of the note.

Prerequisites

You are logged on to the database.

More information: Logging On to a Database

Procedure

Enter the SQL statement.

<sql_statement>

Example

  1. Log on to the DEMODB database as user MONA with the password RED and choose SQL mode INTERNAL:

    sqlcli -d DEMODB -u MONA,RED -S INTERNAL

  2. Display the columns CNO, TITLE, FIRSTNAME, NAME, and ZIP of table HOTEL.CUSTOMER:

    select CNO,TITLE,FIRSTNAME,NAME,ZIP from HOTEL.CUSTOMER

    CNO | TITLE | FIRSTNAME | NAME | ZIP

    -------+---------+------------+------------+------

    3000 | Mrs | Jenny | Porter | 10580

    3100 | Mr | Peter | Brown | 48226

    3200 | Company | ? | Datasoft | 90018

    3300 | Mrs | Rose | Brian | 75243

    3400 | Mrs | Mary | Griffith | 20005

    3500 | Mr | Martin | Randolph | 60615

    3600 | Mrs | Sally | Smith | 75243

    3700 | Mr | Mike | Jackson | 45211

    3800 | Mrs | Rita | Doe | 97213

    3900 | Mr | George | Howe | 75243

    4000 | Mr | Frank | Miller | 95054

    4100 | Mrs | Susan | Baker | 90018

    4200 | Mr | Joseph | Peters | 92714

    4300 | Company | ? | TOOLware | 20019

    4400 | Mr | Antony | Jenkins | 20903

    (15 rows selected) * Ok

More Information

Executing Database Procedures

For an introduction to the SQL statements available, see the SQL Tutorial. For a detailed overview of the syntax and semantics of SQL statements, see the SQL Reference Manual.


Overview of All SQLCLI Commands - SAP Documentation

Background documentation Overview of All SQLCLI Commands

The following table shows all SQLCLI commands that you can enter in interactive operation.

Note Note

Instead of an SQLCLI command, you can also enter an SQL statement or a database procedure. For an introduction to the SQL statements available, see the SQL Tutorial. For a detailed overview of the syntax and semantics of SQL statements, see the SQL Reference Manual.

End of the note.
Overview of all SQLCLI Commands
Command | Description
\! <shell_command> | Executes a shell command More information: Executing a Shell Command
\? \h[elp] | Displays all SQLCLI commands
\a[utocommit] [ON|OFF] | Switches AUTOCOMMIT mode on or off
\al[ign] [ON|OFF] | Switches formatted output of the results of SQL statements on or off
\c[onnect] | Logs a user onto the database More information: Logging On to a Database
\dc [PATTERN] | Lists all table columns that correspond to the PATTERN SQLCLI lists only those tables to which the current user has access. See Requesting Information About Database Objects
\de [PATTERN] | Lists all the indexes of database objects that correspond to the PATTERN
\di[sconnect] | Logs the user off from the database
\dp [PATTERN] | Lists all database procedures that correspond to the PATTERN
\ds [NAME] | Lists all schemas that correspond to the NAME pattern
\dt [PATTERN] | Lists all tables that correspond to the PATTERN
\du [NAME] | Lists all database users that correspond to the NAME pattern
\dv [PATTERN] | Lists all views that correspond to the PATTERN
\e[dit][<file>] | Writes the command buffer to the <file> where you can edit it with an editor More information: Command Buffer
\f[ieldsep] <separator> | Uses the <separator> character to separate the individual fields of the result
\g | Executes the commands in the command buffer and returns the results
\i[nput] <file> | Imports commands from the batch file <file> More information: Batch File
\m[ode] <INTERNAL|ORACLE> | Changes the SQL mode
\mu[ltiline] ON | OFF | Switches multiple line mode on | off More information: Multiple Line Mode
\o[utput] <file> | Redirects the result to a file More information: Redirecting Results to a File
\pa[ger] | Displays results consecutively (not page by page)
\p[rint] | Displays the current command buffer
\q[uit] | Exits SQLCLI
\r[eset] | Deletes the current command buffer
\ro[wsep] <separator> | Uses the <separator> character to separate the individual rows of the result
\s[tatus] | Displays general information about the database


Overview of All SQLCLI Call Options - SAP Documentation

Background documentation Overview of All SQLCLI Call Options

You can call the SQLCLI program with options:

sqlcli [<options>]

Call Options: Database Session
Option | Description
-d <database_name> | Database name
-e | Encrypted data transmission
-n <database_computer>[:<port>] | Name of the computer on which the database is installed and port of the installation-specific X server See Global Listener and X Servers
-r | Enforces execution of SQL statements as statements rather than as prepared statements
-S <sql_mode> | SQL mode
-u <database_user,database_user_password> | User name and password for logging on to the database
-U <user_key> | Log on using user key
-y <timeout> | Timeout value (in seconds) for the database session If you do not specify this option, SQLCLI uses the default value for the database.
-z | Switches AUTOCOMMIT mode off
Call Options: Input and Output
Option | Description
-c <separator> | When importing commands from a file, SQLCLI uses the <separator> to separate the individual commands. The default value is //.
-i <file> | Imports commands from the batch file <file>
-j | Displays results consecutively (not page by page)
-m | Activates multiple line mode for entering SQLCLI commands
-o <file> | Writes the results to the <file>
-x | Suppresses additional output such as the number of selected rows in a result set
Call Options: Formatting the Output
Option | Description
-A | Returns the result set unformatted (without being filled with spaces) SQLCLI separates columns with commas and rows with line breaks. This output format is particularly suitable for generating comma-separated files (.csf).
-a | Suppresses the output of the column names in the result set
-b <maximum_length> | Defines the maximum number of characters for output of LOB values. Default value: 10 characters
-f | SQLCLI returns all SQL statements before sending them to the database instance.
-F <separator> | Specifies which string SQLCLI uses as a separator between the individual columns of the result set Default value: |
-g <null_value> | Specifies the character for null values in the result set Default value: ?
-p <prefix> | Specifies which string is to be output before each row of the result set Default value: |
-P <suffix> | Specifies which string is to be output after each row of the result set Default value: |
-Q | Outputs each column of the result set in a new row
Call Options: Other
Option | Description
-E <exit_code> | If an error occurs, SQLCLI terminates automatically and returns the error message <exit_code>.
-h | Displays the help
-t | Outputs debug information
-T <file> | Activates the SQLDBC trace SQLDBC writes the trace data to the <file>
-v | Displays version information about the SQLCLI program


Executing a Shell Command - SAP Documentation

Procedure documentation Executing a Shell Command

You execute a shell command from within SQLCLI. This enables you, for example, to use Database Manager CLI to set the operational state of the database to ONLINE without exiting SQLCLI.

Prerequisites

You have started SQLCLI.

Procedure

\! <shell_command>

Example

You have already started SQLCLI and now realize that the operational state of the DEMODB database is still ADMIN.

While logged on as user OLEG with password MONDAY, you can use Database Manager CLI to set the operational state of the database to ONLINE by entering the following command in SQLCLI:

\! dbmcli -d DEMODB -u OLEG,MONDAY db_online


Executing Commands - SAP Documentation

Procedure documentation Executing Commands

You can use SQLCLI to execute SQL statements, database procedures, and special SQLCLI commands.

Prerequisites

Some commands require you to be logged on to the database.

More information: Logging On to a Database

Procedure

Executing an Individual Command in Interactive Mode (Session Mode)

  1. Call SQLCLI:

    sqlcli [<options>]

    More information: Overview of All SQLCLI Call Options

  2. Enter the command.

    <command>

    Note Note

    You can also enter commands in multiple line mode or edit commands in an external file.

    More information:

    • Multiple Line Mode

    • Editing Commands in an External File

    End of the note.

    Example Example

    You start SQLCLI and log on to the DEMODB database as user MONA with the password RED:

    sqlcli -d DEMODB -u MONA,RED

    You display general information about the database:

    \s

    host: localhost

    database : demodb

    xuserkey :

    user: MONA

    kernel version: KERNEL 7.6.00 BUILD 009-103-092-269

    sapdbc version: libSQLDBC 7.6.0 BUILD 009-103-092-248

    unicode : NO

    default code : ASCII

    sql mode : INTERNAL

    autocommit : ON

    End of the example.

More information:

  • Executing SQL statements

  • Executing Database Procedures

  • Requesting Information About the Database Catalog

  • Executing Shell Commands

Executing an Individual Command in Command Mode

Call SQLCLI and enter the command directly.

sqlcli [<options>] <command>

Example Example

sqlcli -d DEMODB -u MONA,RED \s

End of the example.

If you want to enter an SQL statement or a database procedure as a command, place the SQL statement or database procedure in quotation marks.

Example Example

sqlcli -d DEMODB -u MONA,RED "select CNO,TITLE,FIRSTNAME,NAME,ZIP from HOTEL.CUSTOMER"

SQLCLI executes the command and then exits.

End of the example.
Executing Several Commands from a Batch File

  • If you are in interactive mode, enter the path and name of the batch <file> from which SQLCLI is to import the command as follows:

    \i <file>

    More information: Batch File

  • If you are working in command mode, enter the path and name of the batch <file> when you log on to the database as follows:

    sqlcli [<options>] -i <file>

More Information

Redirecting Results to a File

Overview of All SQLCLI Commands


Batch File - SAP Documentation

Object documentation Batch File

SQLCLI can import commands from a batch file and process them in the background.

Per default, AUTOCOMMIT mode is activated. If you deactivate it, the batch file must contain an explicit COMMIT statement to ensure that SQLCLI executes the SQL statements immediately after the batch file has been imported.

Structure

The individual commands are in individual lines and separated by a separator.

You can specify the separator used in the batch file between two commands using the -c <separator> call option. The default value is //

More information: Overview of All Call Options

Note Note

Do not enter additional spaces in the batch file.

For the database system, the following two separators are different:

//

<blank>//

End of the note.

Example

CREATE TABLE city

(zip CHAR (5) KEY CONSTRAINT zip BETWEEN '10000' AND '99999',

name CHAR(20) NOT NULL,

state CHAR(2) NOT NULL)

//

CREATE TABLE customer

(cno FIXED (4) KEY CONSTRAINT cno BETWEEN 1 AND 9999,

title CHAR (7) CONSTRAINT title IN ('Mr', 'Mrs', 'Company'),

firstname CHAR (10) ,

name CHAR (10) NOT NULL,

zip CHAR (5) CONSTRAINT zip BETWEEN '10000' AND '99999',

address CHAR (25) NOT NULL,

FOREIGN KEY (zip) REFERENCES city ON DELETE RESTRICT)

//

\dt customer

//

COMMIT

In this example, AUTOCOMMIT mode is deactivated.


Logging On to a Database - SAP Documentation

Procedure documentation Logging On to a Database

To use the SQLCLI interactively (in session mode), you log on to the database as a database user. This opens a database session.

Prerequisites

The specified user is a database user.

More information: Database Administration, Database Users

Procedure

One Step Logon

Enter the following command:

sqlcli [<options>] -d <database_name> -u <database_user>,<database_user_password>

Property | Description
<options> | Call options for SQLCLI More information: Overview of All SQLCLI Call Options
<database_name> | Database Name
<database_user> | Name of the database user More information: Database Administration, Conventions for User Names and Passwords
<database_user_password> | Password of the database user

Example Example

One step logon to the DEMODB database on the PARMA computer as database user MONA with the password RED.

sqlcli -n PARMA -d DEMODB -u MONA,RED

End of the example.

To log on using a <user_key>, enter the following command:

sqlcli [<options>] -U <user_key>

More information: XUSER documentation

Two Step Logon

  1. Start SQLCLI:

    sqlcli [<options>]

  2. Log on to the database:

    \c [<options>] -d <database_name> -u <database_user>,<database_user_password>

More Information

Executing Commands

Overview of All SQLCLI Commands


SQLCLI - SAP Documentation

Component documentation SQLCLI

SAP MaxDB SQLCLI is a command line tool for entering and executing SQL statements, executing database procedures, and querying information about SAP MaxDB databases. You can use SQLCLI interactively or import commands from a file and execute them in the background. You can access databases on your local computer and on remote computers.

Note Note

Database Studio has similar functions to SQLCLI, but provides a graphical user interface.

End of the note.

SQLCLI can be used on all operating systems supported by the database system. It is a component of the SAP MaxDB software.

Features

  • Executing SQL statements

  • Executing Database Procedures

  • Requesting Information About the Database Catalog

  • Executing Shell Commands

  • Executing Commands (command syntax and options)

  • Overview of All SQLCLI Call Options

  • Overview of All SQLCLI Commands

More Information

Glossary, Syntax Notation


Directories - SAP Documentation

Object documentation Directories

In the Database Assistant or in the liveCache Assistant, the following directories are displayed in the Properties user menu under Directories:

Directories
IndepPrograms | <independent_program_path> Directory containing the programs used jointly by all the databases and applications
IndepData | <independent_data_path> Data, configuration, and run directories of databases and applications
InstallationPath | <dependent_path> Installation Directory of the Database Software
Rundirectory | <independent_data_path>\wrk\<database_name> Run directory whose path is stored in the general database parameter RunDirectoryPath.

Note Note

For SAP NetWeaver-Releases that use the database version SAP MaxDB 7.8, the directory structure of the database software has changed. We therefore recommend that you use the DBA Cockpit user menu Properties to display the directory overview.

End of the note.

More Information

Properties

Glossary, Directory, Run Directory

Database Administration, General Database Parameters


User Data - SAP Documentation

Procedure documentation User Data

By using the transaction Display/Change Integration Data, you can, among other things, specify or change user data for the DBM operator and for the standard database user.

To allow communication between various SAP systems, the standard database user and the DBM operator must be known, as the SAP system differentiates between two types of communication:

  • You must specify the DBM operator and password if you want to connect to the DBM server for database administration purposes. The storage of the DBM operator data in the SAP system can be either centralized or decentralized (Central/Decentral Authorization). SAP recommends that you store user data centrally.

  • You must specify the standard database user and password if you want to create an SQL connection to the database of another SAP system.

When an SAP system is installed, the DBM operator and the standard database user are stored in the system. This means that additional action is not necessary.

You must, however, check that the user data exists before starting the relevant SAP system, and correct or extend the data, if required. You can create and change the names and the passwords for the DBM operator and the standard database user using the transaction Display/Change Integration Data.

Note Note

For SAP liveCache technology, the liveCache-specific user menu User Data is available.

End of the note.

Procedure

  1. In the Database Assistant, choose [image] Edit [image] Display/Change Integration Data [image] (transaction DB11).

  2. Enter the name of the database connection.

  3. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  4. Check the information about the database connection (Database Name and Database Server) for completeness and accuracy.

  5. Choose User Data.

  6. Configure the DBM operator and the standard database user.

    DBM Operator:

    If the database connection already exists, the user name selected during the installation is displayed. You can change this. Enter and confirm your chosen password. If you want to use central authorization for the user, select Central Authorization.

    Standard Database User:

    If the database connection already exists, the operator name selected during the installation is displayed. You can change this. Enter and confirm your chosen password.

  7. Choose [image] Connection [image] Save [image] .

Result

The names and passwords are converted to upper-case letters and encrypted by the SAP system.

The user data for the DBM operator is stored in the DBCONUSR table in the SAP system. The user data for the standard database user is stored in SAP table DBCON. If you make changes, the corresponding entries in the table DBCONUSR or DBCON of the SAP system are updated.

Caution Caution

If the user data in the SAP system does not match the user data in the database, you must manually change the user data on the database, since saving the user data in the SAP system does not update the database data.

End of the caution.

  • You can change the DBM operator using any client of the Database Manager (DBMCLI, DBMRFC) (more information: Database Administration, DBM Operators).

  • You can change the standard database user on the database using a query tool of your choice (such as Database Studio or SQLCLI) with a corresponding SQL statement (more information: Database Administration, Database Users).

If you have selected decentral authorization, you must also store the user data on every application server in the XUSER file. To do so, follow the procedure described in Central/Decentral Authorization.

The change to the user data in the database is recorded in the SysLog of your SAP system (transaction SM21).


Current Status - SAP Documentation

Procedure documentation Current Status

Display Information about the Current Database Status or SAP liveCache Status

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose Current Status.

Result

The following views and functions are available:

  • Activities Overview

  • Configuration

  • Kernel Threads

  • I/O Operations

  • Critical Sections

  • Memory Areas

  • System Settings


Kernel Threads - SAP Documentation

Procedure documentation Kernel Threads

In the Current Status user menu, you can, among other things, display the activities of the individual tasks.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Kernel Threads [image] .

Result

The system displays an overview of the running activities of the individual tasks. You can set up a view of the tasks that meets your current requirements.

This thread overview helps you to identify the type of activities in your database system and possible bottlenecks by using the displays for the wait and lock situations.

The following views are available:

  • Task Manager

  • Thread Overview

  • Thread Statistics

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases


Installation - SAP Documentation

Procedure documentation Installation

In the Properties display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, name and version information.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Properties [image] Installation [image] .

Result

The following information is displayed:

Display | Explanation
Database Name/liveCache Name | Database Name
Database Server/liveCache Server | Database Server and Versions
Instance Type | Type of database
Kernel Version | Database Server and Versions
DBM Server Version | Database Server and Versions
Platform | Operating system

More Information

DBA Cockpit, Central System Data, Properties

Database/liveCache Assistant, Properties


Monitor - SAP Documentation

Procedure documentation Monitor

In the Performance display of the Database Alert Monitor or liveCache Alert Monitor, you can find, among other things, information about the status of the database trace and log queues.

The display of the liveCache Alert Monitor also contains information about whether the memory analysis is active in the OMS Monitor, along with the OMS versions.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Performance [image] Monitor [image] .

Result

Database Alert Monitor, Monitor
Display | Default for Alerts
Database Trace | Setting for the database trace. Yellow alert: Database trace is active or its status could not be determined
Log Queue Overflows /in % | Number of Log Queue overflows since the last measurement / as a percentage
Monitor: liveCache Alert Monitor

Display

Default for Alerts

OMS Memory Analysis

Yellow alert: If the memory analysis of the OMS monitor has started, or if the state of the memory analysis could not be determined.

The memory analysis should only be activated if it is required for concrete analyses, as it is very performance-intensive.

Age of oldest OMS version

Yellow alert: If the oldest OMS version is at least 8 but less than 12 hours old, or if the OMS version could not be determined.

Red alert: If the oldest OMS version is at least 12 hours old.

More information: Glossary, OMS Version

Database Trace

Setting for the database trace.

Yellow alert: Database trace is active or its status could not be determined.

Log queue overflows

Displays the number of log queue overflows since the last time the data collector ran. When the data collector runs for the first time since a restart or start of the liveCache Alert Monitor, the number of log queue overflows since the restart is displayed.

Log queue overflows in %

Displays the proportion (in %) of the log queue overflows as part of the total number of entries in the log queue since the last time the data collector ran.

When the data collector runs for the first time since a restart or start of the liveCache Alert Monitor, the proportion since the restart is displayed.

If you have problems with the OMS versions, proceed as described in Monitoring the OMS Versions.

More Information

DBA Cockpit, Database Trace

Database/liveCache Assistant, Database Trace


Message History - SAP Documentation

Procedure documentation Message History

Among other things, the Kernel user menu contains a display of the log files that are backed up when the database crashes, as well as the kernel message history.

Normally, at least the kernel log knldiag, the database trace log knltrace, and the memory dump rtedump are backed up if the database crashes. These files are in a subdirectory of the directory diaghistory, where they can be used for diagnoses.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Kernel [image] History [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] History [image] .

Result

The existing subdirectories of the diaghistory directory are displayed, sorted according to the time your backup was performed.

The available kernel message history (KnlMsg_<time_stamp> files) is displayed. You can open and analyze any of the log files.

More Information

DBA Cockpit: SAP MaxDB, Message History

Database Administration, Log Files


Thread Overview - SAP Documentation

Procedure documentation Thread Overview

In the Kernel Threads user menu you will find a thread overview.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Kernel Threads [image] Thread Overview [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] Kernel Threads [image] Thread Overview [image] .

Result

The system displays an overview of the threads and details for the threads that support database operation.

More Information

DBA Cockpit: SAP MaxDB, Thread Overview

Concepts of the Database System, Operating System Functions and Resources Used by Databases


Internal Subtree - SAP Documentation

Procedure documentation Internal Subtree

As well as the monitoring tree of the Database/liveCache Alert Monitor, an internal subtree with administration information is also generated for each database connection. Both trees are included together under the name of the database connection in the CCMS Monitoring (transaction code RZ20).

Procedure

Open the CCMS Monitoring. Choose [image] SAP CCMS Technical Expert Monitors [image] All Monitoring Contexts [image] MaxDB Monitoring: <Name of the database connection> [image] . Expand the subtree Collectors and Internals.

Result

The internal subtree contains nodes with data collectors with different runtime intervals. Each of these data collectors sends its results to multiple nodes in the corresponding monitoring tree.

Data Cannot be Collected

  • If the data collector cannot reach the chosen database instance, the Database/liveCache Alert Monitor is deactivated for the corresponding database connection.

  • Once an hour, an automatic check is made to see whether the data collector can be activated.

    If necessary, you can start this check immediately. To do this, choose the node of the chosen data collector, and double-click to start the analysis method.


Thread Statistics - SAP Documentation

Procedure documentation Thread Statistics

In the Kernel Threads user menu, you can find, among other things, a display of statistical values of task activities.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Kernel Threads [image] Thread Statistics [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Performance [image] Kernel Threads [image] Thread Statistics [image] .

Result

The system collects statistical values for the threads since the last start of the system.

More Information

DBA Cockpit: SAP MaxDB, Thread Statistics

Concepts of the Database System, Operating System Functions and Resources Used by Databases


State - SAP Documentation

Procedure documentation State

In the Properties display of the Database Alert Monitor and the liveCache Alert Monitor, you can find, among other things, information on the database state.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Properties [image] State [image] .

Result

The system displays the following:

Display | Default for Alerts
Current state | Current operational state
Restart | Shows you when the database and/or liveCache was started

More Information

DBA Cockpit, Central System Data, Properties

Database/liveCache Assistant, Operational State


Database Monitoring - SAP Documentation

Procedure documentation Database Monitoring

The statistics for displays in the current database/SAP liveCache status are determined from the last starting point of Database/liveCache Monitoring.

Procedure

Database/liveCache monitoring is automatically activated when the database is started. This means that statistics are usually recorded from the last start of the database or SAP liveCache. In order to check the status of the Database/liveCache Monitoring, choose the System Settings display, for example (DBA Cockpit/Database/liveCache Assistant).

Resetting Monitor Data

If you want to monitor the database status from the current point in time, in the Activities Overview display, (DBA Cockpit/Database/liveCache Assistant) choose the [image] Activity Monitor [image] Reset Monitor Data [image] . All relevant system tables are initialized and the statistical data is collected as of this time.

Database/liveCache Monitoring Data

The database/liveCache monitoring data is constantly collected by the database system in a range of system tables, and made available for your use in the following user menus of the DBA Cockpit or the Database/liveCache Assistant, among other places:

DBA Cockpit | Database Assistant | liveCache Assistant
Caches | Caches | Caches
Heap Usage |  | Heap Usage
Data Area | Data Area | Data Area
Log Area | Log Area | Log Area
Activities Overview | Activities Overview | Activities Overview
OMS Monitor |  | OMS Monitor
Class Containers |  | Class Containers
Monitoring Statistics |  | Monitor
OMS Versions |  | OMS Versions

More Information

Executing Performance Analysis in CCMS

Database Alert Monitor

liveCache Alert Monitor


Memory - SAP Documentation

Procedure documentation Memory

In the Space Management display of the liveCache Alert Monitor, you can find data such as information about the free memory space in the main memory area.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

Procedure

Open the liveCache Alert Monitor. Choose [image] Space Management [image] Memory [image] .

Result

Display

Default for Alerts

Data Cache Usage – total

Yellow alert: if the usage in the data cache exceeds 90% Red alert: if the usage in the data cache exceeds 99%

Data Cache Usage – OMS Data

Yellow alert: if the usage in the data cache exceeds 90%.

Red alert: if the usage in the data cache exceeds 99%.

Data Cache Usage – SQL Data

Yellow alert: if the usage in the data cache exceeds 95%.

Red alert: if the usage in the data cache exceeds 99%.

Data Cache Usage – History/Undo

Yellow alert: if the usage in the data cache exceeds 40%.

Red alert: if the usage in the data cache exceeds 50%.

Out of Memory Exceptions

Information about whether the following event of the OMS intermediate layer and the liveCache basis layer has occurred for one or more of the database procedures

Yellow alert: if the event has occurred for at least one of the database procedures. In this case, the number of OutOfMemoryExceptions is totaled for all database procedures and this total is displayed. Green alert: if no OutOfMemoryExceptions have occurred.

OMS Terminates

Number of OMS terminations since the last measurement (15 minutes ago)

Red alert: if an OMS termination occurred.

Heap Usage

Yellow alert: if the usage in the OMS heap exceeds 80 %

Red alert: if the usage in the OMS heap exceeds 90 %.

Heap Usage in KB

No default alert level. Configure an appropriate value for the size of your main memory.

Maximal Heap Usage in KB

Maximum usage of the OMS heap (in KB)

System Heap in KB

Size of the system heap (in KB)

Parameter OMS_HEAP_LIMIT (KB)

Setting of parameter OmsMaxHeapSize

If problems arise with the data cache and the OMS heap, proceed as described in Monitoring the Main Memory Areas.

More Information

DBA Cockpit, Caches, Heap Usage, Class Container

liveCache Assistant, Caches, Heap Usage, Class Container


Monitor - SAP Documentation

Procedure documentation Monitor

In the Performance user menu, you can find, among other things, a monitor for analyzing the current status of an SAP liveCache database since the last start of liveCache Monitoring.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

The SAP liveCache database is in the ONLINE operational state.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Performance [image] Monitor [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] Monitoring Statistics [image] .

Result

These monitoring statistics deliver data such as statistical data about the accesses to individual caches and pages, SQL statistics and information about lock behavior and database traces.

More Information

  • Caches

  • Activities Overview

  • SQL Locks

  • Database Trace

  • DBA Cockpit: SAP MaxDB, Monitoring Statistics


Stopping liveCache - SAP Documentation

Procedure documentation Stopping liveCache

In the Operating user menu you can, among other things, stop an SAP liveCache database (transfer it to operational state OFFLINE).

Note Note

If a user is performing administration functions, administration is locked for all other users.

End of the note.

The stopping of an SAP liveCache database is performed using the Database Manager with the DBM command db_offline.

Prerequisites

In accordance with the authorization concept, the user was assigned one of the roles SAP_BC_LVC_OPERATOR, SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

Stopping with the DBA Cockpit

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Properties [image] Display Operating Actions [image] Stop liveCache [image] .

Stopping with the liveCache Assistant

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Operating [image] .

  5. Choose Stop liveCache.

Stopping in the Background

  1. Choose ABAP Editor (transaction SE38).

  2. Enter the report name RSLVCSTOP.

  3. Create a variant of the report. You must enter the name of the database connection, among other things.

  4. You can schedule the report with the variant defined by you for background processing (Define Job (transaction SM36) Scheduling Background Jobs).

Stopping from the Operating System Level

Function Module for Starting/Stopping/Initializing

Result

All data that is currently in the data cache is saved to the data volumes. This ensures that the SAP liveCache database is in a consistent state.

The SAP liveCache database is transferred to the OFFLINE operational state.

If an error occurs during the stop, you can use the kernel log knldiag (Current Messages) and the current lcinit.log Logs to analyze the cause of the error. You will find an overview of liveCache operating in the DBA Cockpit in the user menu Properties.

The stopping of the SAP liveCache database is also logged in the SysLog of your SAP system (transaction SM21).

More Information

  • Starting liveCache

    Initializing liveCache

  • DBA Cockpit: SAP MaxDB, Properties, Operating (liveCache)

  • liveCache Assistant, Operating


Deleting a Connection - SAP Documentation

Procedure documentation Deleting a Connection

In the Integration user menu, you can, among other things, delete a SAP liveCache connection.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Integration [image] .

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  5. Check the SAP liveCache connection information (liveCache Name, liveCache Server) for correctness.

  6. Choose [image] Connection [image] Delete [image] .

  7. Confirm this entry.

Result

The system displays a message if the SAP liveCache connection was successfully deleted. The SAP liveCache connection information is deleted from the tables DBCON and DBCONUSR.

Access to the SAP liveCache database is no longer possible from the SAP system.

More Information

Integrating a Database System


Starting liveCache - SAP Documentation

Procedure documentation Starting liveCache

In the Operating user menu you can, among other things, start an SAP liveCache database (transfer it to operational state ONLINE).

Note Note

If a user is performing administration functions, administration is locked for all other users.

End of the note.

An SAP liveCache database is started using the Database Manager. The DBM Server executes the control file lcinit.bat with the option restart. In this case, the volumes are not formatted. The data is loaded from the data volumes into the SAP liveCache database. Among other things, the liveCache applications are also registered.

Prerequisites

In accordance with the authorization concept, the user was assigned one of the roles SAP_BC_LVC_OPERATOR, SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

Starting with the DBA Cockpit

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Properties [image] Display Operating Actions [image] Start liveCache [image] .

Starting with the liveCache Assistant

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Operating [image] .

  5. Choose Start liveCache.

Starting in the Background

  1. Choose ABAP Editor (transaction SE38).

  2. Enter the report name RSLVCSTART.

  3. Create a variant of the report. You must enter data such as the names of the database connection.

  4. You can schedule the report with the variant defined by you for background processing (Define Job (transaction SM36), Scheduling Background Jobs).

Starting from the Operating System Level

Function Module for Starting/Stopping/Initializing

Result

The SAP liveCache database is transferred to the ONLINE operational state. The liveCache applications are registered.

If an error occurs during the start, you can use the kernel log knldiag (Current Messages) and the current lcinit.log Logs to analyze the cause of the error. You will find an overview of liveCache operating in the DBA Cockpit in the user menu Properties.

The start of the SAP liveCache database is also logged in the SysLog of your SAP system (transaction SM21).

More Information

  • Stopping liveCache

    Initializing liveCache

  • DBA Cockpit: SAP MaxDB, Properties, Operating (liveCache)

  • liveCache Assistant, Operating

  • Troubleshooting


OMS Locks - SAP Documentation

Procedure documentation OMS Locks

In the Problem Analysis user menu, you can find, among other things, a display of the OMS locks.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

The SAP liveCache is now in the ONLINE operational state.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] OMS Locks [image] Overview [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] OMS Locks [image] .

Result

The logical object locks are displayed.

More Information

DBA Cockpit: SAP MaxDB, OMS Locks


Statistics - SAP Documentation

Procedure documentation Statistics

In the liveCache: Monitoring user menu in the liveCache Assistant, you can find data such as size statistics for tables and class containers.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection.

    You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose Statistics.

Result

The system displays the following:

  • Table Sizes

  • Class Container Sizes

More Information

Scheduling Updates of the SQL Optimizer Statistics


liveCache Applications - SAP Documentation

Procedure documentation liveCache Applications

The liveCache Alert Monitor provides information on the application SAP SCM.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

Open the liveCache Alert Monitor. Choose [image] liveCache Applications [image] .

Result

The system displays the following:

General | Name and version of the components from APO SCM, version of the LCApps, number of work processes
Connections | Connection information
Periodic Jobs and Administration Reports | Programs of the application that are regularly started Refer also to: Monitoring OMS Versions
Tracing | Number of liveCache application traces/checks
Miscellaneous | Display of the RFC connections

For more detailed information about the individual nodes, refer to the long texts and the SAP SCM documentation.

More Information

DBA Cockpit: SAP MaxDB, Register LCApps


Creating a Connection - SAP Documentation

Procedure documentation Creating a Connection

In the Integration user menu, you can, among other things, create a new liveCache connection.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection.

  3. Choose liveCacheIntegration.

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  5. Specify the SAP liveCache connection information (liveCache Name, liveCache Server).

  6. Enter the required user data.

  7. If necessary, you can make specifications for administration reports or control automatic monitoring.

  8. Choose [image] Connection [image] Save [image] .

Result

The system displays a message if the SAP liveCache connection was successfully created. The SAP liveCache connection information is stored in the tables DBCON and DBCONUSR.

More Information

Integrating a Database System


liveCache: Monitoring - SAP Documentation

Procedure documentation liveCache: Monitoring

In the liveCache Assistant user menu, you can find displays and tools for monitoring an SAP liveCache database.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

or

Many DBA functions are integral parts of the DBA Cockpit and can therefore be called via the DBA Cockpit.

Result

The properties of the SAP liveCache database are displayed. You can open the Alert Monitor for the SAP liveCache database. Monitoring functions and tools are available to you in the following areas:

  • Current Status

  • Problem Analysis

  • Statistics

  • Administration

  • Tools

You can also have the User, Error Codes and information from System Tables of Schema SYSINFO displayed.

Displaying Critical States (Alerts)

If necessary, when you begin work with the liveCache assistant a query immediately appears to ask whether you want to have the critical states (Alerts) displayed.

If you do not require this option, you can prevent the window appearing for all users by switching it off. Select the relevant option in the window or go to Automatic Monitoring.

Note Note

The information displayed in the specific areas can vary depending on the specific SAP liveCache version in use. It is possible that only some of the information described is displayed for certain SAP liveCache versions.

End of the note.


Operating Logs - SAP Documentation

Procedure documentation Operating Logs

In the Logs user menu, you can find, among other things, a display of logs from liveCache Operating (starting, stopping, initializing).

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Logs [image] Operating [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Logs [image] Operating [image] .

Result

The system displays the following:

  • Current Log

  • History

You can also display the control file responsible for the operating.

More Information

DBA Cockpit: SAP MaxDB, Operating Logs


OMS Versions - SAP Documentation

Procedure documentation OMS Versions

In the Performance user menu, you can find, among other things, a display of the OMS versions since the last start of liveCache Monitoring.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

The SAP liveCache database is in the ONLINE operational state.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Performance [image] OMS Versions [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] OMS Versions [image] .

Result

Among other things, the following information is displayed for all OMS versions:

Memory Consumption | Current usage of the OMS heap More information: Glossary, OMS Heap
Age (Hours) | Age of the OMS version
Time | Time at which the OMS version was generated
Rolled Out | YES: The OMS version has been displaced from the OMS heap, since the limit of one of the database parameters OmsHeapThreshold or OmsVersionThreshold has been reached. Database Administration, Special Database Parameters
Pages Rolled Out | Displays the number of pages displaced from the OMS heap

More Information

  • Monitoring OMS Versions

  • liveCache Alert Monitor, Monitor

  • DBA Cockpit: SAP MaxDB, OMS Versions

  • Concepts of the Database System, Example: Consistent View


Operating - SAP Documentation

Procedure documentation Operating

In the Administration user menu, you can, among other things, start, stop or initialize an SAP liveCache database, or register liveCache applications.

Note Note

If a user is performing administration functions, administration is locked for all other users.

End of the note.

Starting, stopping or initializing an SAP liveCache database is performed using the Database Manager CLI.

Prerequisites

In accordance with the authorization concept, the user was assigned one of the roles SAP_BC_LVC_OPERATOR, SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Operating [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Properties [image] Display Operating Actions [image] .

Result

The system displays the following SAP liveCache properties:

  • Name of the Database Connection

  • liveCache Name

  • liveCache Server

Database version/liveCache version | Database Server and Versions
DBM Server Version | Database Server and Versions
Operating System | Name
Operational state/liveCache state | Operational State
Started at | Time stamp
Last Initialization | SAP liveCache Technology: Action status, current log display and action time stamp
Last Start/Stop Action | SAP liveCache Technology: Action status, current log display and action time stamp
Automatic Log Backup OFF | ON | Activating Automatic Log Backup
Database Trace OFF | ON | Database Trace
Command monitors OFF | ON | Command Monitor
Resource Monitor OFF | ON | Resource Monitor

If you want to see all the logs, not just the current ones, switch to the Operating Logs display.

These values are calculated again in the following cases:

  • You start transaction LC10.

  • You choose the Refresh button.

  • After the SAP liveCache is started, stopped or initialized.

Further Explanations

Directories, Files

You can choose the following functions:

  • Starting liveCache

  • Stopping liveCache

You can initialize the liveCache and register LCApps.

Note Note

The Start liveCache and Stop liveCache functions in the Operating menu are not available for an SAP liveCache OneDB.

End of the note.

More Information

DBA Cockpit: SAP MaxDB, Operating (liveCache), Properties


OMS Monitor - SAP Documentation

Procedure documentation OMS Monitor

In the Performance user menu, you can find, among other things, a display of information about events of the OMS intermediate layer and SAP liveCache basis layer for each database procedure since the last start of the liveCache Monitoring.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

The SAP liveCache database is in the ONLINE operational state.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Performance [image] OMS Monitor [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] OMS Monitor [image] .

Result

Memory Analysis: If this status display is green, the memory analysis is running (more information: liveCache Alert Monitor, Monitor).

liveCache Monitor: If this status display is green, liveCache monitoring is activated.

Display

The following displays are available for the database procedures:

  • Runtime

  • Object Accesses

  • Import/Export Streams

  • Memory Analysis

  • Transaction Counters

  • Cost Overview

  • Overall View

Runtime

The system displays, among other things, the following analysis data about the runtime of a database procedure:

Column | Explanation
Max./Min./Ø Runtime | Maximum, minimum, and average runtime in milliseconds
GUID | GUID of the object that defines the methods
Max./Min./Ø Wait time | Maximum, minimum and average wait time for omsNewConsistentV
Object Accesses

The information includes the following analysis data:

Column | Explanation
OMS object accesses | Number of OMS accesses to objects using OID (OMS dereferences)
Basis object accesses | Number of accesses to objects that only had to be delivered by the liveCache basis layer; that is, that did not have to be met from the OMS
Basis key accesses | Number of basis object accesses using keys
Basis iterator accesses | Number of basis object accesses using iteration from an object container
OMS memory operations | Number of OMS memory operations of objects
Basis memory operations | Number of memory operations that were performed by the SAP liveCache basis layer
Deleted objects (OMS) | Number of deleted OMS objects
Deleted objects (Basis) | Number of objects that were deleted from the SAP liveCache basis layer
Lock operations | Number of lock operations that were performed by the SAP liveCache basis layer
History accesses | Number of object accesses (in pages) that required access to the log
Iterator history accesses | Number of object accesses (in pages) that required access to the log using the iterator
Loaded objects | Number of loaded objects of variable length
Stored objects | Number of stored objects of variable length
Ø Object size | Average length of an object of variable length
Import/Export Streams

Minimal/maximum/average number of communications with the buffer that were performed for the import/export of stream parameters of a database procedure and of application tables.

Minimum/maximum/average number of imported/exported lines into/out of streams and application tables.

Memory Analysis

If memory analysis is switched on, the status display memory analysis is green. The information includes the following analysis data:

Column | Explanation
Cache Size | Size of the OMS cache in bytes
MIN-/MAX-/Ø -Memory usage | Minimum, maximum and average number of bytes that were occupied using omsMalloc
MIN/MAX/Ø Memory release | Minimum, maximum and average number of bytes that were released using omsFree
Transaction Counters

Display of information about the transactions such as exceptions and timeouts. The information includes the following analysis data:

Transaction Counters
Column | Explanation
C++ Exceptions | Number of C++ exceptions that occurred
OutOfDate Exceptions | Number of OutOfDateExceptions that occurred. These occur when a lock is requested for an instance that was already changed in the meantime.
Timeouts | Number of timeouts that occurred while waiting for locks
Rollback | Number of subtransactions that were rolled back
Commit | Number of subtransactions that were ended with COMMIT
Nesting | Maximum nesting of subtransactions
OutOfMemory Exceptions | Number of OutOfMemoryExceptions that occurred
Cost Overview

To be able to evaluate the access to objects using the methods specified, average values are calculated for some of the analysis data relevant for cost determination.

More Information

liveCache Assistant, Class Containers

DBA Cockpit: SAP MaxDB, OMS Monitor, Class Containers


Configuring Volumes - SAP Documentation

Procedure documentation Configuring Volumes

In the Configuration user menu, you can find, among other things, functions to configure volumes.

Note Note

We recommend that you call the volume configuration using this function only for making changes, as this call is very performance-intensive. If you only want to display the volumes, select the display of memory usage for the data area/log area, or display the configuration of the volumes.

End of the note.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Configuration [image] Volumes [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Data Area / Log Area [image] (SAP NetWeaver 7.1:   Administration [image] Volumes [image] ).

Result

The system displays the following SAP liveCache properties:

  • liveCache Name

  • liveCache Server

  • liveCache Status

You can perform the following actions for the selected SAP liveCache:

  • Configuring the Data Area

  • Configuring the Log Area

More Information

  • Monitoring the Log Area

    Monitoring the Data Area

  • DBA Cockpit: SAP MaxDB, Data Area, Log Area

  • Database Administration, Troubleshooting


Monitoring OMS Versions - SAP Documentation

Procedure documentation Monitoring OMS Versions

Pay attention to the following aspects when you monitor OMS versions:

  • Age of an OMS Version

    OMS versions can be processed for several hours and therefore use up increasingly more main memory in the OMS heap. If OMS versions are open for a very long time, the SAP liveCache database has to hold a lot of history data (links to Undo Log entries) which increasingly fills up the data cache. In some circumstances, data is even written from the data cache to the data area. The increase in I/O has a negative effect on SAP liveCache performance. Therefore, do not keep OMS versions open for longer than eight hours.

  • Load on the OMS Heap

    If OMS versions are swapped from the OMS heap, then this data is no longer accessed from the OMS heap but from the data cache. This type of access is significantly bad for performance and should be avoided if possible.

Procedure

Use the OMS Versions display (DBA Cockpit/liveCache Assistant). You can check the ratio of history data to OMS data in the data cache in the Caches display (DBA Cockpit/liveCache Assistant). Use the Monitor display in the liveCache Alert Monitor.

Critical Situations

  • An OMS version is older than eight hours.

    The application must close this OMS version.

    • Schedule the report /SAPAPO/OM_REORG_DAILY once a day in the application system. All OMS versions older than eight hours are deleted.

    • Schedule the report /SAPAPO/OM_DELETE_OLD_SIMSESS every 30 minutes.

  • Some pages of the OMS versions are displaced from the OMS heap (displaced pages).

    • The application must work with less data within an OMS version.

    • You can reduce the size of the data cache (general database parameter CacheMemorySize) and increase the OMS heap (general database parameter OmsMaxHeapSize) instead.

    • You can make more main memory available to increase the size of the OMS heap (general database parameter OmsMaxHeapSize).

  • The amount of history data (link to Undo Log Entries) has risen significantly compared to the OMS data.

    Check whether old OMS versions exist. Check whether the reports /SAPAPO/OM_REORG_DAILY and /SAPAPO/OM_DELETE_OLD_SIMSESS have run.

More Information

Performance Analysis in CCMS: SAP liveCache Technology

Glossary, OMS, OMS Version, OMS Heap

Database Administration, General Database Parameters


liveCache: Alert Monitor - SAP Documentation

Procedure documentation liveCache: Alert Monitor

In the liveCache Assistant, you can open the liveCache Alert Monitor for monitoring an SAP liveCache database.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

Procedure

In the user menu, choose liveCache Assistant (transaction LC10). Choose [image] liveCache [image] Alert Monitor [image] MaxDB Monitoring [image] liveCache [image] <name of the database connection> [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Alerts [image] Alert Monitor (Old/New Version) [image] .

Expand your chosen liveCache Alert Monitor.

Result

The Alert Monitoring is activated and the SAP liveCache connection has been added to the liveCache Alert Monitor Tree.

If necessary, the liveCache Alert Monitor Tree display should be updated. To do this, choose Refresh and Invalidate Data Cache in the liveCache Alert Monitor.

More Information

liveCache Alert Monitor

DBA Cockpit: SAP MaxDB, Alerts


Console - SAP Documentation

Procedure documentation Console

The liveCache Assistant contains a display of the information from a runtime analysis of system bottlenecks in an SAP liveCache database detected with the XCONS (database console) tool.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Console [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] Database Console [image] .

Result

You can use all of the database console functions.

More Information

  • DBA Cockpit: SAP MaxDB, Database Console

  • XCONS documentation

    XCONS Options for Displaying Information about the Database


Registering LCApps - SAP Documentation

Procedure documentation Registering LCApps

In the Operating user menu, you can, among other things, initialize SAP liveCache applications (LCApps) in the SAP liveCache database.

If you start or initialize an SAP liveCache database using the CCMS function (Starting liveCache, Initializing liveCache), the SAP liveCache applications are always implicitly registered. It is therefore only necessary to execute the Register LCApps function in exceptional cases, such as for support purposes.

Note Note

If a user is performing administration functions, administration is locked for all other users.

End of the note.

An SAP liveCache database is started using the Database Manager. The DBM Server executes the control file lcinit.bat with the option register . The SAP liveCache applications are registered.

Prerequisites

In accordance with the authorization concept, the user was assigned one of the roles SAP_BC_LVC_OPERATOR, SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

Registering LCApps with the DBA Cockpit

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Properties [image] Display Operating Actions [image] Register LCApps [image] .

Registering LCApps with the liveCache Assistant

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Operating [image] .

  5. Choose [image] Administration [image] Register LCApps [image] .

Result

The SAP liveCache applications (LCApps) are registered in the SAP liveCache database.

More Information

  • DBA Cockpit: SAP MaxDB, Operating (liveCache)

  • liveCache Assistant, Operating

  • liveCache Alert Monitor, liveCache Applications


Changing a Connection - SAP Documentation

Procedure documentation Changing a Connection

In the Integration user menu, you can, among other things, change a SAP liveCache connection.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER. You are in the user menu of the user with the authorizations that correspond to this role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Integration [image] .

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  5. Check the SAP liveCache connection information (liveCache Name, liveCache Server) for completeness and accuracy.

  6. If necessary, you can make specifications for user data and administration reports or control automatic monitoring.

  7. Choose [image] Connection [image] Save [image] .

Result

The system displays a message if the SAP liveCache connection was successfully changed. The SAÜ liveCache connection information is stored in the tables DBCON and DBCONUSR.

Note Note

After changing the connection, you must stop and then restart all application servers that have access to the SAP liveCache database. Otherwise, significant connection problems can occur.

End of the note.

Stop and restart all application servers that have access to the SAP liveCache database.

More Information

Integrating a Database System


Backing Up liveCache: Background Processing - SAP Documentation

Procedure documentation Backing Up liveCache: Background Processing

You can automate the backups for SAP liveCache technology (complete or incremental data backup, log backup) using SAP background processing.

Prerequisites

The user has been assigned a role in accordance with the authorization concept: SAP_BC_LVC_OPERATOR, SAP_BC_LVC_ADMINISTRATOR, SAP_BC_LVC_SUPERUSER.

You have defined a backup template for the backup type that you want to perform (Backup Templates).

You have integrated the SAP liveCache database into the SAP system using Integration.

Procedure

Schedule the report RSLVCBACKUP with the variant for background execution (SAP recommendation) or execute this report directly using the ABAP Editor (transaction SE38).

Scheduling Report RSLVCBACKUP for Background Processing

Create the variants for the desired backup types.

  1. Open ABAP Editor (transaction SE38).

  2. Enter the report name RSLVCBACKUP.

  3. Select Variants and choose Display or Change.

  4. Enter a name for your variant and choose Create.

  5. Enter the following values:

    Connection Name: Name of database connection of the SAP liveCache database (for example, LCA)

    Logical Backup Medium: Name of the backup template

    Select the type of backup (full or incremental data backup, interactive log backup, automatic log backup)

  6. Enter the attributes.

  7. Schedule this report for background processing (Defining Jobs (transaction SM36), Scheduling Background Jobs).

    Specify the report name RSLVCBACKUP and the name of the desired variant.

Direct Execution of Report RSLVCBACKUP

  1. Open ABAP Editor (transaction SE38).

  2. Enter the report name RSLVCBACKUP.

  3. Choose Execute.

  4. Enter the following values:

    Connection Name: name of database connection of the SAP liveCache database (for example, LCA)

    Logical Backup Medium: Name of the backup template

    Select the type of backup (full or incremental data backup, interactive log backup, automatic log backup)

  5. Choose Execute.

    Note Note

    You can use the DBA Planning Calendar to automate the actions.

    End of the note.


Index Analysis - SAP Documentation

Procedure documentation Index Analysis

Indexes are essential for fast and efficient access to the data of the database. At regular intervals, check whether the indexes in the database system or SAP system are missing or bad. This is particularly important after major actions, such as an upgrade.

There are two possible types of inconsistency:

  • Indexes exist in the database, but are not defined in the ABAP Dictionary

  • Indexes are defined in the ABAP Dictionary, but are not included in the database, or are bad

Procedure

You have the following options for the index analysis:

  • DBA Cockpit: Indexes, Tables/Views/Synonyms, Missing Tables and Indexes

  • Database Alert Monitor or liveCache Alert Monitor: Bad Indexes

    Database Alert Monitor: SAP Consistency

  • Database/liveCache Assistant: Indexes, Tables/Views/Synonyms

  • Bad indexes are always displayed in the Properties (DBA Cockpit) or Properties (Database/liveCache Assistant).

  • DB Filling/Tables and Indexes

Result

Always recreate a missing index immediately, since it is very important for database system functionality. Indexes are used for special table scans and are important for performance.

You can use the database utility to recreate missing indexes (defined in the ABAP Dictionary, missing in the database).

More Information

Database-ABAP Dictionary Consistency

Executing Performance Analysis in CCMS

Database Studio, Activating or Deactivating Indexes, Creating Indexes


Setting Up and Using the DBA Planning Calendar - SAP Documentation

Procedure documentation Setting Up and Using the DBA Planning Calendar

To make sure that your database operates efficiently and in line with security requirements, you need to execute certain database management tasks, some of which need to be repeated regularly. You can plan these using the DBA Planning Calendar: DBA Cockpit, DBA Planning Calendar, or Database Assistant, or liveCache Assistant, DBA Planning Calendar.

The first time you start your system, the DBA Planning Calendar is empty. You can use it to schedule new actions (for example, data backups, log backups, updates of SQL Optimizer statistics and database structure checks). These are then performed at the specified time.

You can set up the DBA Planning Calendar by selecting a planning pattern or choosing a predefined action from the Action Pad. If you add a new action, this is defaulted as a once-only execution.

You can schedule, change or delete actions as required. Most of the actions that can be planned with the DBA Planning Calendar should be scheduled as periodic actions. You must check the calendar daily to be sure that scheduled actions have been carried out correctly.

Actions

At present, the following actions are available in the DBA Planning Calendar in the Action Pad:

Action Pad
Task Area | Entry in the Action Pad | Short Name
Data and Log Backups | Complete Data Backup Incremental Data Backup Activate Automatic Log Backup Deactivate Automatic Log Backup Log Backup Archive Log Backup Files | DataBackup IncrBackup AutoLogOn AuotLogOff LogBackup ArchivFiles
Determining Statistics for the SQL Optimizer | Select Tables for Update Statistics Update Statistics for Selected Tables Update All Optimizer Statistics | PrepUpdStat UpdStats UpdAllStats
Database Structure Checks | Check database structure of the snapshot Check the Database Structure Check the Database Structure (Tables Only) | CheckDataSn CheckData CheckTables
Determine Table Size and Growth | Update Table Statistics | CollTabSize
Determine Class Container Sizes (SAP liveCache technology only) | Update Class Container Statistics | CollClaccCo
Checking Backups | Check Complete Data Backup Check Incremental Data Backup Check Log Backup | CDataBackup CIncrBackup ClogBackup
Execute DBM Commands | Executing DBM Commands | DBMExecute

Prerequisites

Think about a suitable planning concept for the most important task areas. Before a scheduled backup action is due to start, make sure that the data carriers have been inserted and are ready to run. You can configure the back end of the DBA Planning Calender to control the execution of background jobs (Setting Up the DBA Planning Calendar).

Procedure

  1. Also create any necessary backup templates.

    More information: Backup Templates

  2. You can use the available action patterns to schedule your actions.

    More information: Action Patterns

  3. If you have not already done so by using the action pattern, schedule your data backups.

    More information: Scheduling a Data Backup

  4. Perform log backups.

    You should always activate automatic log backup.

    More information: Activating Automatic Log Backup

    If necessary, schedule an interactive log backup.

    More information: Scheduling an Interactive Log Backup

    You should archive the log backup files regularly.

    More information: Archiving Backup Files

  5. If you have not already done so by using the action pattern, schedule Optimizer statistics updates.

    More information: Scheduling Updates of the SQL Optimizer Statistics

  6. If you have not already done so by using the action pattern, schedule your database structure checks.

    More information: Scheduling a Database Structure Check

  7. Schedule any further actions required, such as Checking Backups or Updating Table Statistics.

  8. Edit the schedule to make any required changes to activities or start times.

    More information: Changing or Deleting an Action, Scheduling an Action

  9. Check the DBA Planning Calendar daily to see whether your scheduled activities have been performed correctly. In the DBA Planning Calendar, check whether the backup actions that are scheduled for the next few days can be performed correctly.

    More information: Displaying Actions

    If any action did not run successfully, analyze the problem and repeat the action if necessary.

    More information: Starting an Action Immediately

Note Note

It is not possible to execute all the tasks necessary for managing the database from the DBA Planning Calendar. Information, for example, about how you can execute actions if the SAP system is not available can be found in the documentation Database Administration.

End of the note.

More Information

Database Administration: Overview of Activities


Database Console - SAP Documentation

Procedure documentation Database Console

In the Tools user menu, you can find, among other things, a display of the information for runtime analysis of database instance bottlenecks detected when using the database tool XCONS (database console).

Procedure

  1. Open the Database Assistant (transaction code DB50) or the liveCache Assistant (transaction code LC10). Choose [image] Tools [image] Database Console/Console [image] . For SAP liveCache, you also have the option of going directly to the Console from the initial screen of the liveCache Assistant.

    or

    Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] Database Console [image] .

  2. Select the required command. There are commands available for obtaining information from a wide range of different areas, for example, disk accesses, process analysis or memory management.

  3. Choose [image] Database Console [image] Execute Command [image] .

Result

The required information is retrieved from the database console and immediately displayed on the screen. You can save the results as a local file.

SYSMON Tables

If the database instance is in the operational state ONLINE, you can display the SYSMON tables. To do so, choose [image] Goto [image] SYSMON Table Display [image] .

Example Example

Displaying information about critical sections:

To do this, choose [image] Goto [image] SYSMON Table Display [image] . Enter table name SYSMON_REGION.

End of the example.

More Information

  • DBA Cockpit: SAP MaxDB, Database Console

  • XCONS documentation

    XCONS Options for Displaying Information about the Database


Database Manager (CLI) - SAP Documentation

Procedure documentation Database Manager (CLI)

You can call the Database Manager CLI from the CCMS of the SAP system to perform certain database administration tasks.

Prerequisites

The Database Manager CLI should only be used by experts. To find out about the functions of the Database Manager CLI, read the Database Manager CLI documentation.

Procedure

In the Tools menu, choose the Database Manager CLI tool.

  1. In the DBM command area, enter the required DBM command. The DBM options for calling the Database Manager CLI are not available here. The name of the database, the database host, and the user are implicitly transferred.

  2. Choose [image] Command [image] Execute [image] .

The Database Manager CLI program offers various operating modes. If you do not perform any other actions, you are working in session mode. The use of a session is mandatory in certain cases, if a successive command is to be made in a certain status that can only be created by a preceding command in the same session (for example, transactions).

To activate or deactivate session mode, choose Deactivate the DBM Session Mode or Activate the DBM Session Mode.

Result

The command mode is only recommended for long-running commands. The system executes the required DBM command.

More Information

Database Manager CLI, DBM Commands, DBM Options


Database Structure Check - SAP Documentation

Procedure documentation Database Structure Check

The Health display of the Database Alert Monitor and liveCache Alert Monitor shows you the results of the database structure checks scheduled in the DBA Planning Calendar.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Health [image] Database Structure Check [image] .

Result

Display | Default for Alerts
Last Successful Check | Yellow alert: If the last database structure check was performed more than 30 days ago. Red alert: If the last database structure check was performed more than 60 days ago.
Last Check Return Code | Red alert: If the last database structure check did not have the return code 0, or if no database structure check has been performed in the last three months
Last Check Type | Type of database structure checks

More Information

Scheduling a Database Structure Check

Database Administration, Checking Database Structures


I/O Operations - SAP Documentation

Procedure documentation I/O Operations

In the Current Status user menu, you can find, among other things, a display of the I/O operations.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] I/O Operations [image] .

Result

The following views are available:

  • I/O Operations Overview

  • Backup I/O

More Information

Activities Overview

Bottlenecks

Task Manager


Last Backup - SAP Documentation

Procedure documentation Last Backup

In the Backup/Recovery display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, information about the latest data backups.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Backup/Recovery [image] Last Backup [image] .

Result

Display

Default for Alerts

Last Successful Complete Data Backup

Yellow alert: If the last successful complete data backup is more than 8 days old.

Red alert: If the last successful complete data backup is more than 15 days old.

Last Complete Data Backup Return Code

Yellow alert: If a complete data backup is currently running, or if the monitor could not determine the last complete data backup

Red alert: If the last complete data backup did not have the return code 0, or if no complete data backup has been made in the last three months

Make sure that a complete data backup is created. To do so, use the DBA Planning Calendar, as described in Scheduling a Data Backup.

More Information

DBA Cockpit, DBA History

Database/liveCache Assistant, DBA History

Database Administration, Backing Up Databases


Parameters - SAP Documentation

Procedure documentation Parameters

The Configuration user menu contains, among other things, a display of the current database/SAP liveCache parameters and changes to these parameters. You can change database parameters.

Prerequisites

Prerequisites

SAP liveCache Technology: In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Administration [image] Configuration [image] Parameters [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Administration [image] Parameters [image] .

Result

The general database parameters are displayed in the simple view.

If you want to display all database parameters, choose [image] Goto [image] Expert View [image] .

Choose [image] Goto [image] Group View [image] if you want to display all database parameters sorted into the groups General Parameters, Extended Parameters, and Support Parameters.

To display the changes made to a database parameter to date, use one of the methods below:

  • Click the icon at the start of the row that contains the database parameter.

  • Select the parameter name and choose Expand Subtree.

The system displays a list of the change data and values to which the database parameter was set.

Changing Database Parameters

If necessary, switch to change mode.

Double-click a parameter name. You see additional details for that parameter and can change it if necessary. The new database parameter values are checked and saved.

Caution Caution

Changes to database parameters generally do not take effect until the database is restarted.

You can also change some database parameters while the database is running (see the description of individual database parameters for more information). In addition, you can choose how long the change is to be effective for these database parameters:

  • Save: Changes to database parameters do not take effect until the next restart.

  • Activate Temporarily: Changes to database parameters take effect immediately, but only until the next restart.

  • Save and activate: Changes to database parameters take effect immediately and are permanent.

If you change a database parameter whose value is normally calculated by the system, then the set value also remains valid for all subsequent recalculations of database parameter values. The system only recalculates the value when the set value is not within the permitted value range.

End of the caution.

Note Note

You can also change the database parameters with Database Studio/Database Manager. Different parameter values can be displayed in the CCMS and at operating system level if you have changed the database parameters with the Database Studio/Database Manager, but these changes have not yet taken effect.

End of the note.

More Information

DBA Cockpit: SAP MaxDB, Parameters

Database Administration, Database Parameters


Space Management - SAP Documentation

Procedure documentation Space Management

The Database Alert Monitor and liveCache Alert Monitor display, among other things, the storage space in the data area and in the log area. For SAP liveCache technology, you can also display storage space in the main memory.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Space Management [image] .

Result

The system displays the following:

  • Data Area

  • Log Area

  • SAP liveCache Technology: Memory


DB Procedures - SAP Documentation

Procedure documentation DB Procedures

The Problem Analysis user menu displays, among other things, database procedures.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] DB Procedures [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Space [image] DB Procedures [image] .

Result

The system displays an overview of all loaded database procedures, their input and output parameters, and other details.

As well as an ABAP application, an application also includes a range of DB procedures in which time-critical parts of the application are implemented in C++. With SAP liveCache technology, DB procedures can process both SQL data and OMS data.

More Information

  • Task Manager

  • DBA Cockpit: SAP MaxDB, DB Procedures

  • SQL Reference Manual, Name of a Database Procedure (dbproc_name)


Kernel - SAP Documentation

Procedure documentation Kernel

The Messages user menu contains, among other things, a display of information from the database kernel.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Kernel [image] .

Result

  • Current Messages

  • Old Messages

  • Error Messages

  • Message History

Current messages and old messages are logged in ring memory files that are overwritten as soon as they reach a certain size.

The first part of the file, which logs the last restart of the database instance, is excluded from the write cycle. A new log file is created each time the database system is started.

Error messages are logged continuously in a file. Delete any obsolete entries manually.

More Information

Database Administration, Log Files


Database Activities - SAP Documentation

Procedure documentation Database Activities

The Statistics user menu of the Database Assistant shows you, among other things, a display of the database activities of the last four weeks.

Prerequisites

Prerequisites

You can only use the display for the basis database of the SAP system. These values are gathered from the last time database monitoring was started.

Procedure

In the Database Assistant, choose [image] Statistics [image] DB Activities [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Space [image] DB Activities [image] (not for SAP NetWeaver 7.1).

Result

You receive information about database activities for the previous four weeks. You can set this output time frame. A collector logs the database activities of the database once a day, so that you can monitor activities over a specified period.

You can choose from the following views:

  • SQL Commands: Total number of SQL statements, commits, rollbacks, prepares

  • Cache Activities: Cache hit rates, number of reads and writes to the database

  • Other Activities: Number of table scans, log activities, lock information

Deleting Statistics Data

Deleting statistics data can be done manually by specifying a time period/date or automatically by specifying a time period (in weeks).

More Information

DBA Cockpit: SAP MaxDB, Database Activities

Activities Overview


Resource Monitor - SAP Documentation

Procedure documentation Resource Monitor

The SQL Performance user menu contains, among other things, the SQL resource monitor.

By analyzing resource consumption, you can identify the most costly SQL statements. The resources used by an SQL statement are measured (runtime and I/O accesses, for example).

If an SQL statement is used more than once, the total cost is calculated. This enables you to identify those SQL statements that have a relatively short runtime but cause a considerable database load due to the number of times they are executed.

The SQL resource monitor is therefore a monitoring tool that can be used for load analysis of one workday, for example.

Prerequisites

Prerequisites

Only for the OLTP database that is the basis of the current SAP Web AS system: In order for the name of the ABAP program and other information to be sent to the database, the instance profile parameter dbs/ada/register_appl_info=1 must be set.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] SQL Performance [image] Resource Monitor [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] SQL Performance [image] Resource Monitor [image] .

Result

Starting/Stopping the SQL Resource Monitor

To start or stop the SQL resource monitor, choose [image] Resource Monitor [image] Start Recording / Stop Recording [image] .

During normal operation of the database system, the resource monitor is stopped. The status of the SQL resource monitor is displayed in the Current Monitor Status area and can be refreshed using [image] Resource Monitor [image] Refresh Monitor Status [image] .

Output of Results

Since the number of recorded SQL statements can be very large, you can restrict the display by setting output criteria.

To output the results in the SQL resource monitor, select [image] Resource Monitor [image] Refresh Monitor Output [image] .

Displaying SQL Statements

If a logged SQL statement was called from an ABAP program, you can trace the SQL statement back to that program. To do this, select the SQL statement in the display quantity of the SQL resource monitor and choose Display Call in ABAP Program (only for the OLTP database instance that is the basis of the current SAP Web AS system).

To obtain additional information about an SQL statement, double-click the SQL statement or choose Display SQL Statement. You can see the complete SQL statement in the following view. Additional analyses are possible for SQL statements:

  • Tables/View Information: The Tables/Views/Synonyms display appears.

  • Print Version: You can copy the output to the clipboard or print it directly.

  • Display Callpoint in ABAP Program (only for the OLTP database instance that serves as the basis for the current SAP Web AS system)

  • Information about ABAP Callpoint (only for the OLTP database that serves as the basis for the current SAP Web AS system)

Initializing the Resource Monitor Tables

Tables SYSDATA_ANALYZE and SYSCMD_ANALYZE save statistical information that is calculated when an SQL statement is executed, along with the SQL statements themselves, when the resource monitor is active. Stopping the resource monitor does not initialize tables SYSDATA_ANALYZE and SYSCMD_ANALYZE.

To initialize the resource monitor tables, in the SQL resource monitor, choose [image] Resource Monitor [image] Initialize Monitor Tables [image] .

More Information

  • Command Monitor

  • DBA Cockpit: SAP MaxDB, Resource Monitor

  • Database Administration, Special Database Parameters


Database Analyzer - SAP Documentation

Procedure documentation Database Analyzer

In the Performance user menu you can also find the tool Database Analyzer for bottleneck analysis. When the SAP system is started, the Database Analyzer starts to collect data. The Database Analyzer generates log files that are saved to the respective database server.

Prerequisites

Prerequisites

The database or SAP liveCache is in the ONLINE operational state.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Performance [image] Database Analyzer [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Database Analyzer [image] .

Result

The following performance analysis options are available:

  • Bottlenecks

  • Expert Analysis

Starting/Stopping the Database Analyzer

When the SAP system or the SAP liveCache starts up, the Database Analyzer is automatically started for the system's Basis database. With other systems, you need to explicitly start the Database Analyzer. The Database Analyzer must always be activated. The default collection interval for the performance data is 900 seconds.

If necessary, you can start or stop the Database Analyzer explicitly with the Bottlenecks user menu.

For SAP liveCache you have the option of setting, with Automatic Monitoring, whether the Database Analyzer should always be activated or not.

More Information

  • DBA Cockpit: SAP MaxDB, Database Analyzer

  • Database/liveCache Alert Monitor, Database Analyzer

  • Database Analyzer documentation

    Database Analyzer Log Files


Last Recovery - SAP Documentation

Procedure documentation Last Recovery

In the Backup/Recovery display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, information about the last recovery performed.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Backup/Recovery [image] Last Recovery [image] .

Result

Last Restore Data

You see the date and time of the last data recovery, as long as it is not older than three months.

More Information

DBA Cockpit, DBA History

Database/liveCache Assistant, DBA History

Database Administration, Restoring Databases


Old Messages - SAP Documentation

Procedure documentation Old Messages

In the Kernel user menu, you can find, among other things, a display of the old kernel log.

The messages output to the kernel log knldiag.old support you during the interpretation of the events that occurred before the database system was started.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Kernel [image] Old

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] Old [image] .

Result

The log (kernel log knldiag.old) written before the last database start is shown.

You can use the navigation help (Start of File, End of File, Start of Write Cycle, Current Write Position) for orientation within the message files.

Use Import File to update the display.

More Information

DBA Cockpit: SAP MaxDB, Old Messages

Database Administration, Log Files


DBA History - SAP Documentation

Procedure documentation DBA History

The Logs user menu also contains logs of database administration actions.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Troubleshooting [image] Logs [image] DBA History [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Configuration [image] Logs [image] DBA History [image] .

Result

The content of several DM log files, general log files from the database kernel as well as log files from backup tools from other providers (if applicable) over the last three months will be displayed as follows.

Log Area | Logged Data from DBA Actions
Backup/Restore (DBM Server) | Backup and recovery Log files from the Database Manager and (if applicable) log files from backup tools from other providers are evaluated.
Backup/Restore (Core) | Backup and recovery Log files from the database kernel are evaluated.
Optimizer Statistics | Optimizer statistics are updated.
Database structure checks | Checking the database structures Log files from the Database Manager are evaluated.
Archiving Log Backup Files | Archiving the backup files (log backup) Log files from the Database Manager and (if applicable) log files from backup tools from other providers are evaluated.

You can display additional detailed information for an action (Display Log) by double-clicking it.

If backup tools from other providers were used, the log information for these tools is displayed.

More Information

  • DBA Action Logs

  • Automatic Monitoring

  • SQL Optimizer in CCMS

  • DBA Cockpit: SAP MaxDB, DBA History

  • Database Administration, Log Files, Backing Up Databases, Restoring Databases, Checking Database Structures, Archiving Backup Files, Monitoring Databases


Remote SQL Server - SAP Documentation

Procedure documentation Remote SQL Server

The Messages user menu contains, among other things, the log of the X Server (remote SQL server log).

If network problems occur between an application server and the database computer, these problems and errors are stored in the X server log.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Remote SQL Server [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Diagnosis [image] Messages [image] Remote SQL Server [image] .

Result

Check the log.

More Information

  • Database/liveCache Alert Monitor, Connectivity

  • DBA Cockpit: SAP MaxDB, Remote SQL Server

  • Database Administration, Log Files


I/O Operations Overview - SAP Documentation

Procedure documentation I/O Operations Overview

In the I/O Operations menu, you will find a display of disk activities.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] I/O Operations [image] Overview [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] I/O Operations [image] Overview [image] .

You can refresh the display. To do so, choose [image] Edit [image] Refresh [image] .

You can automate this function by choosing [image] Edit [image] Automatic Refresh On/Off [image] . The display for the function for the automatic refresh is above the header line of the table (green symbol: on, red symbol: off). In the field next to this, you can specify the time interval with which the automatic refresh should take place. The default value is 5 seconds.

Result

The system displays an overview of the activities on the disks on which the volumes are stored.

You can use the number of read and write accesses to determine how many I/O operations take place in your database. You can analyze in detail the processes that cause the I/O operations on the volumes.

  • If wait queues (Queue) are displayed for accesses to a disk area, this indicates a bottleneck in accessing this disk area.

  • Choose [image] Goto [image] I/O Details [image] to display which thread accessed the individual volumes and to obtain information about the I/O wait queues for the individual volumes.

    You can use this display to find out whether there are bottlenecks in the I/O system. The columns Queue Length and Maximum Queue Length provide information about whether there are currently or were previously large queues of I/O requests.

More Information

Executing Performance Analysis in CCMS

DBA Cockpit: SAP MaxDB, I/O Operations Overview


Changing or Deleting an Action - SAP Documentation

Procedure documentation Changing or Deleting an Action

You can change or delete scheduled actions in the DBA Planning Calendar.

If you want to change a periodic action, only future executions of the action will be affected. The action is divided into two: the old action and a new one.

Prerequisites

DBA Planning Calendar

If you want to change or delete an action from the DBA Planning Calendar, it must be in the state Scheduled (that is, not already executed).

Note Note

If an action has already been executed, you can only display it. For more information, see Displaying Actions.

End of the note.

Procedure

Open the DBA Planning Calendar (Setting Up and Using the DBA Planning Calendar).

Changing an Action

  1. Move the cursor to the calendar cell containing the desired action and select Edit.

    A dialog box appears displaying the Action Parameters and entries for Repeat Intervals. Enter your changes.

  2. You can schedule the changed action by selecting Change Current Scheduled Job or Change All Scheduled Jobs.

Deleting an Action

  1. Place the cursor on the calendar cell containing the desired action. Choose Delete.

    A dialog box appears listing all actions that can be deleted.

  2. Select a task.

  3. To delete an action, choose Delete.

Result

The DBA Planning Calendar's schedule is updated.

More Information

Scheduling an Action

Starting an Action Immediately


Configuration (Volumes) - SAP Documentation

Procedure documentation Configuration (Volumes)

In the Current Status user menu, you can display information about the volumes.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Configuration [image] .

Result

The Volumes display appears.

Note Note

SAP liveCache Technology: You can also configure volumes for SAP liveCache databases. To do so, use the SAP liveCache-specific user menu Configure Volumes.

End of the note.


Monitoring the Data Area - SAP Documentation

Procedure documentation Monitoring the Data Area

The data area is dimensioned when the database is created. A full data area can cause the database to hang.

Procedure

Monitor the data area. Use the following displays:

  • DBA Cockpit, Data Area

  • Database/liveCache Assistant, Data Area

  • Database/liveCache Alert Monitor, Data Area

  • DBA Cockpit, Database Fill Level

  • Database Assistant, Database Fill Level

  • DB Filling/Tables and Indexes, DB Filling

Monitor the database logs. To do this, use the Current Messages display, for example (DBA Cockpit/Database/liveCache Assistant).

Monitor the tasks. To do this, use, for example, the Task Manager (DBA Cockpit/Database/liveCache Assistant).

Critical Situations

  • A red alert is generated in the Database/liveCache Alert Monitor if the amount of free space in the data area falls below 10%.

  • Messages warning that the database is about to fill up are written in the database logs even before the database is actually full (from a fill level of about 80%).

    2006-08-14 09:26:04 0x7EC WRN 53025 DATA PERM USED 99(1 PAGES LEFT)

  • If the database is actually full, one task has the task state DB_FULL and the other tasks have the state Vsuspend until more space becomes available. The task states are logged in the kernel log knldiag.

The fill level may reduce automatically in SAP liveCache databases, if the garbage collectors delete history data (links to undo log entries).

If the database is at risk of filling up, you must add a new data volume. To do this, use one of the database tools (such as DBA Cockpit, Data Area, Database Studio, Adding Data Volumes, Activating or Deactivating Automatic Extension of the Data Area).

Note Note

Monitor the log area regularly. Proceed as described in Monitoring the Log Area.

End of the note.

More Information

Executing Performance Analysis in CCMS

Database Administration, Monitoring Databases

Concepts of the Database System, Tasks


Indexes - SAP Documentation

Procedure documentation Indexes

The Problem Analysis user menu contains, among other things, many different options for analyzing indexes.

Procedure

  1. Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Indexes [image] .

    or

    Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Space [image] Indexes [image] .

  2. Enter the names of the schema, the tables and the index.

    When you specify the names, you can enter * as a wildcard (T0* for all table names that start with T0, for example).

    If you begin the name of a database object with an ", the subsequent letters are not changed into all caps, but instead are used for the query as you have entered them.

  3. Decide whether you want to filter the output:

    Only Display Bad Indexes

    Only Display Inaccessible Indexes

    Only Display Unused Indexes

    For information about the different filter options, see the online help for the SAP system.

  4. To display the list of indexes you want, select Adjust to Output Criteria.

Result

You can choose between the following analysis options:

  • More Information:

    You can display the Details for more information about tables and indexes.

    If you select a table, information is displayed to you (this display of information is described in Tables/Views/Synonyms).

    When you select an index, the CREATE INDEX statement that was used to generate the index is displayed.

  • Allow/Prevent Index Access:

    You can specify whether or not an index is used to access the data.

  • Reset Usage Counter:

    The database system records index usage in a counter. You can reset this usage counter.

  • Restore Index:

    You can restore defective indexes. Restoring an index may take a long time, depending on the size of the tables.

    You cannot access the tables related to an index while the index is being restored. It is therefore advisable to restore indexes at times when there is a reduced load on the system. You should restore indexes for larger tables in the background.

More Information

  • Index Analysis

  • DB Filling/Tables and Indexes

  • DBA Cockpit: SAP MaxDB, Indexes


Database Fill Level - SAP Documentation

Procedure documentation Database Fill Level

The Statistics user menu gives you, among other things, a display of the database fill level history of your database.

Prerequisites

Prerequisites

You can only use the display for the basis database of the SAP system.

Procedure

In the Database Assistant, choose [image] Statistics [image] DB Fill Level [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Space [image] DB Fill Level [image] (not for SAP NetWeaver 7.1).

Result

The system displays the following: History of the DB fill level for the data area and log area.

You receive information about the fill level of the database for the previous four weeks. You can set this output time frame. A collector logs the fill level of the data area and of the log area of the database once a day, so that you can monitor the growth of the data over a specified period. You can display these statistics in a graphic.

Deleting Statistics Data

Deleting statistics data can be done manually by specifying a time period/date or automatically by specifying a time period (in weeks).

More Information

  • Database Activities

  • DBA Cockpit: SAP MaxDB, Database Fill Level

  • Monitoring the Data Area

    Monitoring the Log Area


Wait Situations (Exclusive) - SAP Documentation

Procedure documentation Wait Situations (Exclusive)

In the SQL Locks user menu, you can find (among other things) a display of wait situations for exclusive locks. Use this analysis in the following situation, for example: You have been monitoring tasks with the task state Vwait in the Task Manager for some time.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] SQL Locks [image] Wait Situations [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] SQL Locks [image] Wait Situations [image] .

Result

The system displays a list of all current wait situations for SQL locks in the database instance.

Note Note

Exclusive locks mean that other users cannot access the locked entry. These locks can significantly interfere with the performance of the SAP system and the database system.

End of the note.

When you encounter SQL locks, be sure to find out which application is causing the locks. Using the Appl. ID in the wait situations display, you can identify the SAP work process that is holding the lock. Using the Global Work Process Overview (transaction SM66), you can get additional information, such as the user and the report. More information can also be found using a bottleneck analysis.

More Information

  • You can also use options provided in the Database Console for further analysis.

  • DBA Cockpit: SAP MaxDB, Wait Situations

  • Concepts of the Database System, Locks


Executing Performance Analysis in CCMS - SAP Documentation

Procedure documentation Executing Performance Analysis in CCMS

Database administrators are often asked by users to find out why the performance of their SAP system is poor. There are many factors to take into account when tracking down these types of problems.

Note Note

There are some specific notes for SAP liveCache technology in Performance Analysis in the CCMS: SAP liveCache Technology.

End of the note.

Procedure

Your research can take a long time and you should therefore make sure you have as much background information as possible before starting.

  • Has the application/transaction always been slow, or has it only just started to slow down?

  • Is the problem in a new program or application/transaction?

  • Is the slowdown only during peak periods or is it fairly constant?

  • Have there been recent changes in workload?

  • Is only one application/transaction slow or are other transactions or applications also now performing poorly?

Attempt to localize the performance bottleneck using the information you obtained. If you feel this issue may be isolated to one particular transaction or application, you may also need assistance from the application developers. These developers understand the process flow of the application, and can help you to change and test SQL statements in the program.

Workload Overview

Use the Workload Monitor to get an initial overview of the response times of all components in your SAP system (Workload Monitor). In particular, note the average response time/dialog step (ms) for the dialog task in the workload overview. The average time for the dialog task should be under one second. If this value is critical, you can check the Of response time, database time (%) statistic to find out the proportion of the total response time of the dialog task which was used for database requests. If database requests take up more than 50% of the total response time, this may indicate that a database problem is causing performance bottlenecks.

Database Performance

Carrying out a database performance analysis means that you can check a wide range of settings, access times and hit rates of your database system. If necessary, the applications can then be included in further analyses. As each performance analysis runs individually, the following suggestions are merely a collection of ideas.

A series of CCMS transactions are available for you to help analyze the performance bottlenecks, in particular the DBA Cockpit, the Database or liveCache Assistants and the Database or liveCache Alert Monitor. Experts can also use additional database tools, such as the Database Studio, Database Analyzer, and XCONS. To set up and use your database optimally, you can automate many necessary DBA activities: Automating Database Administration Activities.

Note Note

The documentation for the SAP MaxDB database system also generally applies to SAP liveCache technology. If there are functional differences, these are explained.

End of the note.

  • Database monitoring is automatically activated when the database is started so that the statistical data from the last database system start is determined. You can reset the monitoring data, if necessary.

    Refer also to: Database Monitoring

    In order to carry out a meaningful performance analysis, this should be a running system. The read actions in the data cache should have reached at least 20,000,000.

    Refer also to: Caches

    The Database Analyzer must always be activated. When a SAP system or the liveCache starts up, the Database Analyzer is automatically started for the system's basis database. If necessary, you should start the Database Analyzer explicitly.

    Refer also to: Database Analyzer

    Update the SQL Optimizer statistics regularly. Use performance analyses of individual SQL statements (particularly Join statements) only after the statistics, if any, have been been updated. Schedule regular updates of the SQL Optimizer statistics in the DBA Planning Calendar. Ensure that the scheduling has been successfully executed and thus that the SQL Optimizer statistics are current.

    Refer also to: Updating the SQL Optimizer Statistics

  • Check your database parameter settings. For more information, refer to the explanations of database parameters and SAP Note 814704. If necessary, make corrections to the database parameter settings.

    Refer also to: Parameters

  • Check the disk access (for example, the read and write operations), especially on the data volumes. High I/O times can point to a heavy system load. Therefore, check the database system activities constantly (running backup, many read actions on the disk since the last database start, among other things).

    Refer also to: I/O Operations

  • Check the hit rates in the data cache and the catalog cache. Database performance can suffer if too much data has to be read from the disks. It is therefore important that most accesses to database tables and other data from the database be covered by data in the caches.

    Refer also to: Caches

  • Check logging activities. Specifically, there should be no log I/O queue overflows.

    Refer also to: Activities Overview

  • You can examine the cache hit rates and other database information in more detail by analyzing the bottlenecks with the Database Analyzer. Bottleneck analysis provides a variety of measurement data covering a lengthy period of time.

    Refer also to: Bottlenecks

    If necessary, you can also temporarily activate DB time measurement in the Task Manager and thereby get current measurement data on I/O and execution times.

    Refer also to: Task Manager

  • If a performance problem is currently being reported, you can specifically check the user tasks. Activate Automatic Refresh for the Task Manager and observe the user tasks and their task states.. Most user tasks should generally have the status Running. The status I/O Wait should be much rarer; statuses like Vwait, Vbegexlc and Vsuspend should not occur at all.

    Refer also to: Task Manager

  • Display the open database transactions and examine these thoroughly.

    Refer also to: Transactions

  • Determine if exclusive wait situations have occurred. Exclusive locks mean that other users cannot access the locked entry. These locks can significantly reduce the database performance.

    Refer also to: Wait Situations, SQL Locks

  • Use the Command Monitor to perform runtime analyses of any long-running SQL statements.

    Refer also to: Command Monitor

  • Indexes are essential for fast and efficient access to the data of the database. You should therefore make regular checks to determine whether indexes are missing from the database system or are defective. Always recreate a missing index immediately, since it is very important for database system functionality.

    Refer also to: Index Analysis

  • Check the SQL statements that cause the most disk accesses and optimize these statements, if necessary, based on these SQL statements.

    Refer also to: SQL Optimizer in CCMS, Database Administration, SQL Optimizer

More Information

  • Monitoring the Log Area

    Monitoring the Data Area

  • Performance

  • Database Administration: Overview of Activities

  • SAP Note 819641 (FAQ: MaxDB Performance)

    SAP Note 819324 (FAQ: MaxDB SQL Optimization)

  • Database Administration

    Analyzing Database Performance

    Troubleshooting

    SQL Optimizer Statistics

    Database Parameters

  • Concepts of the Database System, Tasks

  • Documentation for Database Analyzer, XCONS


Messages - SAP Documentation

Procedure documentation Messages

In the Problem Analysis user menu you can, among other things, display the messages of the database system, the Database Manager, and the X Server.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] .

Result

The system displays the following:

  • Kernel

  • Database Manager

  • Remote SQL Server


Alert Monitor - SAP Documentation

Procedure documentation Alert Monitor

You can use the Database Alert Monitor and liveCache Alert Monitor for system checks.

Procedure

Open the Database Assistant (transaction code DB50) or the liveCache Assistant (transaction code LC10). Choose Alert Monitor.

Result

Alert Monitoring is activated and the database connection has been added to the Database/liveCache Alert Monitor Tree. If necessary, the Database/liveCache Alert Monitor Tree display should be updated. To do this, choose Refresh and Invalidate Data Cache in the Database/liveCache Alert Monitor.

More Information

Database Alert Monitor

liveCache Alert Monitor


Backup I/O - SAP Documentation

Procedure documentation Backup I/O

In the I/O Operations user menu, you can find, among other things, a display of read and write accesses during a backup.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] I/O Operations [image] Backup I/O [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] I/O Operations [image] Backup I/O [image] .

You can refresh the display. To do so, choose [image] Edit [image] Refresh [image] .

You can automate this function by choosing [image] Edit [image] Automatic Refresh On/Off [image] . The display for the function for the automatic refresh is above the header line of the table (green symbol: on, red symbol: off). In the field next to this, you can specify the time interval with which the automatic refresh should take place. The default value is 5 seconds.

Result

The system displays the number of read and write accesses on the individual volumes caused by a currently running backup action. An access corresponds to an I/O operation. This includes multiple pages, though the number can vary.

You can see the actual number of backed up pages in the column Saved Pages (Backup).

This means that you can use the Backup I/O display to monitor the asynchronous I/O operations caused by backups. You can refresh the display during a running backup, and in this way obtain a display of the progress of the backup run.

More Information

DBA Cockpit: SAP MaxDB, Backup I/O

Executing Performance Analysis in CCMS


Monitoring the Log Area - SAP Documentation

Procedure documentation Monitoring the Log Area

The log area is dimensioned when the database is created. A full log area can cause the database to hang.

Procedure

Monitor the log area. Use the following displays:

  • DBA Cockpit, Log Area

  • Database/liveCache Alert Monitor, Log Area

  • Database/liveCache Assistant, Log Area

  • DBA Cockpit, Database Fill Level

  • Database Assistant, Database Fill Level

Monitor the database logs. To do this, use the Current Messages display, for example (DBA Cockpit/Database/liveCache Assistant).

Monitor the tasks. To do this, use, for example, the Task Manager (DBA Cockpit/Database/liveCache Assistant).

Monitor the log backup and the archiving for the backup files. To do this, use the DBA History display, for example (DBA Cockpit/Database/liveCache Assistant).

Critical Situations

  • A red alert is generated in the Database/live Cache Alert Monitor if the amount of free space in the log area falls below 10%.

  • Messages warning that the log area is about to fill up are written to the database logs even before the log area is actually full (from a fill level of about 50%):

    2006-08-14 09:26:36 0x7EC WRN 52438 LOG log used 50(499 pages left)

  • If the log area is actually full, one task has the LOG_FULL state and the other tasks have the Vsuspend state until more space becomes available. The task states are logged in the kernel log knldiag.

If the log area is at risk of filling up, you must create a backup log right away (Starting an Action Immediately). The suspended tasks continue with their work as soon as the first log segment is backed up.

You can decide whether a new log volume needs to be added. To do this, use one of the database tools (for example, DBA Cockpit, Log Area, Database Studio, Adding Log Volumes).

Avoiding LOG FULL Situations

Activate the automatic log backup (see Activating Automatic Log Backups). This guarantees regular backups of entries in the log area.

Check regularly that automatic log backup is activated. To do this, use the System Settings display (DBA Cockpit/Database/liveCache Assistant) or the Log Area display in the Database/liveCache Alert Monitor.

Note Note

Also monitor the data area regularly. Follow the procedure described in Monitoring the Data Area.

End of the note.

More Information

Executing Performance Analysis in CCMS

DBA Planning Calendar, Scheduling Concept

Database Administration, Periodic Administration Tasks, Backing Up Log Entries, Monitoring Databases

Concepts of the Database System, Tasks


Overview of SQL Locks - SAP Documentation

Procedure documentation Overview of SQL Locks

In the SQL Locks user menu, you can find a display of the SQL locks and SQL lock requests.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] SQL Locks [image] Overview [image] .

or

Open the DBA Cockpit and choose [image] Performance [image] SQL Locks [image] Overview [image] .

Result

The system displays detailed information about the locks currently set. This display can be very long in a running SAP system. Therefore, you should always enter the analysis of SQL locks through the overview of wait situations.

More Information

DBA Cockpit: SAP MaxDB, Overview of SQL Locks


Backup Templates - SAP Documentation

Procedure documentation Backup Templates

In the Configuration user menu, you can, among other things, display, create, and configure backup templates.

Prerequisites

The database is in the ONLINE or ADMIN operational state.

Prerequisites

SAP liveCache Technology: In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

  1. Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Administration [image] Configuration [image] Backup Templates [image] .

    or

    Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Backup and Recovery [image] Backup Templates [image] .

  2. Choose [image] Edit [image] Create Group [image] or [image] Edit [image] Create Backup Template [image] and create the desired backup template for the data carrier or group of parallel data carriers.

  3. Choose [image] Edit [image] Change Properties [image] if you want to change the specifications of a backup template.

Backup tool from other providor | Description of the third-party backup tool More information: Database Administration, Using Third-Party Backup Tools
Name | Name of the backup template
Device/File | Name of the data carrier If you use files and pipes, we recommend that you specify the absolute path of the data carrier.
Data carrier type | Data carrier type File: Log backups should always be carried out in backup files. Tape: You cannot make log backups to tape. Pipe: Always specify Pipe if you are using a third-party backup tool.
Backup type | Backup type Full (Data): Complete data backup Incremental (Pages): Incremental data backup Log: Interactive log backup AutoLog: Automatic log backup
Size (KB) | Size of data carrier
Can Overwrite | Sets the overwrite mode Select Can Overwrite if you want to use the overwrite mode for the data carrier.
Block Size (pages) | Selects the block size If you want to make backups in blocks of eight pages, select Block Size. You can specify another block size, if you want. If you do not select Block Size, the value of database parameter BACKUP_BLOCK_CNT is used.
Autoloader | Sets the autoloader If you want to use a tape device with an automatic tape loader, select Autoloader.
OS command | Transferring operating system commands When you back up to tape, you can specify operating system commands.

Result

You can use backup templates to schedule or start a backup action (Scheduling an Action, Starting an Action Immediately).

More Information

DBA Cockpit: SAP MaxDB, Backup Templates

Database Administration, Backup Templates and Data Carriers, Backing Up Data, Backing Up Log Entries


Error Codes - SAP Documentation

Procedure documentation Error Codes

Error Display

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). If no start application is displayed, or if you exit a user menu of the Database Assistant with Back, Exit, or Cancel, you can choose [image] Utilities [image] Error Codes [image] in the menu.

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Error Codes [image] .

Result

You see a list of the error codes and messages that are saved in the database table MESSAGES.

More Information

DBA Cockpit: SAP MaxDB, Error Codes


Database Manager - SAP Documentation

Procedure documentation Database Manager

In the Messages user menu, you can find, among other things, a display of the command history of the Database Manager.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Database Manager [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Diagnostics [image] Messages [image] Database Manager [image] .

Result

The system displays the command history of the Database Manager (dbm.prt).

You can use the navigation help (Start of File, End of File) for orientation within the message files.

Choose Import File to update the output.

More Information

DBA Cockpit: SAP MaxDB, Database Manager

Database Administration, Log Files


Statistics - SAP Documentation

Procedure documentation Statistics

Display of statistics for the fill level of the data area, database activities, and table sizes.

Prerequisites

Prerequisites

Procedure

In the Database Assistant, choose Statistics.

Result

The system displays the following:

  • Database Fill Level

  • Database Activities

  • Table Sizes

More Information

Scheduling Updates of the SQL Optimizer Statistics


Problem Analysis - SAP Documentation

Procedure documentation Problem Analysis

Call tools for analyzing database problems.

Prerequisites

Prerequisites

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose Problem Analysis.

Result

The following tools and displays are available:

  • Performance

  • SAP liveCache Technology: OMS Locks

  • SQL Locks

  • SQL Performance

  • Messages

  • Logs

  • Tables/Views/Synonyms

  • Indexes

  • DB Procedures


Starting an Action Immediately - SAP Documentation

Procedure documentation Starting an Action Immediately

You can schedule actions in the DBA Planning Calendar. These are then performed at the specified time.

In some cases, however, you may have to execute a scheduled action immediately, or restart a previous action; for testing purposes, for example, or if an action fails, or in the case of a resource bottleneck. In these cases, immediate action is required.

Prerequisites

DBA Planning Calendar

Procedure

  1. Open the DBA Planning Calendar (Setting Up and Using the DBA Planning Calendar).

  2. Double-click on the calendar cell containing the scheduled action or previously executed action desired.

  3. A dialog box appears with the details of the action. Check the action parameters.

  4. Choose Re-Execute.

If you are sure that the action parameters are correct, simply carry out the following steps in the DBA Planning Calendar:

  1. Place the cursor on the calendar cell containing the relevant action.

  2. Choose Execute.

  3. Select a task.

  4. Choose Execute.

Result

The action is scheduled for the current time.

More Information

Scheduling an Action

Displaying Actions


Performance - SAP Documentation

Procedure documentation Performance

In the Problem Analysis user menu, you can find, among other things, tools for analyzing performance.

Prerequisites

Prerequisites

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Performance

Result

The following tools for performance analysis are available to you:

  • Database Analyzer

  • SAP liveCache Technology: OMS Monitor

  • SAP liveCache Technology: Class Container

  • SAP liveCache Technology: Schemas

  • SAP liveCache Technology: Monitor

  • Transactions

  • SAP liveCache Technology: OMS Versions


Logs - SAP Documentation

Procedure documentation Logs

The Problem Analysis user menu contains, among other things, a display of the logs.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Troubleshooting [image] Logs [image] .

Result

The system shows you the following logs:

  • SAP liveCache Technology: Operating

  • DBA History

  • System Tables Upgrade

  • SAP liveCache Technology: Kernel Administration


Caches - SAP Documentation

Procedure documentation Caches

In the Memory Areas user menu you can see, among other things, the sizes of the most important caches, the number of accesses to these caches, and the cache hit rates since the last time the Database Monitoring function was started.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Memory Areas [image] Caches [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Caches [image] .

Result

The system displays information about the size and general efficiency of the caches of the database. In a balanced system, the hit rate for the data cache is more than 99 %, for the catalog cache more than 90 %. The lower the hit rate, the lower the efficiency of your database system.

Cache Sizes | Size of the I/O buffer cache (data cache, converter and other caches)
Cache Accesses | Statistical information about accesses to the data cache (SAP liveCache technology: accesses to links to undo log entries for the objects (History/Undo), the OMS data (OMS Data), and SQL data (SQL Data)), catalog cache, and sequence cache
Data cache usage | Usage information for the data cache (SAP liveCache technology: usage of the areas for SQL data (SQL Data), OMS data (OMS Data), and the links to undo log entries for the objects (History/Undo))
Cache-Specific Parameter Settings | CacheMemorySize: Size of the I/O buffer cache CAT_CACHE_SUPPLY: Size of the catalog cache

The I/O buffer cache (with its main component, the data cache) should be configured large enough that the greatest possible amount of data you require for normal operation of your SAP system can be stored in the data cache. Otherwise, the data is written to the data area, which negatively affects database performance. If necessary, change the size of the I/O buffer cache by setting the general database parameter CacheMemorySize.

For SAP systems with special requirements, a higher data cache hit rate may also be necessary (such as SAP NetWeaver BI).

Comments About SAP liveCache Technology

The I/O buffer cache, and therefore the data cache as well, must be dimensioned so that it can hold all OMS data, links to undo log entries, and SQL data in the data cache. Otherwise, the data is written to the data area, which negatively affects SAP liveCache performance.

The memory of the data cache should take up about 40% of the main memory available to the SAP liveCache database. You may need to adjust its size to the requirements of the application.

For more information, refer to: Monitoring the Main Memory Areas

More Information

  • DBA Cockpit: SAP MaxDB, Caches

  • Database Alert Monitor: Caches

    liveCache Alert Monitor, Caches, Memory

  • Database Administration,

    Monitoring Databases

    General Database Parameters

    Special Database Parameters


Database Trace - SAP Documentation

Procedure documentation Database Trace

The Tools user menu contains, among other things, the database trace tool.

Note Note

The database trace only adversely affects performance in SAP liveCache databases; in other databases you can use the database trace even in normal operation.

Disable the database trace as soon as the actions needed for the analysis have been logged.

End of the note.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Tools [image] Database Trace [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] Database Trace [image] .

Result

Activating, Deactivating and Initializing the Trace

  • To activate the trace, select the required trace component and choose Activate Trace. You can activate more trace components while the trace is running by selecting them and choosing Activate Trace again.

  • To activate the trace on a particular level, select the required trace component and choose Activate Trace (Level). You have the option of changing the default value for the trace level. The higher the trace level, the more detailed the information collected by the database trace will be.

  • To deactivate the trace, choose Deactivate Trace. This deactivates any trace components that are selected.

  • To initialize the trace, choose Initialize Trace. After initialization, only the database actions are logged.

Setting Additional Options

You can specify the respective procedures for switching on/off the database trace.

  • Activating the Trace

    If you want to write the database trace for all database sessions, choose For All Sessions. If you only want to write the database trace for a particular database session, select Only for Session with Number and enter the session number.

  • Deactivating the Trace

    If you want to switch off the database trace manually, select Manual Only. If you want the database trace to switch off automatically when a particular error occurs, select Automatically with an Error Code and enter the database error code.

If you have configured the database trace such that it is only written for a particular database session or is deactivated automatically, a warning message appears to bring these options to your attention.

Analyzing and Displaying the Trace

To evaluate the trace, proceed as follows:

  1. Choose Flush Trace Buffer. The information still remaining in the buffer is written in the trace, thereby updating it.

  2. Choose Analyze Trace.

  3. Back up the database trace you have displayed by choosing Save to Local File. This stops it from being overwritten by the next trace analysis.

To view a prepared trace again, choose Display Trace.

More Information

  • DBA Cockpit: SAP MaxDB, Database Trace

  • Database/liveCache Alert Monitor, Monitor

  • Database Administration, Traces


Database Monitor - SAP Documentation

Procedure documentation Database Monitor

Procedure

The Database Assistant can be used for database administration in CCMS and replaces the database monitor from older releases.

If you need to, you can call the database monitor with transaction code ST04; but it is only offered now for reasons of compatibility. If you call the database monitor, you will automatically be offered the features of the Database Assistant or of the DBA Cockpit.


SQL Performance - SAP Documentation

Procedure documentation SQL Performance

In the Problem Analysis user menu, you can find, among other things, tools for checking SQL performance. Use these tools in combination with the analysis of bottlenecks.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] SQL Performance [image] .

Result

The following tools are available:

  • Command Monitor

    You can perform a short analysis with the command monitor if, for example, users have reported especially long-running transactions.

  • Resource Monitor

    You can use the resource monitor to create an overview of the SQL statements that have used the most resources in a specified period.


External Analysis Tools - SAP Documentation

Procedure documentation External Analysis Tools

The Database Alert Monitor and liveCache Alert Monitor provide you with information from the Database Analyzer.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] External Analysis [image] Tools [image] .

Result

Database Analyzer


Critical Sections - SAP Documentation

Procedure documentation Critical Sections

In the Current Status user menu, you will find, among other things, a display of the accesses to the main memory structures.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Critical Sections [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Critical Regions [image] .

Result

The system displays an overview of the accesses to the main memory structures that are only used exclusively: critical sections (so-called synchronization objects, which are administered by special semaphores (also called regions)). You can see which thread (task) is accessing the corresponding main memory structure.

You can use these statistics to determine cache activity and any resource conflicts that might exist. These conflicts can occur if a resource is requested more than once at a particular time.

If the number of conflicts is more than 10 % of all accesses, this indicates significant bottlenecks in your system.

Explanation of the OMS Synchronization Objects
Synchronization Object | Explanation
OMS2 | Synchronization of the OMS heap
OMS3 | Synchronization of the OMS monitor
OMS4 | Synchronization of the unloading of versions
OMS5 | Synchronization of the version directory
OMS6 | Synchronization of the shared heap counter
OMS7 | Synchronization of the stack heap counter
OMS8-OMS<n> | User-defined synchronization objects

More Information

Database Console

DBA Cockpit: SAP MaxDB, Critical Sections


Bad Indexes - SAP Documentation

Procedure documentation Bad Indexes

The Health display in the Database Alert Monitor and liveCache Alert Monitor gives you information on bad indexes.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Health [image] Bad Indexes [image] .

Result

Number of Bad Indexes

Yellow alert: The monitor could not determine the number of bad database indexes.

Red alert: Bad database indexes exist.

More Information

Index Analysis


Volumes - SAP Documentation

Procedure documentation Volumes

In the Configuration user menu, you can find, among other things, a display showing the configurations of the database/SAP liveCache database volumes.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Configuration [image] Volumes [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Data Area / Log Area [image] (SAP NetWeaver 7.1:   Space [image] Volumes [image] ).

Result

The display is divided into the sections Log Area and Data Area.

Note Note

SAP liveCache Technology: You can also configure volumes for an SAP liveCache. To do so, use the SAP liveCache-specific user menu Configure Volumes.

End of the note.

More Information

  • Monitoring the Data Area

    Monitoring the Log Area

  • Database/liveCache Assistant, Data Area, Log Area

  • Database/liveCache Alert Monitor, Data Area, Log Area

  • DBA Cockpit: SAP MaxDB, Data Area, Log Area


Memory Areas - SAP Documentation

Procedure documentation Memory Areas

In the Current Status user menu, you can find, among other things, a display of the usage of the memory areas.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Memory Areas [image] .

Result

You see an overview of the usage of the memory areas in the database:

  • Caches

  • SAP liveCache Technology: Heap Usage

  • Data Area

  • Log Area


Displaying/Changing Integration Data - SAP Documentation

Procedure documentation Displaying/Changing Integration Data

You can create or change connection and user data and control monitoring mechanisms.

Note Note

For SAP liveCache technology, the liveCache-specific user menu Integration is available.

End of the note.

Procedure

  1. Start the Database Assistant.

  2. If no start application is displayed, or if you exit a user menu of the Database Assistant with Back, Exit, or Cancel, you can choose [image] Utilities [image] Display/Change Integration Data [image] (transaction DB11) in the menu.

  3. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

Result

Connection Information

The required database connection is usually created during the installation. You can, however, also create new database connections later, or change or delete an existing connection.

  • Creating a Connection

  • Changing a Connection

  • Deleting a Connection

User Data

The user data for the DBM operator is stored in table DBCONUSR, and for the standard database user in table DBCON.

Follow the procedure described in User Data.

Automatic Monitoring

You can set or configure the following automatic monitoring activities:

  • Deactivating Database Alert Monitor

  • Reporting critical alerts when starting the Database Assistant

  • Deleting the DBA Action Logs automatically

Follow the procedure described in Automatic Monitoring.

You can deactivate all automatic monitoring procedures. To do so, choose [image] Goto [image] Deactivate Automatic Monitoring [image] .

More Information

Integrating a Database System


Data Area - SAP Documentation

Procedure documentation Data Area

In the Space Management display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, information about the storage space in the data area.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Space Management [image] Data Area [image] .

Result

Total data space | Total available storage space in MB
Free data space | Free storage space in MB
Used data space | Occupied storage space as a percentage

More Information

DBA Cockpit, Data Area

Database/liveCache Assistant, Data Area

Monitoring the Data Area


Properties - SAP Documentation

Procedure documentation Properties

The Database Alert Monitor and liveCache Alert Monitor contain, among other things, a display of the status, the properties, and error messages.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Properties [image] .

Result

The system displays the following:

  • State

  • Installation


SQL Locks - SAP Documentation

Procedure documentation SQL Locks

In the Problem Analysis user menu, you can, among other things, display all active and requested locks.

Exclusive locks mean that other users cannot access the locked entry. These locks can significantly interfere with the performance of the SAP system and the database system.

Procedure

Open the Database Assistant (transaction code DB50) or the liveCache Assistant (transaction code LC10). Choose [image] Problem Analysis [image] SQL Locks [image] .

Result

The following views are available:

  • Wait Situations (Exclusive)

  • Overview of SQL Locks

Determining the User Who Triggered a Lock

In a database belonging to an SAP system, the name of a standard user could be SAPR3. You can use the Task Manager to find the task ID (ID) and the corresponding application PID and application server.

Then use the Process Overview (transaction code SM50) or the Application Server Overview (transaction code SM51) to find out which SAP work process triggered the lock request or lock.

More Information

Definitions of the System Tables, LOCKS

Concepts of the Database System, Locks


Expert Analysis - SAP Documentation

Procedure documentation Expert Analysis

The Database Analyzer user menu contains, among other things, a Load History. You can view the logs of the monitor classes (analysis areas) and manage the performance data.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Performance [image] Database Analyzer [image] Expert Analysis [image] .

It is also possible to go into the load history from the Bottlenecks user menu via [image] Goto [image] Expert Analysis [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] Database Analyzer [image] Expert Analysis [image] .

Result

The Database Analyzer logs (DBAN.prt, DBAN_<Monitorklasse>.csv) can be displayed in the load history by day. Select the desired day and expand the display. You can open the logs for further analysis by double-clicking.

Collected (Aggregated) Performance Data

If you would like to view the collected performance data (aggregated data), expand the desired performance data in the Load History.

Double-clicking within an aggregation level (daily aggregates, weekly aggregates, monthly aggregates, quarterly aggregates) takes you to the display of the corresponding Database Analyzer file, classified according to monitor classes and time periods. You can also reach the overview of the respective daily aggregates for the period from the weekly, monthly and quarterly aggregates.

If you want to store the aggregated performance data locally, choose [image] Export [image] . Choose an appropriate subdirectory on your local computer and start the procedure. The data is stored in the analyzer subdirectory.

Managing Performance Data

Choose [image] Edit [image] Managing Performance Data [image] in the Load History. You can execute the following administration activities automatically or manually:

  • Transferring the log files from the Database Analyzer to the database

  • Deleting the log files from the Database Analyzer

  • Collecting (aggregating) performance data from the Database Analyzer

See also: Managing Performance Data

More Information

DBA Cockpit: SAP MaxDB, Expert Analysis

Database Analyzer, Database Analyzer Log Files


Database Analyzer - SAP Documentation

Procedure documentation Database Analyzer

The External Analysis Tools display of the Database Alert Monitor and liveCache Alert Monitor gives you information on the Database Analyzer and the results of its analyses.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] External Analysis Tools [image] Database Analyzer [image] .

Result

Display | Default for Alerts
Database Analyzer status | Yellow alert: If the Database Analyzer is deactivated, or if the monitor cannot determine the status of the Database Analyzer.
Latest warning | Last logged warning from the Database Analyzer Only warnings with high priority are displayed.
Log directory | Log directory of the Database Analyzer
Interval | Composite interval of the Database Analyzer (in seconds)
Started at | Start time of the Database Analyzer
Configuration file | Configuration file of Database Analyzer

More Information

DBA Cockpit, Database Analyzer

Database/liveCache Assistant, Database Analyzer

Database Analyzer documentation


Optimizer Statistics - SAP Documentation

Procedure documentation Optimizer Statistics

In the Performance display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, information regarding SQL Optimizer statistics.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Performance [image] Optimizer Statistics [image] .

Result

Display | Default for Alerts
Last Collection | Yellow alert: Yellow alert, if the last update of the SQL Optimizer statistics is older than 30 days Red alert: Yellow alert, if the last update of the SQL Optimizer statistics is older than 60 days
Last Collection Type | Type of update carried out

Update the SQL Optimizer statistics at regular intervals. To do this, follow the procedure described in Scheduling the Updates of the SQL Optimizer Statistics.


Displaying Actions - SAP Documentation

Procedure documentation Displaying Actions

You can display all the information about actions in the DBA Planning Calendar.

  • Status of an action

  • Action parameters

  • Repeat patterns

  • Job logs, for actions already executed

  • Program logs

The status of an action is displayed by the color of the calendar cell in the DBA Planning Calendar containing the action.

Procedure

Open the DBA Planning Calendar (Setting Up and Using the DBA Planning Calendar).

Displaying the Status of a Day's Actions

Double-click on the header for a particular day. The result list appears. All scheduled actions are displayed.

Failed or interrupted actions are highlighted in red in the DBA Planning Calendar. If all the actions on a given day contained errors or were interrupted, that day's header cell is also highlighted in red.

To display another day, select a new one by double-clicking on the calendar control in the left screen margin.

Displaying a Scheduled Action

Double-click on the calendar cell containing the desired action or position the cursor on the calendar cell and select Action Details.

A dialog box appears displaying detailed information about the action. The Action Description group box displays information about the scheduling and status of the action.

Action parameters | Depending on the action selected, different action parameters are displayed here.
Repeat | This tab page is only displayed if the action is part of a repeating action.
Job log | The job log for the background processing generated by the action is displayed. All messages written by the background job are also displayed. To display any long texts, double-click on the message.
Program log | Some actions write program logs on the database computer. If there is such a program log, it is displayed on this tab page.

The timestamp is used to assign logs to scheduled actions. An action log is assigned to the action that has the same type and the closest corresponding time stamp. In some cases, for example if no background work process is available, the action is delayed and maybe even postponed until the next scheduled time. This unfortunately means that the action log is then assigned to the next scheduled time, making the original scheduled time incorrect. This is the case when the logs of preceding schedulings are displayed for the next scheduled action of the same type.

Troubleshooting

Every scheduled action can, in exceptional cases, fail. You should therefore perform daily checks of at least the critical actions, such as database backups.

Use the job log or program log to check if the background job was executed correctly. If no job log exists, the background job was probably not started. To find out about other details, start the Simple Job Selection (transaction SM37) and display the job overview (Managing Jobs from the Job Overview). The names of jobs scheduled in the DBA Planning Calendar always begin with DBA. The job log also tells you whether a program from another vendor was started.

After you have fixed the error, if necessary, restart the action manually. Choose Execute. Make sure the action does not conflict with other planned actions.

More Information

Starting an Action Immediately


SQL Optimizer in CCMS - SAP Documentation

Procedure documentation SQL Optimizer in CCMS

SQL statements describe which information data must contain. They do not, however, describe how to read or write that data. Therefore, there has to be an instance for converting SQL statements into actual access operations. That instance is the SQL Optimizer.

Since each SQL statement has to be converted into different access operations, the runtime can vary depending on the amount of data to be processed. The SQL optimizer has the task of processing the requested data by using the most cost-efficient strategy.

The database system uses the cost-based SQL optimizer exclusively. This means that there are no rules for how to access the data. Accesses can be made to simple tables (base tables) or to multiple tables (joins or subqueries). The aim of the SQL optimizer is to find the most cost-effective plan for processing access to the tables, including those involved in the join.

The optimizer uses statistics to determine a search strategy for access to data from multiple tables.

UPDATE STATISTICS

The cost-based SQL optimizer uses statistics that are generated by the UPDATE STATISTICS statements.

Statistics generation (UPDATE STATISTICS) can be triggered by the administrator (UPDATE STATISTICS <table> or UPDATE STATISTICS <column>).

You can start an UPDATE STATISTICS run from the SAP system.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Procedure

You can schedule UPDATE STATISTICS runs in the DBA Planning Calendar: Scheduling Updates of the SQL Optimizer Statistics

In exceptional situations you can use the Tables/Views/Synonyms user menu (DBA Cockpit/Database/liveCache Assistant) to update statistics for individual tables.

Note Note

When an SAP system is installed or upgraded, the statistics that are required by the SQL optimizer have to be generated for all tables. These actions are documented in the installation and upgrade documentation, and are not covered here.

End of the note.

More Information

  • Executing Performance Analysis in CCMS

  • Planning Concept

  • Concepts of the Database System,

    SQL Optimizer

    SQL Optimizer Statistics

  • SQL Reference Manual, UPDATE STATISTICS Statement

  • SAP Note 808060


Table Sizes - SAP Documentation

Procedure documentation Table Sizes

In the Statistics user menu (SAP MaxDB/SAP liveCache technology) you can find, among other things, a display of statistics about table sizes and growth in the user menu Table Sizes.

The current table sizes are determined by a report and saved in a database table which forms the history of table sizes and table growth. You can view, among other things, the statistical data in the Table Sizes user menu.

Procedure

Determining Statistical Data

If necessary, you will have to determine the statistics data for the tables.

Procedure

You have the following options:

  • Schedule the action Update Table Statistics in the DBA planning calendar every week.

    The database must be in the ONLINE operational state at the time of executing the task. To schedule the action Update Statistics Tables, proceed as described in Scheduling an Action .

  • You can also update the table statistics once in the Database Assistant or liveCache Assistant.

    The database must be in the ONLINE operational state at the time of executing the task. Choose the function Table Statistics in the user menu [image] Statistics [image] Table Sizes [image] to start the background job that updates the statistics.

Result

The system determines the table sizes and their growth. The system determines the index sizes. The runtime depends on the fill level of the database instance and the number of tables you are analyzing. The measurement data is logged in the following areas:

  • Table SDBCCMS

    The measurement data from the tables can be viewed in the Database Assistant/liveCache Assistant in the Table Sizes menu.

  • Spool/Screen

    The measurement data from the tables and their indexes can be either printed out or downloaded for other provider’s tools.

  • Table ADATABSIZE (only for the basis database of the SAP system)

    You can use the SQL Studio database tool to access the measurement data and the indexes in the ADATABSIZE table directly.

Displaying Table Size

Once the statistical data has been determined, you can display it as follows:

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Statistics [image] Table Sizes [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Table Sizes [image] .

Result

You can choose from the following displays:

  • Tables with Greatest Growth

    You can set the comparison time period, comparison interval, and the number of tables displayed.

  • Largest Tables

    You can set the date and number of tables displayed.

  • Growth of a Table

    You can set the table name and the display period.

You can display all statistics as graphics. The following functions are available:

  • Deleting Statistics Data

    You can delete statistics data manually by specifying a time period/date or automatically by specifying a time period (in weeks).

  • Update Table Statistics

    Note that table statistics information is saved only once a day. Any older daily statistics are overwritten.

More Information

Planning Concept

DBA Cockpit: SAP MaxDB, Table Sizes


Performance - SAP Documentation

Procedure documentation Performance

In the Database Alert Monitor user menu and liveCache Alert Monitor, you can find, among other things, a display of the cache hit rates, a display of the free database sessions for user tasks, the database trace status, the status of the log queues, the status of write protection for the OMS Monitor (SAP liveCache technology), and information about the SQL Optimizer statistics.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Performance

Result

The system displays the following:

  • Caches

  • User Tasks

  • Monitor

  • Optimizer Statistics


System Settings - SAP Documentation

Procedure documentation System Settings

In the Current Status user menu, you can find, among other things, a display of the system settings.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] System Settings [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] System Settings [image] .

Result

The system displays an overview of the most important system settings, divided into the following areas:

  • General Status Information

    The system displays information about the options and settings with which the system is currently running. Critical states are highlighted in color on the display (for example LOG WRITING off - logging is deactivated, VTRACE - database trace is activated). Among other things, you can see whether join optimization for the optimizer (OPTIMIZE JOIN PARALLEL), database monitoring (MONITORING on), or automatic log backup (AUTOSAVE LOG on) are activated, or whether bad indexes have been found (NO OF BAD INDEXES), etc.

  • Restart Information

    You receive, among other things, information about savepoints.

  • Log Information

    You receive internal log information, such as when the last log backup was written (LAST FLUSH DATE, LAST FLUSH TIME).

To update the display, choose [image] Edit [image] Refresh [image] . The system displays the current system settings, which are stored in a series of system tables.

More Information

  • Database Server and Versions

  • Database Trace

  • Database Monitoring

  • Scheduling Log Backups

  • Index Analysis

  • DBA Cockpit: SAP MaxDB, System Settings


Transactions - SAP Documentation

Procedure documentation Transactions

In the Performance user menu, you can find a display of active transactions.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Performance [image] Transactions [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Transactions [image] .

Result

You see an overview of the transactions.

More Information

  • Executing Performance Analysis in CCMS

  • DBA Cockpit: SAP MaxDB, Transactions

  • Concepts of the Database System, Transactions

  • SQL Reference Manual, Transactions


Tools - SAP Documentation

Procedure documentation Tools

You can use this menu to call the following tools, amon others, for more detailed administration tasks: Database Manager, Database Studio, the database console, the database trace, the SQLDBC trace, and the DBA planning calendar.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose Tools.

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select Tools

Result

You can use the following tools:

  • Database Manager (CLI)

  • Database Studio

  • Database Console/Console

  • Database Trace

  • SQLDBC Trace

  • DBA Planning Calendar

Note Note

From SAP MaxDB Version 7.7 onwards, Database Studio replaces the database tools Database Manager GUI, SQL Studio, and Synchronization Manager and also offers additional functions (such as a GUI for the program loader). If you are using an SAP MaxDB version below 7.7, you can therefore use the Tools menu to call Database Manager GUI and SQL Studio, if required.

End of the note.

More Information

DBA Cockpit: SAP MaxDB, Tools


Data Area - SAP Documentation

Procedure documentation Data Area

In the Memory Areas user menu, you can find, among other things, a display of the database fill level.

Procedure

Open the Database Assistant (transaction code DB50) or the liveCache Assistant (transaction code LC10). Choose [image] Current Status [image] Memory Areas [image] Data Area [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Data Area [image] .

Result

The display contains the following information:

  • Total Size

    Size of the data area

  • Used Area

    Memory actually used in data area

  • Permanently Used Area

    Memory used by permanent data in the data area (SQL data, and for for SAP liveCache technology also OMS data and references to undo log entries).

  • Temporarily Used Area

    Memory used by temporary data in the data area (for SAP liveCache technology, this includes data that belongs to consistent views and was displaced from the OMS heap)

  • Free Area

    Available memory in the data area

  • Number of data pages changed since the last data backup.

    This value indicates the number of pages that an immediate incremental data backup would include.

Note Note

SAP liveCache Technology: You can also configure volumes for an SAP liveCache. To do so, use the SAP liveCache-specific user menu Configure Volumes.

End of the note.

More Information

  • Monitoring the Data Area

  • DBA Cockpit: SAP MaxDB, Data Area

  • Database/liveCache Alert Monitor, Data Area

  • Database/liveCache Assistant, Volumes

  • Glossary, Consistent View, OMS, OMS Heap


Archiving Backup Files - SAP Documentation

Procedure documentation Archiving Backup Files

If no space is available in the backup files disk directory for log backups, log backups cannot be performed. Check space availability regularly to ensure the backup files can always be written. Archive older backup files regularly to another data carrier.

If you use backup tools from other providers, you can automate the process for archiving backup files with the DBA Planning Calendar.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Define appropriate backup templates. For the backup template to be used for archiving the backup files, specify the desired backup tool from a different provider, and Pipe as the volume type.

Procedure

  1. Follow the scheduling concept.

  2. Open the DBA Planning Calendar.

  3. To archive backup files automatically, proceed as described in Scheduling an Action.

    • Use the following action: Archive Log Backup Files.

    • Select the backup template containing the backup files in the log backup results.

    • Select or specify the name of a backup template where the log backup files are to be archived using the backup tool from another provider.

Note Note

Make sure that the backup tool from the other provider is connected and ready for use.

End of the note.

Result

The system schedules archiving of the log backup files. Check how the action has been scheduled. The backup files are archived using the corresponding backup tool from another provider.

Check the results of the archiving in the DBA Planning Calendar, as described in Displaying Actions. Use the information displayed in the DBA History. Also use the Log Area display in the Database or liveCache Alert Monitor.

More Information

Scheduling Log Backups

Database Administration, Archiving Backup Tools, Using Third-Party Backup Tools


Command Monitor - SAP Documentation

Procedure documentation Command Monitor

The SQL Performance user menu contains, among other things, the SQL command monitor. Use this tool if the analysis of the database bottlenecks (Bottlenecks) detected inefficient database access. This enables you to target long-running SQL statements.

This tool is intended for short analyses, since it records a limited number of SQL statements. You can specify criteria to restrict the volume and type of SQL statements that are recorded.

Prerequisites

Prerequisites

Only for the OLTP database that is the basis of the current SAP Web AS system: To ensure that the name of the ABAP program and other information can be sent to the database, instance profile parameter dbs/ada/register_appl_info=1 must be set.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] SQL Performance [image] Command Monitor [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] SQL Performance [image] Command Monitor [image] .

Result

Activating or Deactivating the SQL Command Monitor

To activate or deactivate the SQL command monitor shortly before a transaction that is to be analyzed is started, follow the procedure below:

  1. Choose [image] Command Monitor [image] Change Monitor Settings [image] .

  2. Enter the desired recording criteria in the Change Monitor Settings display. The recording criteria determine how SQL statements are to be logged in the command monitor tables.

    Recording Criteria

    Number of page accesses

    An SQL statement is logged if the number of specified page accesses is exceeded.

    SQL statement runtime

    An SQL statement is logged if the specified runtime is exceeded.

    Selectivity

    An SQL statement is logged in the command monitor tables if the ratio of qualified records to read records falls below the specified percentage.

    Further Setting

    Max. number of monitor entries

    This value determines the maximum number of entries that are held in table SYSMONITOR before the table is overwritten cyclically.

    SAP provides you with defaults that you can confirm or change. If you want to confirm the SAP system defaults, choose Copy SAP Default Setting in the Change Monitor Settings display.

  3. If you want to activate the SQL command monitor with the recording criteria you have defined, choose Activate Monitor Settings.

During normal operation of the database system, the SQL command monitor is deactivated. The status of the SQL command monitor is displayed in the Current Monitor Settings area and can be refreshed using [image] Command Monitor [image] Refresh Monitor Settings [image] .

Deactivate the SQL command monitor as soon as the transaction you want to analyze ends.

Choose [image] Command Monitor [image] Change Monitor Settings [image] and then Exit SQL Monitoring.

Output of Results

To display the SQL statements logged according to the recording criteria selected, choose [image] Command Monitor [image] Refresh Monitor Output [image] in the SQL command monitor.

Displaying SQL Statements

If a logged SQL statement was called from an ABAP program, you can trace the statement back to that program. To do this, select the SQL statement and choose Display Call in ABAP Program (only for the OLTP database instance that is the basis of the current SAP Web AS system).

To obtain additional information about an SQL statement, double-click the SQL statement or choose Display SQL Statement. You can see the complete SQL statement in the following view. Additional analyses are possible for SQL statements:

  • Display/Trace Execution Plan for an SQL Statement:

    Among other things, the search strategy that the SQL optimizer would select to process this SQL statement is displayed here.

    If requested by Support, you may need to create an SQL Optimizer trace.

    Choose Explain with Hint if you want to test the effect of different indexes on the execution plan of an SQL statement.

  • Replacing Placeholders in the SQL Statement: You can replace placeholders in an SQL statement.

  • Print Version: You can copy the output to the clipboard or print it directly.

  • Tables/View Information: The Tables/Views/Synonyms display appears.

  • Display Callpoint in ABAP Program: (only for the OLTP database instance that is the basis of the current SAP Web AS system)

  • Information on the ABAP Callpoint: (only for the OLTP database instance that is the basis of the current SAP Web AS system)

Initializing the Command Monitor Tables

The SQL statements and the values specified in their WHERE clauses are recorded in the SYSMONITOR and SYSMONDATA tables, provided these statements meet the recording criteria, and are executed in the database system after the SQL command monitor has been started. These tables are overwritten cyclically. Deactivating the command monitor does not initialize the SYSMONITOR and SYSMONDATA tables.

To initialize the command monitor tables in the SQL command monitor, choose [image] Command Monitor [image] Initialize Monitor Tables [image] .

More Information

  • Resource Monitor

  • Executing Performance Analysis in CCMS

  • DBA Cockpit: SAP MaxDB, Command Monitor

  • Concepts of the Database System,

    Search strategies

    List of all Search Strategies

    EXPLAIN Statement


Caches - SAP Documentation

Procedure documentation Caches

In the Performance display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, information about the cache hit rates.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Performance [image] Caches [image] .

Result

Display | Default for Alerts
Data Cache Hit Rate - total | Yellow alert: If the hit rate falls below 99 %. Red alert: If the hit rate falls below 98 %.
Catalog Cache Hit Rate | Yellow alert: If the hit rate falls below 80 %. Red alert: If the hit rate falls below 60 %.
liveCache: Data Cache Hit Rate - OMS Data | Yellow alert: If the hit rate falls below 99.8%. Red alert: If the hit rate falls below 99.5%.
liveCache: Data Cache Hit Rate — SQL Data | Yellow alert: If the hit rate falls below 99 %. Red alert: If the hit rate falls below 98 %.
liveCache: Data Cache Hit Rate — History/Undo | Yellow alert: If the hit rate falls below 99.8%. Red alert: If the hit rate falls below 99.5%.

More Information

DBA Cockpit, Caches

Database/liveCache Assistant, Caches

SAP liveCache Technology: Monitoring the Main Memory Areas


Health - SAP Documentation

Procedure documentation Health

The Database Alert Monitor and liveCache Alert Monitor provide you with information on bad indexes and on database structure checks.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Health [image] .

Result

The system displays the following:

  • Bad Indexes

  • Database Structure Check


Managing Performance Data - SAP Documentation

Procedure documentation Managing Performance Data

In the Bottlenecks user menu (DBA Cockpit/Database/liveCache Assistant) or Expert Analysis (DBA Cockpit/Database/liveCache Assistant) you can, among other things, transfer the log data of the Database Analyzer into the database, delete log data or aggregate performance data.

Procedure

Choose [image] Goto [image] Managing Performance Data [image] .

Result

Transferring Log Files to the Database

When accessing log files of the Database Analyzer with the Database/liveCache Assistant, it will initially try to read files directly from the database of the current SAP application system.

If the log files are not available in the database of the SAP application system, it will then read from the database computer, which can be extremely time-consuming. In order to prevent it reading from the computer, you should ensure that the log files from the database computer in the database of the SAP application system are transferred regularly.

Automatic Transfer

You can transfer the log files automatically. To do this, choose Automatic Administration.

If you set the marker to Daily Transfer of Data from Previous Day from the Host to the DB (Table SDBCCMS) then the performance analysis log files will be copied once a day into the database of the SAP application system from which the Database Assistant was launched.

Manual Transfer

You can transfer the log files manually. To do this, choose Manual Administration.

Enter the desired time period for the data transfer from the computer to the database (Table SDBCCMS) and choose Transfer Data, to copy the log files into the database.

Deleting Log Files

Ensure that old and superfluous log files are deleted.

Deleting Automatically

You can delete the log files automatically. To do this, choose Automatic Administration.

  • If you select Delete Performance Data in the Database Host after Days and set the required number of days, the log files will be deleted from the database host once the number of days has elapsed.

  • If you select Delete Performance Data in the Database (Table SDBCCMS) after Weeks and set the required number of weeks, the log files will be deleted from the database once the number of weeks has elapsed.

Deleting Manually

You can delete the log files manually. Choose Manual Administration.

Enter the desired time period for deleting performance data (files) from the database host and select Delete Data to delete log files from the database host.

Enter the desired time period for deleting performance data from the database (Table SDBCCMS) and then choose Delete Data to delete the log files from the database.

Aggregating Performance Data

You can aggregate performance data from the Database Analyzer.

Aggregating Automatically

You can aggregate the performance data automatically. Choose Automatic Administration.

If you set the marker to Daily Aggregation of Data (Previous Day, Week, Month, Quarter), the data will be aggregated automatically.

Aggregating Manually

You can aggregate the performance data manually. Choose Manual Administration.

Enter the required time period for aggregating performance data and choose Start Aggregating to aggregate performance data for the appointed time period.

Enter the required time period for deleting aggregated data and choose Delete Aggregated Data to delete the aggregated performance data for the appointed time period.

Note Note

Aggregate the data once manually, then set it to automatic aggregation for any subsequent activities.

End of the note.


Tables/Views/Synonyms - SAP Documentation

Procedure documentation Tables/Views/Synonyms

The Problem Analysis user menu shows you, among other things, information about a specified database table, view tables, or their synonyms.

Procedure

  1. Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Tables/Views/Synonyms [image] .

    or

    Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Tables/Views/Synonyms [image] .

  2. Enter the schema of the database object and the name of the database object.

    When you specify the schema or the name, you can also enter * as a wildcard for any character string (T0* for all table names that start with T0, for example).

    If you begin the name of a database object with a ", the subsequent letters are not changed into all caps, but instead are used for the query as you have entered them.

  3. Decide which database objects you want to display:

    Tables, Views and Synonyms

    Only Tables

    Only Tables with a Data Store Clustered on the Database Side

    Only Views

    Only Synonyms

  4. Choose [image] Database Object Information [image] Display [image] .

  5. If necessary, mark the required object in the list provided for any additional analysis.

  6. Choose Display Tables/View Info.

Result

You can choose from the following displays:

  • Properties: Type, access rights, date created and changed, date of the last run to determine table consistency (for tables only), default sample to update optimizer statistics (tables only), and specifications about cost saving by clustering of tables (only for tables)

    You can check the database structures (for a single table of the SAP MaxDB or SAP liveCache system).

    You can change the default value for the sample size to update the SQL optimizer statistics of a table (in rows or percent). If this value is 0, a warning message appears stating that the update of optimizer statistics using the sample size is deactivated.

  • Definition: Definition of the object in the database instance (this is not the object definition from the ABAP Dictionary but the object definition according to the system tables of the database system).

    If the object has a virtual key, it is displayed here. You will find further information about the data store clustered on the database side in SAP Note 1040431.

  • Indexes: Display of all indexes (inactive, unused, bad indexes) that were defined for this object. Among other things, you can activate or deactivate indexes or restore or reset the usage counter.

  • CREATE statement (only for view tables): CREATE VIEW statement that was used to create the view table

  • Table key (only for view tables): Primary key for tables that form the basis for the View table.

  • Optimizer statistics: The latest values calculated for the SQL optimizer statistics, specifying the execution time and the sample size of the update run.

    You can have the system display whether the SQL optimizer statistics need to be updated (Requested Updates). You can update the statistics for this table (Update (Standard)) or selected columns from this table (Update (Selected Columns)) with any sample size (in rows or percent).

  • Exact Sizes: Exact size of tables and indexes

  • Data Store (only for data store clustered on the database side): Information about clustering of the object

    You will find further information about the data store clustered on the database side in SAP Note 1040431.

If you have opted to have a synonym displayed, you will receive a display where the synonym refers to the object (table or view table). You can jump to the display of the corresponding object.

Choose [image] Table/View [image] Optimizer-Relevant Information [image] for a summary of those displays mentioned above that are relevant to the SQL optimizer.

More Information

  • Indexes

  • DBA Planning Calendar,

    Scheduling Updates of the SQL Optimizer Statistics

    Scheduling a Database Structure Check

    Planning Concept

  • DBA Cockpit: SAP MaxDB, Tables/Views/Synonyms

  • Database Studio, Updating SQL Optimizer Statistics

  • Database Administration,

    SQL Optimizer Statistics

    Checking Database Structures


System Tables Upgrade - SAP Documentation

Procedure documentation System Tables Upgrade

When system tables are updated, a log is written. You will find this log in the Logs user menu.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Logs [image] System Tables Upgrade [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] System Tables Upgrade [image] .

Result

The system displays the log of the last update of the system tables.

  • You can use the navigation help (Start of File, End of File) for orientation within the log.

  • Choose Import File to update the output.

More Information

  • You can use System Tables of the SYSINFO Schema to display a list of the SYSINFO system tables and their descriptions.

  • DBA Cockpit: SAP MaxDB, System Tables Upgrade

  • Database Studio, Updating System Tables

  • SQL Reference Manual, Definitions of System Tables, Evaluating System Tables (Examples)


Backup/Recovery - SAP Documentation

Procedure documentation Backup/Recovery

The Database Alert Monitor and liveCache Alert Monitor contain, among other things, information on backups and recoveries.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Backup/Recovery [image] .

Result

The system displays the following:

  • Last Backup

  • Last Recovery


Current Messages - SAP Documentation

Procedure documentation Current Messages

In the Kernel user menu, you can find, among other things, a display of the current kernel log.

The messages output in the knldiag kernel log support you when you interpret the events that occurred since the database system was started.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Kernel [image] Current [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] Current [image] .

Result

The system displays the current log (kernel log knldiag).

You can use the navigation help (Start of File, End of File, Start of Write Cycle, Current Write Position) for orientation within the message files.

Choose Import File to update the output.

More Information

DBA Cockpit: SAP MaxDB, Current Messages

Database Administration, Log Files


Log Area - SAP Documentation

Procedure documentation Log Area

The Space Management display of the Database Alert Monitor or liveCache Alert Monitor shows you status information about logging and automatic log backups, as well as the last log sequence numbers.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Space Management [image] Log Area [image] .

Result

Display | Default for Alerts
Total Log Space | Total storage space available in the log area in MB
Free Log Space | Free storage space in MB
Total Log Space | Occupied storage space as a percentage
Log Writing | Shows you whether the logging is active or not.
Autosave Log | Shows you whether automatic log backups are activated or not. If automatic log backup is not activated, a yellow alert is generated.
Last Log I/O Sequence Number | Shows you the last log sequence number.
Overwrite Mode | Green alert: Overwrite mode is not activated (status OFF) Red alert: Overwrite mode is activated (or the status is not OFF)

  • If there is not enough free space in the log area, proceed as described in Monitoring the Log Area.

  • Logging must always be active in production systems.

  • To guarantee the security of your system, automatic log backups must always be activated. Proceed as described in the section Activating Automatic Log Backups.

More Information

DBA Cockpit, Log Area

Database/liveCache Assistant, Log Area

Glossary, Log Settings

Concepts of the Database System, How Databases Log Data Changes


Error Messages - SAP Documentation

Procedure documentation Error Messages

In the Kernel user menu, you can display, among other things, the kernel error log.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Messages [image] Kernel [image] Errors [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] Errors [image] .

Result

The error log, knldiag.err, is displayed.

The error log records all of the database kernel’s error messages and warnings since the database system was installed. This file is written continuously.

You can use the navigation help (Start of File, End of File) for orientation within the message files.

Choose Import Message File to update the output.

More Information

DBA Cockpit: SAP MaxDB, Error Messages

Database Administration, Log Files


Log Area - SAP Documentation

Procedure documentation Log Area

In the Memory Areas user menu, you can find, among other things, a display of the log status of your database system.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Memory Areas [image] Log Area [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Log Area [image] .

Result

The system provides you with the following information:

Log Area Utilization

  • Total Size

  • Log Segment Size

  • Used Log Area

  • Unsaved Log Area

If more than 60 % of the log area is used, you should back up the log segments to release space for other transactions. You can automate this process by Activating Automatic Log Backups.

You obtain status information about the following areas: Mirroring the Log Area, Automatic Overwrite of the Log Area, Redo Log Management, Automatic Log Backups The Last Log I/O Sequence Number is also displayed.

Note Note

SAP liveCache Technology: You can also configure volumes for an SAP liveCache. To do so, use the SAP liveCache-specific user menu Configure Volumes.

End of the note.

More Information

  • Monitoring the Log Area

  • Database Alert Monitor/liveCache Alert Monitor, Log Area

  • Database Assistant/ liveCache Assistant, Volumes

  • DBA Cockpit: SAP MaxDB, Log Area

  • Database Administration, Backing Up Log Entries

  • Glossary, Log Settings


Configuring the Log Area - SAP Documentation

Procedure documentation Configuring the Log Area

In the Volumes user menu, you can, among other things, configure the log area.

If the log area no longer has sufficient storage space, you can add more log volumes. The system adjusts all dependent parameters during the change.

Note Note

When a user executes a particular configuration function, this function is locked for all other users.

End of the note.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

The SAP liveCache database is in the ONLINE or ADMIN operational state.

Procedure

Configuring the Log Area with the DBA Cockpit

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Log Area [image] .

Configuring the Log Area with the liveCache Assistant

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Configuration [image] Volumes [image] Log Area [image] .

Configuring the Log Area

Check the operational state. Check the operational state. The SAP liveCache database must be in the ONLINE or ADMIN operational state.

Choose [image] Edit [image] Add Volume [image] . If the current volume configuration corresponds to the SAP liveCache naming convention, the generated name of the new volume is already displayed in the dialog box.

Make the following entries in this screen:

Size in KB | Size of the new log volume
Path | Complete path of the new log volume. Confirm the default value. UNIX: You can decide whether a file or a raw device should be created.

Confirm your entries.

Result

After you have confirmed your entries again, the new log volume is created.

The new file is created with the specified size. This can take some time, since the new volume is formatted (this does not apply if the volume is created on a UNIX raw device).

More Information

  • Monitoring the Log Area

    Configuring the Data Area

  • liveCache Assistant, Configuring Volumes

  • DBA Cockpit: SAP MaxDB, Log Area


Initializing liveCache - SAP Documentation

Procedure documentation Initializing liveCache

In the Operating user menu, you can, among other things, initialize an SAP liveCache database.

Note Note

If a user is performing administration functions, administration is locked for all other users.

End of the note.

An SAP liveCache database is initialized by the Database Manager. The DBM Server executes the control file lcinit.bat with the option init. After the SAP liveCache database has been initialized, all data in the data volumes and the log volumes is no longer available, as all volumes are formatted. Therefore, no existing data can be loaded into the SAP liveCache caches once the SAP liveCache database has started up. Rather, all data must be newly built up. Among other things, the liveCache applications are also registered. For this reason, each initialization process can take some time.

Prerequisites

In accordance with the authorization concept, the user has been assigned the role SAP_BC_LVC_SUPERUSER.

Procedure

Initialization with the DBA Cockpit

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Properties [image] Edit [image] Initialize liveCache [image] .

Initialization with the liveCache Assistant

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Operating [image] .

  5. Choose [image] Administration [image] Initialize liveCache [image] .

Initialization in the Background

  1. Choose ABAP Editor (transaction SE38).

  2. Enter the report name RSLVCINIT.

  3. Create a variant of the report. You must enter the name of the database connection, among other things.

  4. You can schedule the report with the variant defined by you for background processing (Define Job (transaction SM36) Scheduling Background Jobs).

Initialization from the Operating System Level

Function Module for Starting/Stopping/Initializing

Process Flow

  1. The operational state of the SAP liveCache database instance is checked. If the SAP liveCache database is in the ONLINE or ADMIN operational states, it is transferred to the OFFLINE operational state.

  2. The SAP liveCache database is then transferred to the ADMIN operational state and reinitialized.

  3. The liveCache system tables are loaded and liveCache monitoring is activated.

  4. The DB procedures are loaded.

  5. The routines of the application system (such as SAP SCM) are installed.

Result

The lcinit.log log is displayed. If an error occurs during the initialization, the initialization process is terminated and the system immediately displays the current lcinit.log. You will find an overview of liveCache operating in the DBA Cockpit in the user menu Properties.

Caution Caution

A terminated initialization attempt means that the corresponding SAP liveCache database is not runnable. Eliminate the error and restart the initialization process.

End of the caution.

The initialization of the SAP liveCache database is also logged in the system log of your SAP system (transaction SM21).

More Information

  • Starting liveCache

    Stopping liveCache

  • DBA Cockpit: SAP MaxDB, Properties, Operating (liveCache)

  • liveCache Assistant, Operating


Prerequisites - SAP Documentation

Background documentation Prerequisites

You must fulfill the following prerequisites before the database administrator can perform necessary database administration actions.

Note Note

The documentation for the SAP MaxDB database system also generally applies to SAP liveCache technology. If there are functional differences, these are explained.

End of the note.
Role in the SAP System
SAP MaxDB

You have selected the role of the database administrator for the database system: SAP_BC_DB_ADMIN_SDB. The system displays the database administrator's user menu.

SAP liveCache Technology

You have selected a role in accordance with the authorization concept.

User Data

Enter the necessary user data for the DBM operator and the standard database user/standard liveCache user. Follow the procedure described in User Data (SAP MaxDB/SAP liveCache Technology).

Features

You must fulfill the following prerequisites before you can use the DBA Planning Calendar.

SAP System

You can use the DBA Planning Calendar to start actions only if the SAP system is active and available. If you want to execute actions that require the SAP system to be inactive (for example, recovering the database system), you must use the Database Studio or Database Manager.

Authorizations in the SAP System

In order to use the DBA Planning Calendar, users need authorization for database administration and background job scheduling.

Enter the profiles S_RZL_ADMIN and S_BTCH_ALL for the database administrator (Profile Maintenance (Authorization Object S_RZL_ADM) and background processing authorizations).

Backups

You must define valid backup templates before performing backups. To do so, you can use the DBA Cockpit (Backup Templates), the DBA Planning Calendar, or tools such as the Database Studio or Database Manager.

The number of data carriers required depends on the backup template you choose. The data carriers must be ready and waiting in the specified backup device (tape drive or tape changer) so that the database administrator does not have to interrupt the backup scheduled in the DBA Planning Calendar.

Always back up the log area to the file system (Scheduling Log Backups). To do this, when defining the backup template, specify File as the data carrier type.

You can use backup tools from other providers (Connecting Backup Tools from Other Providers). To do this, when defining the backup templates, specify the desired external backup tool and Pipe as the data carrier type.

More Information

DBA Cockpit: SAP MaxDB

Database Administration in CCMS: SAP MaxDB

Database Administration in CCMS: SAP liveCache Technology


CCMS Monitoring - SAP Documentation

Function documentation CCMS Monitoring

In addition to a large number of other tools for database administration, the CCMS contains a Database Alert Monitor or liveCache Alert Monitor for each database.

Integration

  • SAP MaxDB: In the user menu, select [image] Database: Monitoring and Configuration [image] CCMS Monitoring [image] (transaction RZ20).

  • SAP liveCache Technology: In the user menu, choose CCMS Monitoring (transaction RZ20).

Prerequisites

Prerequisites

SAP liveCache Technology: The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Features

If alert monitoring has not yet been activated (for example, by calling the datbase Alert Monitor in the database assistant or the liveCache Alert Monitor in the liveCache Assistant) you need to activate the Alert Monitor and add the database connection to the Alert Monitor.

To do this, proceed as described in Database Alert Monitor or liveCache Alert Monitor.

More Information

Database Administration in CCMS: SAP MaxDB

Database Administration in CCMS: SAP liveCache Technology


User Menu - SAP Documentation

Function documentation User Menu

The role SAP_BC_DB_ADMIN_SDB has been provided for SAP MaxDB database administration (Prerequisites). Its user menu contains the most important DBA functions that database administrators have to perform regularly for their DBA actions.

Note Note

Specific roles have been set up for SAP liveCache technology. These are described in Authorization Concept.

End of the note.

Features

Many DBA functions are part of the DBA Cockpit. Alternatively, you can call the following DBA functions using the SAP_BC_DB_ADMIN_SDB role:

DBA Function

Tool / DBA Action

Database: Operation

DBA Planning Calendar

You can use the DBA Planning Calendar to schedule and start data and log backups, and monitoring and analysis tasks.

DBA Action Logs

In the DBA Action Logs display, you can check the status of your data and log backups, and other DBA actions, and display the logs of these actions.

Database: Monitoring and Configuration

MaxDB/liveCache System Overview

In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.

Database Assistant

You can use the Database Assistant to monitor your database system.

CCMS Monitoring

Among many other displays, the CCMS monitoring also includes the database alert monitor, which displays critical information memory, security, and performance as alerts.

DB Filling: Tables and Indexes

In the DB Filling/Tables and Indexes display, you can see information on the database fill level and the tables and indexes in the database.

You can determine which indexes are missing, and check the consistency between database objects and ABAP Dictionary objects.

Database: Archiving

Data Archiving: DB Tables

You can display relationships between tables and archiving objects and display statistical information for each table.

Activities

To display role SAP_BC_DB_ADMIN_SDB, use the Role Maintenance transaction (transaction PFCG). More information: Application Help for role maintenance in Users and Roles.

More Information

Database Administration in CCMS: SAP MaxDB


DB Filling/Tables and Indexes - SAP Documentation

Function documentation DB Filling/Tables and Indexes

In this display of the database administration in CCMS, you see information about the database fill level and the database objects (tables and indexes). You can determine which indexes are missing, and check the consistency of database objects and ABAP Dictionary objects.

Integration

In the user menu, select [image] Database: Monitoring and Configuration [image] Datatabase Performance: Tables and Indexes [image] (Transaction DB02).

Prerequisites

Prerequisites

Features

In addition to entries about the database, you can see the following information:

  • Data Area Usage

    You can have the system display Fill level statistics next to the size specifications.

    More information: Database Fill Level

  • Database Tables/Indexes of the Schema <schema_name>

    You can have the system display Table/View Information and Table Size Statistics, in addition to the number of tables and indexes.

    More information: Tables/Views/Synonyms, Table Sizes

    More information: Index Analysis, Indexes

  • Consistency Check Results

    Gives you a display of the number of missing or unknown objects in the database or the ABAP/4 dictionary. For further analysis, choose Missing Tables/Indexes. The results of the consistency check are displayed.

    You can also obtain the results of the consistency check with the DBA Cockpit (transaction DBACOCKPIT). In the DBA Cockpit, choose [image] Diagnosis [image] Missing Tables and Indexes [image] .

    More information: Missing Tables and Indexes

    More information: Scheduling a Database Structure Check

More Information

Database Administration in CCMS: SAP MaxDB


MaxDB/liveCache System Overview - SAP Documentation

Function documentation MaxDB/liveCache System Overview

You obtain an overview of all SAP MAxDB and SAP liveCache databases integrated into your system landscape. In complex system landscapes, you can access database administration functions using the MaxDB/liveCache System Overview transaction.

Note Note

There are alternative options for accessing database administration using the DBA Cockpit: System Configuration Maintenance and the Database Assistant

More information: DBA Cockpit: SAP MaxDB, Database Assistant

End of the note.

Integration

Ensure that the desired database system is integrated into your system landscape (Integrating a Database System).

SAP MaxDB: In the user menu, select [image] Database: Monitoring and configuration [image] MaxDB/liveCache System Overview [image] (transaction DB59).

SAP liveCache Technology: Decide which of the roles assigned in the Authorization Concept you want to use. Choose MaxDB/liveCache System Overview (transaction DB59).

Features

A list of all integrated databases, with detailed information on each database, is displayed.

  • You can open the Database Assistant or the liveCache Assistant. To do this, select the desired database and choose [image] Goto [image] Assistant [image] .

  • You can check the consistency of the integration data and test connections to all application servers. To do this, proceed as follows:

    1. Select the desired database and choose [image] DB System [image] Connection Test [image] . The system displays a list of application servers with your computer name and details of SAP release and version details for a number of the database components involved.

      Where applicable, you will also find warnings in this list informing you that the software Runtime for WebAS has not been installed or that an RFC connection to this computer will shortly not be possible.

    2. Select one or more application servers.

    3. Choose [image] Application Server [image] Connection Test [image] to start the connection test from the required application server to the database instance.

    4. To display the result of the connection test, choose [image] Application Server [image] Log [image] .

  • You can display and change the integration data of the database instances.

    To do this, choose [image] Edit [image] Integration Data [image] Display/Change [image] . Depending on the database type, proceed as described in Changing a Connection for SAP MaxDB/SAP liveCache Technology.

  • You can create new integration data.

    To do this, choose [image] Edit [image] Integration Data [image] Create [image] . Depending on the database type, proceed as described in Creating a Connection for SAP MaxDB/SAP liveCache Technology.

  • You can generate your own views of complex system landscapes by creating appropriate filters.

More Information

Database Administration in CCMS: SAP MaxDB

Database Administration in CCMS: SAP liveCache Technology


Database Assistant - SAP Documentation

Function documentation Database Assistant

The Database Assistant (also known as the DB Assistant) is a tool for database administration in the CCMS. You can administer local or remote databases (with the exception of SAP liveCache databases).

Note Note

For SAP liveCache technology, you can use the liveCache Assistant.

End of the note.

Integration

In the MaxDB/liveCache System Overview, select the desired database and choose [image] Goto [image] Assistant [image] (transaction DB50 or DB50N).

or

In the user menu, select [image] Database: Monitoring and Configuration [image] Database Assistant [image] (transaction DB50).

Many DBA functions are integral parts of the DBA Cockpit and can therefore be called via the DBA Cockpit.

Prerequisites

Prerequisites

Features

You can display the properties of the database.

The following views and functions are available:

  • Alert Monitor

  • Current Status

  • Problem Analysis

  • Statistics

  • Administration

  • Tools

You could also display or change integration data, or have the error codes or information from system tables of schema SYSINFO displayed, amongst other things.

Note Note

The information displayed in the specific areas can vary depending on the specific database version in use. It is possible that only some of the information described is displayed for certain database versions.

End of the note.
Displaying Critical States (Alerts)

When you begin work with the database assistant, a query immediately appears to ask whether you want to have the critical states (Alerts) displayed. If you do not require this option, you can prevent the window appearing for all users by switching it off. Select the relevant option in the window or go to Automatic Monitoring.

More Information

  • Database Administration in CCMS: SAP MaxDB

  • DBA Cockpit: SAP MaxDB

  • Database Administration, Troubleshooting

    Database Administration, Monitoring Databases


DBA Planning Calendar - SAP Documentation

Function documentation DBA Planning Calendar

You can use the DBA Planning Calendar to automate database administration. You can schedule, perform, and check database administration actions.

You can use the DBA Planning Calendar for almost all regular database administration actions. The database actions required are automatically executed at the time you specify. Therefore, you should make sure in advance that the required resources will be available at the time of execution. You can carry out planning periodically. This reduces the amount of planning required for recurring actions.

Integration

The DBA Planning Calendar can be called as follows:

  • SAP MaxDB: In the Database Assistant, choose function [image] Tools [image] DBA Planning Calendar [image] or from the user menu, choose [image] Database: Operation [image] DBA Planning Calendar [image] (transaction DB13).

  • SAP liveCache Technology: In the liveCache Assistant, choose the function liveCache: Monitoring [image] Tools [image] DBA Planning Calendar [image] or from the User Menu, choose DBA Planning Calendar (transaction DB13).

  • The DBA Planning Calendar can be opened via the Central Calendar (transaction DB13C). You can find information about the Central Calendar in the following sections: Central Calendar, Using the Central Calendar.

  • The Central Calendar and the DBA Planning Calendar are elements of the DBA Cockpit (transaction DBACOCKPIT), and can therefore be called as follows: In the DBA Cockpit, choose the function [image] Jobs [image] Central Calendar [image] or [image] Jobs [image] DBA Planning Calendar [image] .

Prerequisites

Prerequisites

SAP liveCache Technology: In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Features

The initial screen of the DBA Planning Calendar includes the following frames: DBA Planning Calendar, Action Pad, Calendar

DBA Planning Calendar

The top left frame (DBA Planning Calendar) contains all the information and parameters for choosing actions that should be displayed:

  • System: Select the system you would like to use to schedule DBA actions.

  • Calendar ID: Select the calendar ID and a factory calendar at the same time.

    Specifying the factory calendar only affects the calendar display. Public holidays are displayed in the same color as weekends. This leads to no restrictions on any actions already scheduled.

  • Planning Mode: You can select planning mode.

    Local: Planning is carried out for the system that you selected.

    Global: Planning is carried out for all integrated, attainable systems. This type of procedure may be necessary, for example, if database structure checks are to be carried out on all systems.

  • Calendar Control: With Calendar Control you can select the week that should be displayed.

    The default value is the current week. To navigate to another week, double-click the week you would like to display.

Action Pad

The Action Pad contains a list of all schedulable actions currently available for the database system.

Action Pad
Task Area | Entry in the Action Pad | Short Name
Data and Log Backups | Complete Data Backup Incremental Data Backup Activate Automatic Log Backup Deactivate Automatic Log Backup Log Backup Archive Log Backup Files | DataBackup IncrBackup AutoLogOn AuotLogOff LogBackup ArchivFiles
Determining Statistics for the SQL Optimizer | Select Tables for Update Statistics Update Statistics for Selected Tables Update All Optimizer Statistics | PrepUpdStat UpdStats UpdAllStats
Database Structure Checks | Check database structure of the snapshot Check the Database Structure Check the Database Structure (Tables Only) | CheckDataSn CheckData CheckTables
Determine Table Size and Growth | Update Table Statistics | CollTabSize
Determine Class Container Sizes (SAP liveCache technology only) | Update Class Container Statistics | CollClaccCo
Checking Backups | Check Complete Data Backup Check Incremental Data Backup Check Log Backup | CDataBackup CIncrBackup ClogBackup
Execute DBM Commands | Executing DBM Commands | DBMExecute
Calendar

The calendar can be displayed with either a weekly, daily or monthly view using either a top-bottom layout or left-right split view layout. To change the layout, choose [image] Administration [image] Left-Right Split View [image] or Top-Bottom Split View Layout. To change, for example, from a weekly view to a daily or monthly view, choose the corresponding button in the application toolbar.

Note Note

You can only change the layout for the week or month view. For the day view, only the left-right split view layout is available.

To change your preferred settings – that is, the layout and the view – choose Save Settings.

The calendar shows the actions that were scheduled using background processing. These actions are then automatically executed.

End of the note.

Once the action has run, the status is indicated using the following colors:

Color | Meaning
Light blue | The action has not yet started.
Dark blue | The action has not yet finished.
Green | The action has run successfully.
Yellow | The action has finished with a warning. Check the job log for details.
Red | An error has occurred and the action was interrupted. Check the job log for details and reschedule the action.
Dark yellow | No more information is available.
Dark red | Scheduling failed, that is, there is no status available and the action is overdue.

You can display the meaning of each color by choosing Legend.

Dragging & Dropping Actions

You can move or copy actions in the DBA Planning Calendar using Drag & Drop; from the Action Pad to the Calendar too, for example.

Activities

  • Setting Up and Using the DBA Planning Calendar

    Configuring the Back End of the DBA Planning Calendar

  • Planning Concept

  • Scheduling an Action

    Changing or Deleting an Action

    Starting an Action Immediately

    Displaying Actions

More Information

  • Automating Database Administration Activities

  • Database Administration in CCMS: SAP MaxDB

    Database Administration in CCMS: SAP liveCache Technology


DBA Action Logs - SAP Documentation

Function documentation DBA Action Logs

For database administration, you have to evaluate the DBA action logs regularly.

Integration

In the user menu, select [image] Database: Operation [image] DBA Action Logs [image] (transaction code DB12).

Prerequisites

Prerequisites

Features

Among other things, the following information is determined and displayed:

  • Data Backups

    Time of the last complete data backup and further information. You can go directly to the log display.

  • DBA Actions

    You can open the lists of DBA action logs for further analysis. More information: DBA History.

  • Memory Areas

    Gives you information about the Log Area and the Data Area.

You will receive warning messages if critical database situations arise (for example, if a data backup fails).

More Information

Automatic Monitoring

Database Administration in CCMS: SAP MaxDB


Database Alert Monitor - SAP Documentation

Function documentation Database Alert Monitor

You can use the Database Alert Monitor to identify memory problems in good time, to check the security of your database system, and to monitor performance.

If data collection methods are periodically scheduled, alerts are automatically updated, and forwarded to the monitoring tree. Analysis methods deliver additional information about the alert statuses, and auto-reaction methods can be configured for automatic reactions to new alerts.

Note Note

A liveCache Alert Monitor has been set up for SAP liveCache technology.

End of the note.

Prerequisites

Prerequisites

Features

You can use the following start options:

  • Alert Monitor

    For the SAP MaxDB database instance that is the basis of the current SAP Web AS system: In the Database Assistant, choose [image] Alert Monitor [image] Database [image] MaxDB [image] (Alert Monitor).

    For all other SAP MaxDB databases: In the database assistant, choose [image] Alert Monitor [image] MaxDB Monitoring [image] OLTP [image] <name of the database connection> [image] .

    The Alert Monitoring is activated and the database connection has been added to the Database Alert Monitor.

  • CCMS Monitoring

    If the Alert Monitoring is not activated (for example, when accessing the Database Alert Monitor in the Database Assistant), you should activate the Alert Monitor and add the database connection to the Database Alert Monitor (see below: Managing Database Connections in the Database Alert Monitor).

    For the SAP MaxDB database instance that is the basis of the current SAP Web AS system: In CCMS Monitoring, choose [image] SAP CCMS Monitor Templates [image] Database [image] MaxDB [image] .

    For all other SAP MaxDB databases: In CCMS Monitoring, choose [image] SAP CCMS Monitor Templates for Optional Components [image] MaxDB Monitoring [image] OLTP [image] <name of the database connection> [image] .

  • DBA Cockpit

    In the DBA Cockpit (transaction DBACOCKPIT), choose [image] Alerts [image] Alert Monitor (old/new version) [image] .

Activities

If necessary, update the display for the Database Alert Monitor tree. To do this, choose Refresh and Invalidate Data Cache in the Database Alert Monitor.

Expand the desired Database Alert Monitor.

Node

Every monitored element of the database instance is displayed as part of a hierarchy tree (monitoring tree) and described as a monitoring tree element (MTE), or node. Online help (short and long texts) gives you the most important information about each node.

You can choose from the following displays for each database node in the monitoring tree:

  • Properties

  • Space Management

  • Performance

  • Backup/Recovery

  • SAP Consistency

  • Health

  • External Analysis Tools

  • Connectivity

Colors of the Alerts

  • Green displays mean that the database state is OK. The administrator does not need to intervene.

  • Yellow or red displays mean that this state puts production operation of the database at risk. The administrator must take measures to find and eliminate the cause of the alert.

Data Collector

Data collectors usually collect data for more than one node. You can see an overview of the data collectors in the appropriate internal subtree. For information on the frequency of the data collections, see the long text for each node.

Analysis Methods

You can start the analysis methods of a node through the node itself (for example, by double-clicking it).

Managing Database Connections in the Database Alert Monitor

Calling up the Database Alert Monitor using the Database Assistant user menu usually activates the Alert Monitoring and the database connection is added to the Database Alert Monitor Tree.

It may be necessary to update the Database Alert Monitor display. To do this, choose Refresh and Invalidate Data Cache in the Database Alert Monitor.

In some special cases you may choose or have to administer the database connection in the Database Alert Monitor manually. In these cases you can use the report RSLVCALMON.

Adding a Database Connection to the Database Alert Monitor

Run the report RSLVCALMON.

  1. Start the ABAP Editor (transaction SE38).

  2. Enter RSLVCALMON.

  3. Enter the name of the database connection.

As an alternative to starting the report, you can also start the central instance.

The Database Alert Monitor is started and the database connection is added. It may be necessary to update the Database Alert Monitor display. To do this, choose Refresh and Invalidate Data Cache in the Database Alert Monitor.

Deleting a Database Connection from the Database Alert Monitor

Run the report RSLVCALMDEL.

  1. Start the ABAP Editor (transaction SE38).

  2. Enter the name RSLVCALMDEL.

  3. Enter the name of the database connection.

More Information

  • DBA Cockpit: SAP MaxDB, Alerts

  • General information about the Alert Monitor

  • Executing Performance Analysis in CCMS

    Database Administration, Monitoring Databases

  • Troubleshooting

    Database Administration, Troubleshooting


Name of the Database Connection - SAP Documentation

Object documentation Name of the Database Connection

One property of a database is its logical name, that is, the name of the database connection for the database or SAP liveCache.

The name of the database connection is normally created when installing the database or SAP liveCache. For the SAP MaxDB OLTP database that is the basis of the current SAP Web AS system, the name of the database connection must match the name of the SAP system.

  • You can assign a new name to a database connection (to create a test database, for example). To do this, use the integration of systems (DBA Cockpit, [image] System Configuration [image] Add System Entry [image] (Integrate Database System) or Datenbank/liveCache Assistant, Create Connection).

  • You can delete the name of a database connection. To do this, use the integration of systems (DBA Cockpit, [image] System Configuration [image] Delete System Entry [image] (Integrate Database System) or Datenbank/liveCache Assistant, Delete Connection).

SAP liveCache Technology: Predefining the Name of the Database Connection

You can predefine the name of the database connection with a default value for the initial screen of the liveCache Assistant. To do this, proceed as follows:

  1. Start the liveCache Assistant (transaction code LC10).

  2. Choose [image] System [image] User Data [image] Own Data [image] .

  3. Choose Parameters.

  4. Enter the following information:

    Parameter DBCON_NAME

    Value <name of database connection>

  5. Save your user data.

This name appears when you start the liveCache Assistant for the first time. If you call the liveCache Assistant again in a database session, the name of the last used database connection is always displayed.

More Information

DBA Cockpit: SAP MaxDB, Properties

Database/liveCache Assistant, Properties


Files - SAP Documentation

Object documentation Files

In the Database Assistant or in the liveCache Assistant, all log and message files of the database system are displayed in the Properties user menu under Files:

Database files can contain various types of information, including information on the size and contents of the files.

  • Choose Details to display a selected file.

  • Choose Display File to display the contents of a file. You can only show ASCII files with this display. For very large files, the system asks for confirmation. Files that are larger than 50 MB in size cannot be displayed in the SAP system.

  • Choose Download to Local File to download the selected file into a directory of your choice.

More Information

Properties


Database Name - SAP Documentation

Object documentation Database Name

One property of a database is the physical name of the database or SAP liveCache.

The database name is the name of the database on the database/liveCache computer. The liveCache name can differ from the name of the database connection.

Note that you cannot use the special character '_' in database/liveCache names.

To change details about the database/liveCache name, choose Displaying/Changing Integration Data or liveCache Integration.

More Information

Database Server and Versions

DBA Cockpit: SAP MaxDB, Properties

Database/liveCache Assistant, Properties


Database Server and Versions - SAP Documentation

Object documentation Database Server and Versions

Name | Explanation
Database Server/liveCache Server | Name of database/liveCache computer
Database version/liveCache version | Version of database/liveCache kernel in accordance with the version notation
DBM Server Version | Version of the software of the DBM Server

The name of the database/liveCache computer is case-sensitive.

If you are using a Microsoft Windows operating system, you can determine the correct computer name by entering the command hostname in a DOS window.

You can also use the computer's IP address.

To change details about the database/liveCache computer name, choose Displaying/Changing Integration Data or liveCache Integration.

More Information

DBA Cockpit: SAP MaxDB, Properties

Database/liveCache Assistant, Properties


Operational State - SAP Documentation

Object documentation Operational State

One property of a database or an SAP liveCache is its current operational state.

Operational States
Operational State | Description
ONLINE | The database is ready. Database users with the corresponding authorizations can log on and execute SQL statements. The Database System Administrator and the DBM operator can perform administrative tasks.
STANDBY | For standby databases in hot standby systems only. You cannot connect to a standby database. It is constantly in a restart state.
ADMIN | The database is only available for administration tasks.
OFFLINE | The database is not running.

More Information

DBA Cockpit: SAP MaxDB, Properties

Database/liveCache Assistant, Properties

Database/liveCache Alert Monitor, State


Standard Database User - SAP Documentation

Object documentation Standard Database User

The standard database user is used for SQL queries (Native SQL) to the database.

The authorization information for this database user is stored in the table DBCON.

If you want to change this information, proceed as described in User Data.

Note Note

To change the Standard liveCache User, you can use the liveCache-specific user menu User Data.

End of the note.

More Information

DBA Cockpit: SAP MaxDB, Properties


Planning Concept - SAP Documentation

Process documentation Planning Concept

To ensure the secure operation of your database system, you have to create a scheduling concept for the following activities:

  • Data Backups

  • Log Backups

  • Statistics Updates for the SQL Optimizer

  • Checking Database Structures

  • Storing and Checking Backups

  • Updating Table Statistics

You can schedule, start, and monitor these activities with the DBA Planning Calendar.

You can use backup tools from other providers to increase the speed of the backup.

Prerequisites

Setting Up and Using the DBA Planning Calendar

Database Administration, Periodic Administration Tasks, Using Third-Party Backup Tools

Process

Data Backups

Note that in the case of a recovery, the more up-to-date the last backup is, the fewer log entries have to be reloaded. Therefore, perform data backups as often as possible.

  • Perform at least one complete data backup every week (at the weekend, if possible). (Action Complete Data Backup).

  • On each day that the database is productive, start an incremental data backup (Aktion Incremental Data Backup).

    Note Note

    If a complete data backup is active, you cannot start an incremental data backup.

    End of the note.

You can perform data backups in parallel to increase the speed of each backup.

Follow the procedure described in Scheduling a Data Backup.

More information: Database Administration, Backing Up Data

Log Backups

In production systems, make sure that your log settings include hardware-based mirroring of the log area, that the log area can be overwritten only once it has been backed up, and that redo log management is always activated. Perform log backups regularly.

  • Automatic Log Backup

    The automatic log backup (autosave log mechanism) must always be activated (Action Activating the Automatic Log Backup). Check regularly that automatic log backups are activated.

    Complete and incremental data backups are also possible while the automatic log backup is activated.

    Proceed as described in Activating Automatic Log Backups.

  • Interactive Log Backup

    If automatic log backup is not active, you must regularly check that there is enough storage space available in the log area. If no new log entries can be written due to lack of storage space in the log area, the database system shuts down. If required, back up the log area immediately by starting an interactive log back up (Acttion Interactive Log Backup.

    Proceed as described in Scheduling Interactive Log Backups.

  • Archiving the Backup Files

    Regularly archive the backup files that are written during a log backup on a data carrier of your choice. After these files have been archived successfully, you can delete the backup files that were written during the log backup. This ensures that there is always enough space in the directory for the backup files.

    If you use a backup tool from another provider, you can automate the process for archiving backup files (Action Archiving Log Backup Files).

    Follow the procedure described in Archiving Backup Files.

More information: Database Administration, Backing Up Log Entries, Archiving Backup Files

Updating the SQL Optimizer Statistics

After an installation, an upgrade, or a database migration, execute the action Update all Optimizer statistics once.

Subsequently, you need to update the statistics only once a week (if possible at the weekend). To do this, use the actions Select Tables for Update Statistics and Update Statistics for Selected Tables.

Follow the procedure described in Scheduling Updates of the SQL Optimizer Statistics.

More information: SQL Optimizer in CCMS

Database Structure Checks

In general, you should perform the database structure checks at the latest before the data carriers of a backup cycle are overwritten. The following recommendations are based on a backup cycle of four weeks.

Every four weeks (if possible, on a weekend), check the database structures for all database objects (tables and indexes). To do this, use the action Check Database Structure. This structure check may take some time, depending on the size of your dataset.

Alternatively, or additionally, you can check the database structures for all tables. To do this, use the action Check Database Structure (tables only). Indexes contain redundant information and can be restored after errors. Therefore, you do not need to check their structures as regularly.

Follow the procedure described in Scheduling a Database Structure Check. You can check structures for a single table by means of the user menu Tables/Views/Synonyms (DBA Cockpit/Database Assistant)

More information: Database Administration, Checking Database Structures

Storing and Checking Backups

Tapes containing backups should not be directly overwritten with the next backup. If you retain, say, the last four backup generations, it may be possible to use an older backup if a data carrier fails.

Check the backups on the data carriers from time to time. In this way, you can find out in time if a backup is no longer readable. Use one of the following actions: Check Complete Data Backup, Check Incremental Data Backup, or Check Log Backup.

Follow the procedure described in Scheduling an Action.

More information: Database Studio, Checking Backups

Updating Table Statistics

You should schedule the action Update Table Statistics to update the statistics on a weekly basis.

Follow the procedure described in Scheduling an Action.

You can execute a one-off update of the table statistics using the Table Sizes user menu (DBA Cockpit/Database Assistant) . In the Table Sizes user menu, you can analyze the statistical data received.

More Information

Automating Database Administration Activities


System Tables of the SYSINFO Schema - SAP Documentation

Procedure documentation System Tables of the SYSINFO Schema

Display the system tables of the SYSINFO schema.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). If no start application is displayed, or if you exit a user menu of the Database Assistant with Back, Exit, or Cancel, you can choose [image] Utilities [image] SYSINFO Views [image] in the menu.

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] SYSINFO Views [image] .

Result

You get a list of the SYSINFO system tables and their descriptions (more information: SQL Reference Manual, Definitions of the System Tables, Evaluating System Tables (Examples)).

When system tables have been updated, you can view the system table update log.

More Information

DBA Cockpit: SAP MaxDB, SYSINFO Views


Scheduling an Interactive Log Backup - SAP Documentation

Procedure documentation Scheduling an Interactive Log Backup

Schedule regular log backups by activating automatic log backups.

If you do not activate automatic log backups, check that there is enough memory in the log area (Monitoring the Log Area) at regular intervals, and backup the log entries immediately, if necessary. You can schedule and execute an interactive log backup in the DBA Planning Calendar.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Define appropriate backup templates. Specify a file as the data carrier.

Procedure

  1. Follow the scheduling concept.

  2. Open the DBA Planning Calendar.

  3. To schedule interactive log backups, proceed as described in Scheduling an Action. Use the following action: Log Backup

Note Note

Before a scheduled backup action is due to start, make sure that the data-carriers have been inserted and are ready to run.

End of the note.

When you make a log backup, you copy the contents of the log area (log entries) into backup files or back them up at the desired time using a backup tool from another provider. If you need to back up the log area immediately, proceed as described in Starting an Action Immediately.

Result

The required backup is scheduled. Check the schedules of the interactive log backups. The interactive log backup is started at the specified time, and the log segments are copied to the backup files.

Archive older backup files regularly to another data carrier. If you are using a backup tool from another provider, you can automate this procedure. Follow the procedure described in Archiving Backup Files.

Check the results of the log backups in the DBA Planning Calendar, as described in Displaying Actions. Use the information displayed in the DBA History. Also use the Log Area display in the Database Alert Monitor or liveCache Alert Monitor.

More Information

Scheduling Log Backups

Database Administration, Backing Up Log Entries, Archiving Backup Files

Database Administration in CCMS: SAP liveCache Technology, Backing Up liveCache: Background Processing


Action Patterns - SAP Documentation

Procedure documentation Action Patterns

To make it easier to schedule actions such as data backups, updating Optimizer statistics and checking database structures, the DBA Planning Calendar offers you predefined action patterns.

Once you choose a particular action pattern, the activities are entered into the DBA Planning Calendar on the corresponding dates. The background jobs that perform these activities are also automatically scheduled, including the appropriate repeat intervals.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Procedure

  1. Open the DBA Planning Calendar.

  2. Choose Select Pattern

  3. The dialog box Add Action Pattern appears with a list of the default action patterns. Each of the available action patterns contains specific actions corresponding to important areas of the planning concept. Examples of Action Patterns:

    MON-FRI: DataBackup, SUN: UpdAllStats

    MON-FRI: DataBackup, SAT: CheckTables, SUN: UpdAllStats

    MON-THU: IncrBackup, FRI: DataBackup, SAT: CheckTables, SUN: UpdAllStats

    Select the required action pattern.

  4. Choose Continue.

    If necessary, you can change the repeat pattern for each action in the action pattern. Set the action parameters, where necessary.

    You can navigate between actions in the action plan with Forward or Back.

  5. Once you have made your selection for all actions in the action plan, confirm your entries with Save.

Result

The activities of an action pattern are entered automatically in the DBA Planning Calendar. The SAP system schedules background jobs for these activities. All background jobs are scheduled to be repeated for the specified period.

After accepting an action pattern, the system checks the individual scheduled activities for conflicts with other scheduled activities. If no conflicts are found, the schedule is displayed.

If there are conflicts between the action pattern you have chosen and activities that are already scheduled in the DBA Planning Calendar, the system displays a list of the conflicts. No plans are activated if there are conflicts. Review and eliminate the conflicts before trying to choose the action pattern again. You can eliminate the conflicts by either changing the action pattern's execution time or the scheduled time of any conflicting existing plans.

Check the planning and the results of the actions in the DBA Planning Calendar.

More Information

Scheduling an Action

Displaying Actions

Automating Database Administration Activities


SQLDBC Trace - SAP Documentation

Procedure documentation SQLDBC Trace

SQL Database Connectivity (SQLDBC) is a runtime environment for the development of database applications and database interfaces for MaxDB. Using SQLDBC, applications can access MaxDB database instances, execute SQL statements and edit data. It consists of the runtime library libSQLDBC, the software development kit SQLDBC SDK and the tool sqldbc_cons.

SQLDBC offers, among other things, a comprehensive range of trace options which can be called up using the Database or liveCache Assistant. The Tools menu contains, among other things, the SQLDBC trace tool.

Caution Caution

Traces compromise performance. Use traces only for troubleshooting and problem analysis.

End of the caution.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Tools [image] SQLDBC Trace [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] SQLDBC Trace [image] .

Result

Activating/Deactivating the Trace

To activate the trace, proceed as follows:

  1. Select the required process.

  2. Choose one of the following options:

    Trace

    Content

    SQL (Switch on SQL trace)

    SQL Statements

    (simplest trace, adequate for most analyses)

    Short (Switch on short trace)

    Method calls

    Long (Switch on long trace)

    Method calls with call parameters

    (most comprehensive trace)

    Packet (Switch on packet trace)

    Communication packages

  3. Enter the size of the trace file.

The trace files contain a file name with convention sqldbctrace-<pid>.prt, where <pid> is the process ID. The trace files are overwritten cyclically.

To deactivate the trace, select the process for writing to the trace and then select Switch Off.

Additional Functions

  • You can choose the name of the trace file. To do this, choose [image] Goto [image] Trace Directory [image] .

  • You can choose the size of the trace file. To do this, choose [image] Goto [image] Maximum File Size [image] .

Analyzing and Displaying the Trace

Select the required trace file to analyze the trace. Choose Display File.

More Information

DBA Cockpit: SAP MaxDB, SQLDBC Trace

SQLDBC Manual, Using SQLDBC Trace


User Tasks - SAP Documentation

Procedure documentation User Tasks

In the Performance display of the Database Alert Monitor and liveCache Alert Monitor, you can find, among other things, information about free database sessions for user tasks.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Choose [image] Performance [image] User Tasks [image] .

Result

Display | Default for Alerts
Connect wait | Yellow alert: If the number of available database sessions falls below 5 Red alert: If the number of available database sessions falls below 3

More Information

Concepts of the Database System, Tasks


Creating a Connection - SAP Documentation

Procedure documentation Creating a Connection

Among other things, you can use the transaction Displaying/Changing Integration Data to create a new database connection.

Procedure

Note Note

To create a dataabase connection when using SAP liveCache technology, the liveCache-specific user menu Create Connection is available.

End of the note.

  1. In the Database Assistant, choose [image] Edit [image] Display/Change Integration Data [image] (transaction DB11).

  2. Enter the name of the database connection.

  3. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  4. Enter the database connection information (database name, database server).

  5. Enter the required user data.

  6. If necessary, you can control areas of automatic monitoring.

  7. Choose [image] Connection [image] Save [image] .

Result

The system displays a message if the database connection was successfully created. The connection information is stored in the tables DBCON and DBCONUSR.

More Information

Integrating a Database System


Scheduling a Data Backup - SAP Documentation

Procedure documentation Scheduling a Data Backup

You can schedule regular data backups in the DBA Planning Calendar.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Define appropriate backup templates.

Procedure

  1. Follow the scheduling concept.

  2. Open the DBA Planning Calendar.

  3. You can use an action pattern for the data backups.

  4. To schedule the data backups, proceed as described in Scheduling an Action. Use one of the following actions:

    • Complete data backup: In a data backup, you back up the content of the data area and the database parameters necessary for a restore onto a data carrier.

    • Incremental data backup: In an incremental data backup, all pages of the data volumes are backed up that have changed since the last complete data backup.

Note Note

Before a scheduled backup action is due to start, make sure that the data-carriers have been inserted and are ready to run.

End of the note.

Result

The required backups are scheduled. Check the scheduled actions. The backups are updated at the specified time.

Check the results of the data backups in the DBA Planning Calendar, as described Displaying Actions. Use the information displayed in the DBA History. Also use the Backup/Restore display in the Database/liveCache Alert Monitor.

More Information

Database Administration, Backing Up Data

Database Administration in CCMS: SAP liveCache Technology, Backing Up liveCache: Background Processing


SAP Consistency - SAP Documentation

Procedure documentation SAP Consistency

The Database Alert Monitor display contains, among other things, results of the consistency checks between the ABAP Dictionary and the database system.

Prerequisites

Prerequisites

The database is the basis of the current SAP Web AS system.

Procedure

Open the Database Alert Monitor. In the alert monitor, choose SAP Consistency.

Result

The system displays the following:

  • SAP Consistency Check:

    Displays when the last consistency check was performed. If no inconsistencies were found, the system displays a green alert.

  • Objects Missing in the Database:

    Yellow and red alerts indicate that some ABAP Dictionary objects (secondary indexes, tables, and views, and primary indexes) could not be found in the database. If you double-click the relevant alert, you can perform additional analyses.

    If an object was intentionally deleted from the databases during development or if a database error occurred during creation, this missing object list can be significant for customer objects. Objects not being found in the database can lead to incomplete or incorrect transports and cancelled conversions. Create the missing objects in the database system.

  • Unknown Objects in ABAP Dictionary:

    Yellow and Red alerts indicate that database objects (tables, indexes, and views) have not been defined in the ABAP Dictionary. If you double-click the relevant alert, you can perform additional analyses.

    Since the objects do not belong to the SAP system, this list is mainly intended for information purposes. The objects are directly created by means of the database system. If the author is unknown, the purpose of the object can sometimes be determined using the display function. Since the data display in an SAP system is based on the ABAP Dictionary definitions, data can be displayed only by using the database system. Always create customer tables, views, and indices with the ABAP Dictionary. This is the only way of ensuring that the objects are recognized by the SAP system and that problems are avoided during the upgrade.

  • Inconsistent Objects:

    Yellow and red alerts indicate that the definitions of the objects (primary indexes, secondary indexes, tables, and views) in the ABAP Dictionary are not the same as those in the SAP MaxDB database catalog. Compare the object definition in the ABAP Dictionary with the definition in the catalog and correct the wrong definition.

  • Other Checks:

    Several checks are performed, including the check whether the primary indices of the tables defined in the ABAP Dictionary were created exclusively in the database instance, and whether there are objects in the SAP base tables that cannot be described or only incompletely described in the ABAP Dictionary.

  • Optional Indexes:

    Indexes defined in the ABAP Dictionary as optional database indexes have been found. Also displayed here are all the indexes that were defined in the ABAP Dictionary but that are flagged as not being allowed to be created in your database. Find out whether the indexes were intentionally created in this way.

More Information

Index Analysis


Scheduling Updates of the SQL Optimizer Statistics - SAP Documentation

Procedure documentation Scheduling Updates of the SQL Optimizer Statistics

You can schedule an update of the SQL Optimizer statistics in the DBA Planning Calendar. Up-to-date statistics are essential for the SQL Optimizer to run efficiently.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Procedure

  1. Follow the scheduling concept.

  2. Open the DBA Planning Calendar.

  3. You can use an action pattern to update the statistics.

  4. Proceed as described in Scheduling an Action to schedule the statistics update. Use the following actions:

    • Update All Optimizer statistics: All necessary statistics are updated.

      To exclude a table from the updating of statistics, select the value 0 for the sample size for this table.

    • Select tables for update statistics: All tables whose statistics need to be updated are determined.

    • Update statistics for selected tables: All statistics for the selected tables are updated.

You should execute the action Update all Optimizer statistics after an installation or an upgrade. Thereafter, you should execute both the Select Tables for Update Statistics and the Update Statistics for Selected Tables actions once a week.

Result

The statistics update is scheduled. The statistics are updated at the specified time.

Check the scheduling and the results of the UPDATE STATISTICS runs in the DBA Planning Calendar, as described in Displaying Actions. Use the information displayed in the DBA History. Also use the Optimizer Statistics display in the database/liveCache Alert Monitor.

More Information

SQL Optimizer in CCMS

Database Administration, SQL Optimizer Statistics


Activating Automatic Log Backup - SAP Documentation

Procedure documentation Activating Automatic Log Backup

You should activate automatic log backups (autosave log mechanism) to regularly back up the log entries. Use the DBA Planning Calendar to do this.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Define appropriate backup templates. Specify a file as the data carrier.

Procedure

  1. Follow the scheduling concept.

  2. Open the DBA Planning Calendar.

  3. To activate automatic log backups, proceed as described in Scheduling an Action. Use the following actions:

    • Activate Automatic Log Backups: If automatic log backup is activated, the database system automatically backs up log entries from a segment of the log area to a backup file as soon as the segment is full. If automatic log backup is activated, the database system automatically backs up log entries from a segment of the log area to a backup file as soon as the segment is full.

    • Deactivate Automatic Log Backups: If you do not activate automatic log backups, check that there is enough memory in the log area (Monitoring the Log Area) at regular intervals, and backup the log entries immediately, if necessary (Scheduling Interactive Log Backup, Starting an Action Immediately).

Note Note

Make sure the data media are inserted and ready.

End of the note.

Result

Automatic log backup activation is scheduled. Check the schedules of the automatic log backups.

Note Note

Check regularly that automatic log backups are activated.

If no more space is available in the backup files, the autosave log mechanism stops. Check space availability regularly to ensure the backup files can always be written.

Archive older backup files regularly to another data carrier. If you are using a backup tool from another provider, you can automate this procedure. Follow the procedure described in Archiving Backup Files.

End of the note.

Caution Caution

If automatic log backups are activated, a log segment is backed up when it becomes full. Since you cannot predict when this will happen, make sure that there is always enough disk space for the log segments. Archive backup files regularly to other backup devices, so that you can delete them from the disk.

If no log segments are configured (log segment size = 0), the system defines one-third of the size of the entire log area as the log segment size.

End of the caution.

Check the results of the log backups in the DBA Planning Calendar, as described in Displaying Actions. Check the log backup results and the archiving of backup files in the DBA History display. Also use the Log Area display in the Database Alert Monitor or liveCache Alert Monitor.

More Information

  • Scheduling Log Backups

  • DBA Cockpit: SAP MaxDB, Properties

  • Database Administration in CCMS: SAP liveCache Technology, Backing Up liveCache: Background Processing

  • Database Administration,

    Backing Up Log Entries

    Archiving Backup Files


Changing a Connection - SAP Documentation

Procedure documentation Changing a Connection

Among other things, you can use the transaction Displaying/Changing Integration Data to change a database connection.

Procedure

Note Note

To change a dataabase connection when using SAP liveCache technology, the liveCache-specific user menu Change Connection is available.

End of the note.

  1. In the Database Assistant, choose [image] Edit [image] Display/Change Integration Data [image] (transaction DB11).

  2. Enter the name of the database connection.

  3. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  4. Check the information about the database connection (Database Name and Database Server) for completeness and accuracy.

  5. If necessary, you can make specifications for the user data or control areas of the automatic monitoring.

  6. Choose [image] Connection [image] Save [image] .

Result

The system displays a message if the database connection was changed successfully. The connection information is stored in the tables DBCON and DBCONUSR.

Note Note

After changing the database connection, you must stop and then restart all application servers that have access to the database instance. Otherwise, significant connection problems can occur.

End of the note.

Stop and restart all application servers that have access to the database instance.

More Information

Integrating a Database System


Scheduling Log Backups - SAP Documentation

Procedure documentation Scheduling Log Backups

Use the DBA Planning Calendar to perform log backups as specified in your planning concept.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Planning Concept

Procedure

To do this, proceed as described in the following sections:

  • Activating Automatic Log Backup

    Automatic log backups protect the log area from overflow.

  • Scheduling an Interactive Log Backup

    If automatic log backups are not activated, check there is enough storage space in the log area at regular intervals and schedule a log backup in good time.

  • Archiving Backup Files

    A log backup (automatic or interactive) usually backs up the log entries to backup files that you should archive at regular intervals. If you are using a backup tool from another provider, you can automate this procedure.

More Information

Database Administration, Backing Up Log Entries, Archiving Backup Files

Database Administration in CCMS: SAP liveCache Technology, Backing Up liveCache: Background Processing


Deleting a Connection - SAP Documentation

Procedure documentation Deleting a Connection

Among other things, you can use the transaction Displaying/Changing Integration Data to delete a database connection.

Procedure

Note Note

To delete a dataabase connection when using SAP liveCache technology, the liveCache-specific user menu Delete Connection is available.

End of the note.

  1. In the Database Assistant, choose [image] Edit [image] Display/Change Integration Data [image] (transaction DB11).

  2. Enter the name of the database connection.

  3. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  4. Check the information about the database connection (database name and database server) for accuracy.

  5. Choose [image] Connection [image] Delete [image] .

  6. Confirm this entry.

Result

The system displays a message if the database connection was successfully deleted. The connection information is deleted in the tables DBCON and DBCONUSR.

Access to the database instance is no longer possible from the SAP system.

More Information

Integrating a Database System


Scheduling a Database Structure Check - SAP Documentation

Procedure documentation Scheduling a Database Structure Check

Schedule database structure checks at regular intervals in the DBA Planning Calendar. Update the database structure checks, if necessary.

Use the display DB Filling/Tables and Indexes for the consistency checks between the ABAP Dictionary and the database system.

Prerequisites

DBA Planning Calendar

Setting Up and Using the DBA Planning Calendar

Procedure

  1. Follow the scheduling concept.

  2. Open the DBA Planning Calendar.

  3. You can use an action pattern to check the database structure.

  4. To schedule database structure checks, proceed as described in Scheduling an Action. Use the following actions:

    • Check database structure of the snapshot: The structure of the objects in the snapshot are checked.

    • Check database structure: Checks the structure of all tables and indexes.

    • Check database structure (tables only): Checks the structure of the tables.

Result

The database structures are checked at the specified time.

Check the scheduling and the results of the database structure check in the DBA Planning Calendar, as described in Displaying Actions. Use the information displayed in the DBA History. Also use the Database Structure Check display in the Database Alert Monitor or liveCache Alert Monitor.

More Information

Tables/Views/Synonyms

Snapshots

Database Administration, Checking Database Structures


AccessSQL: Accessing an SQL Session - SAP Documentation

Background documentation AccessSQL: Accessing an SQL Session

Operators, who have been assigned the AccessSQL server permission, can execute the following DBM commands:

DBM Command | Description
auto_recreate_bad_index | Recreating bad indexes automatically
auto_update_statistics | Updating the optimizer statistics automatically
db_connect | Opening a database session
db_execute | Executing an administration command or an SQL statement (displaying the complete result list)
db_executenice | Executing an administration command or an SQL statement (displaying the result record-by-record)
db_fetch | Scrolling through the results of an administration command or a database statement (displaying the list of results)
db_fetchnice | Scrolling through the results of an administration command or a database statement (displaying the list of results)
db_release | Ending a database session
sql_connect | Opening an SQL Session
sql_execute | Executing an SQL statement (displaying the complete result list)
sql_executenice | Executing an SQL statement (displaying the result record-by-record)
sql_fetch | Scrolling through the results of an SQL statement (displaying the complete result list)
sql_fetchnice | Scrolling through the results of an SQL statement (displaying the result record-by-record)
sql_info | Displaying the structure of a result set
sql_recreateindex | Restoring a damaged index
sql_release | Ending an SQL session
sql_updatestat | Updating the optimizer statistics
sql_updatestat_per_systemtable | Updating the optimizer statistics as per system table SYSUPDSTATWANTED


Heap Usage - SAP Documentation

Procedure documentation Heap Usage

In the Memory Areas user menu, you can find, among other things, a display of the OMS heap usage since the last start of the liveCache Monitoring.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

The SAP liveCache database is in the ONLINE operational state.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Current Status [image] Memory Areas [image] Heap Usage [image] .

or

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Space [image] Heap Usage [image] .

Result

The OMS heap configuration parameters are displayed, such as: OmsMaxHeapSize, OmsHeapThreshold, OmsSubHeaps.

The current values of the following memory areas are displayed: Data Cache, Converter, maximum heap usage, and system heap

The system displays information on OMS heap usage.

Heap area | Name of the OMS heap
Size | Size of the memory controlled by the OMS heap
Currently occupied | Size of the memory actually occupied by the OMS heap
Memory requests | Number of memory requests in the OMS heap
Memory releases | Number of memory releases in the OMS heap
Requests through block allocator | Number of OMS heap memory requests through the corresponding block allocator
Releases through block allocator | Number of OMS heap memory releases through the corresponding block allocator
Spinlocks | Number of synchronizations through spinlocks
Conflicts | Number of collisions that occurred during synchronizations through spinlocks
Spinloops, Yieldloops, MAX Spinloops, MAX Yieldloops | An interpretation of these details requires knowledge of spinlock implementation.

More Information

  • Monitoring the Main Memory Areas

  • liveCache Alert Monitor, Memory

  • DBA Cockpit: SAP MaxDB, Heap Usage

  • Database Administration, General Database Parameters, Special Database Parameters

  • Glossary, OMS Heap


History - SAP Documentation

Procedure documentation History

In the Operating user menu, you can find, among other things, a display of the history of the SAP liveCache operating tasks (lcinit.his).

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Logs [image] Operating [image] History [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] Operating [image] History [image] .

Result

The history lcinit.his is displayed. In this history, you can find information about starting, stopping, and initializing the SAP liveCache database.

  • You can use the navigation help (Start of File, End of File) for orientation within the log.

  • Choose Import File to update the output.

More Information

DBA Cockpit: SAP MaxDB, History

Database Administration, Log Files


Class Containers - SAP Documentation

Procedure documentation Class Containers

The SAP liveCache data is organized in classes. Each class can consist of different containers. The OMS objects in a class can be distributed across multiple containers. Each container can consist of multiple page chains. Each OMS object has a unique object ID (OID) with which, for example, an application can request the object.

In the Performance user menu, you can find, among other things, a display of information about class containers since the last start of the liveCache Monitoring.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Performance [image] Class Container [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] Class Container [image] .

You can select the displays as follows:

  • Selection of class containers (restriction by entering class name, schema name and/or container number. You do not need to enter the complete name or number. You can enter ranges, such as S* or similar)

  • All class containers (do not specify restriction)

Result

The system displays information about class containers. Every class container contains OMS objects for exactly one persistent class. The system displays information from the OMS intermediate layer and the SAP liveCache basis layer.

OMS Intermediate Layer

The OMS (Object Management System) intermediate layer manages the data (that is, the OMS objects) that are held in the application-specific OMS heap. The application always accesses its OMS data through the OMS intermediate layer and not directly with the SAP liveCache basis layer. If the data is not in the OMS intermediate layer, it is implicitly loaded from the data cache into the OMS intermediate layer. The system displays, among other things, the following analysis data which provides information about the OMS intermediate layer:

Class ID, Class Name, Schema, Container Number

SAP liveCache Basis Layer

The OMS objects are managed in the SAP liveCache basis layer. The data itself is located in the data cache and in the data area. The application cannot access this data directly; it can access the data only if it is in the OMS intermediate layer. The system displays, among other things, the following analysis data which provides information about the SAP liveCache basis layer:

Object Size, Container Size, Free Container Pages, Empty Container Pages, Key Pages, Container Usage, Number of Objects, Wastage, Key Inversions, File ID

You will find more detailed information on the OMS objects in the OMS Object Browser.

Calculation Formulas

  • Number of objects: <Container Size>*8100*(<Ø Container Usage>/100)/(<Object Size>+24)

  • Net size of the liveCache (in KB): SELECT SUM (<Container Size>*<Ø Container Usage>/100)*8

More Information

liveCache Assistant, Class Container Sizes

DBA Cockpit: SAP MaxDB, Class Containers, Class Container Sizes


Function Module for Starting/Stopping/Initializing - SAP Documentation

Procedure documentation Function Module for Starting/Stopping/Initializing

To enable you to start/stop/initialize an SAP liveCache database from outside the SAP system as well as within it, corresponding function modules have been implemented. This also means that an SAP liveCache database can be started/stopped/initialized by calling the corresponding function module from scripts.

The function modules concerned are those listed below, from function group SLCR:

Function Modules
Function Module Name | Corresponding Function in the SAP System
START_LIVECACHE_LVC | Report RSLVCSTART, Start liveCache
STOP_LIVECACHE_LVC | Report RSLVCSTOP, Stop liveCache
INITIALIZE_LIVECACHE_LVC | Report RSLVCINIT, Initialize liveCache

Prerequisites

The RFCruntime and RFC SDK libraries are installed on your local host (as part of the complete SAP GUI installation). This means that you have the program STARTRFC, required to call the function modules.

Procedure

Calling the function modules on Microsoft Windows operating system is explained using the following example:

Example Example

Name of the Database Connection: LCX or LCY

SAP System: S10 (10)

Host: p123456

Database User: S10

Password: geheim

End of the example.
Stopping the SAP liveCache Database LCX

C:\Program Files\SAPpc\sapgui\rfcsdk\bin> startrfc -3 -d S10 -h p123456 -s 10 -c 000 -u S10 -p secret -l DE -F STOP_LIVECACHE_LVC -E IV_CON_NAME=LCX

Starting the SAP liveCache Database LCY

LCY does not exist in table DBCON

C:\Program Files\SAPpc\sapgui\rfcsdk\bin> startrfc -3 -d S10 -h p123456 -s 10 -c 000 -u S10 -p secret -l DE -F START_LIVECACHE_LVC -E IV_CON_NAME=LCY

You receive the error message Logical connection name LCY does not exist in table dbcon.

Note Note

For a complete description of all STARTRFCoptions, see the following SAP documentation: Inbound: Triggering the SAP System.

End of the note.

Note Note

The function modules START_LIVECACHE_LVC and STOP_LIVECACHE_LVC are not available for an SAP liveCache OneDB.

End of the note.


Integration - SAP Documentation

Procedure documentation Integration

In the liveCache Assistant you can, among other things, create or change connection and user data, specify administration reports, and control monitoring functions.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection.

  3. Choose [image] liveCache [image] Integration [image] .

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

Result

SAP liveCache Connection Information

The required SAP liveCache connection is usually created during the installation. You can, however, also create new SAP liveCache connections later or change or delete an existing connection.

  • Creating a Connection

  • Changing a Connection

  • Deleting a Connection

User Data

The user data for the standard liveCache user is stored in table DBCON and for the DBM operator in table DBCONUSR.

Follow the procedure described in User Data.

Administration Reports

You can enter application-specific administration reports.

Automatic Monitoring

You can set or configure the following automatic monitoring activities:

  • Deactivate liveCache Alert Monitor

  • Report critical alerts when starting the liveCache Assistant

  • Activate the Database Analyzer when starting SAP liveCache

  • Deleting the DBA Action Logs automatically

Follow the procedure described in Automatic Monitoring.

You can deactivate all automatic monitoring procedures. To do so, choose [image] Goto [image] Deactivate Automatic Monitoring [image] .

More Information

Integrating a Database System


Monitoring the Main Memory Areas - SAP Documentation

Procedure documentation Monitoring the Main Memory Areas

An SAP liveCache database works at an optimized level if the SAP liveCache data is accessed in the main memory only. Avoid accessing the data in the data area. For this reason, when you analyze SAP liveCache performance, first analyze the main memory areas data cache and OMS heap.

Prerequisites

When an SAP liveCache database is started, the data cache and converter are dimensioned in accordance with the CacheMemorySize database parameter, whereas the size of the OMS heap is undefined. The OMS heap can grow dynamically until it reaches the maximum size specified in the SAP liveCache parameter OmsMaxHeapSize.

Procedure

Monitoring the Data Cache

The memory area of the data cache should take up about 40 % of the main memory available to a SAP liveCache database. You may need to adjust its size to the requirements of the application. Among other things, the following data is stored in the data cache:

  • OMS data

    More information about OMD data: Glossary, OMS, and OMS Version.

  • Links to Undo Log entries

    More information about undo log entries: Concepts of the Database System, History Management.

  • SQL data

    Just as in an OLTP database system, the SQL data is organized in database tables and, if required, indexes. The data is managed in SQL data pages in the form of B* trees. These B* trees can contain the following data: the keys of the objects, the database tables and their indexes, and the OMS versions for which swapping was performed. Usually, only about 2-3% of the total data cache is used for SQL data.

The data cache must be dimensioned so that it can hold all OMS data, Undo Log information and SQL data in the data cache. Otherwise, the data is written to the data area, which negatively affects the performance of the SAP liveCache database. This should hardly ever occur.

  • The data cache hit rate should be at least 99,8 %.

  • The data cache load should be significantly less than 100 %.

  • The amount of OMS data in the data cache should be significantly higher than the amount of links to Undo Log entries (a ratio of 4:1 is normal).

To monitor the data cache, you can use the Caches user menu (DBA Cockpit/liveCache Assistant) or the displays Caches and Memory in the liveCache Alert Monitor.

Critical Situations

  • The data cache hit rate is below 99.8%, the data cache load is 100%.

    To display the failed accesses to the data cache, refresh the Caches display. Check whether there are any long-running OMS versions (Monitoring OMS Versions). If the measures described in Monitoring OMS Versions do not improve the critical situation, increase the dimensions of the data cache (Caches (DBA Cockpit/liveCache Assistant)).

  • The amount of OMS data and Undo Log entries is about the same or there are more Undo Log entries than OMS data.

    Check the OMS versions that generated the Undo Log entries. Follow the procedure described in Monitoring OMS Versions.

Monitoring the OMS Heap

To monitor the OMS heap, use the Heap Consumption display (DBA Cockpit/liveCache Assistant) or the Memory display in the liveCache Alert Monitor.

Critical Situations

  • The fill level of the OMS heap is greater than 80 %.

    Perform other analyses as described in Monitoring OMS Versions.

  • The fill level of the OMS heap is greater than 90%.

    DB procedures usually terminate if the OMS heap has almost reached its maximum value.

    • You can reduce the size of the data cache (general database parameter CacheMemorySize) and increase the OMS heap (general database parameter OmsMaxHeapSize) instead.

    • You can make more main memory available to increase the size of the OMS heap (general database parameter OmsMaxHeapSize).

More Information

Performance Analysis in CCMS: SAP liveCache Technology

Database Administration, General Database Parameters, Special Database Parameters


Class Container Sizes - SAP Documentation

Procedure documentation Class Container Sizes

In the Statistics user menu of the liveCache Assistant, you can find, among other things, displays for the sizes of class containers.

The current table sizes are determined by a report and saved in a database table which forms the history of table sizes and table growth. You can view this data in the Class Container Sizes user menu.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

Procedure

Determining Statistical Data

If necessary, you will have to determine the size of the class container. You have the following options to do this:

  • Schedule the action update class container statistics weekly in the DBA planning calendar. To schedule the action Update Class Container Statistics, proceed as described in Scheduling an Action.

  • You can update the class container sizes as a one-off. To do this, in the user menu of the liveCache Assistant, choose [image] Statistics [image] Class Container Sizes [image] (in the user menu of the DBA Cockpit:   Space [image] Class Container Sizes [image] ) and choose the function Update Class Container Statistics, to start a background job that updates the sizes.

The class container sizes are determined. The measurement data is logged in the table SDBCCMS.

Displaying Class Container Sizes

Once the sizes have been determined, you can display them as follows:

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection.

    You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Statistics [image] Class Container Sizes [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Class Container Sizes [image] .

You can choose the following displays, and can also display the information graphically:

  • Class Containers with Greatest Growth: You can set the comparison time period, comparison interval, and the number of class containers displayed.

  • Largest Class Containers: You can set the date and the number of class containers displayed.

The following functions are available:

  • Toggle Aggregated/Unaggregated View

  • History of a Class: Select the desired class.

  • Delete Statistics Data: You can delete statistics data manually by specifying a time period/date or automatically by specifying a time period (in weeks).

  • Update Class Container Statistics: Note that the class container information is saved only once a day. Any older daily statistics are overwritten.

More Information

liveCache Assistant, Class Containers

DBA Cockpit: SAP MaxDB, Class Container Sizes, Class Containers


db_migratecatalog - SAP Documentation

Background documentation db_migratecatalog

Use this command to migrate the database catalog.

Afterwards the database catalog uses the Unicode character set instead of the ASCII character set. This command does not affect the format of the user data in the database.

User passwords may have no more than 18 characters in ASCII databases and no more than 9 characters in Unicode databases. After the migration, all users can still use their existing passwords to log on, but only the first 9 characters are evaluated.

The duration of the migration depends on different factors, like hardware, database size, and so on. You can use the following information as an indication:

Duration of a catalog migration for the database of an R/3 system containing approx. 7,000 tables, on an Intel® Pentium® 3 computer with a 700 MHz processor: approx. 10 min.

Duration of a catalog migration for the database of an R/3 system containing approx. 33,000 tables and approx. 5,700 views, on an HP computer (no additional information given): approx. 40 min.

Recommendation Recommendation

To take precautions against an error during the migration process, carry out a complete data backup in the ADMIN operational state before migrating the database catalog.

Carry out another complete data backup after successful migration. This is the only way to ensure that you can restore the database with the migrated catalog data in case of a database error later on. It is also a prerequisite for switching on the automatic log backup function.

End of the recommendation.

Prerequisites

  • The database is in the OFFLINE operational state.

  • You have the server permission AccessUtility.

Structure

db_migratecatalog

Result

The catalog data of the database has been converted into the Unicode format. The database is in the ONLINE operational state.

More Information

Glossary, Unicode, Migration


liveCache Assistant - SAP Documentation

Function documentation liveCache Assistant

There are a number of tools available in the liveCache Assistant for the monitoring and administration of an SAP liveCache database. You can use the liveCache Assistant to monitor multiple SAP liveCache databases on one or more hosts.

Integration

In the user menu, choose liveCache Assistant (transaction LC10).

or

Many DBA functions are integral parts of the DBA Cockpit and can therefore be called via the DBA Cockpit.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Features

Enter the name of the database connection. You can predefine the name of a database connection with a default value. This name appears when you start the liveCache Assistant for the first time. If you call the liveCache Assistant again in a database session, the name of the last used database connection is always displayed.

You can choose between the following functions:

  • Integration

  • liveCache: Monitoring

  • Console

  • liveCache: Alert Monitor

Activities

Start Application for liveCache: Monitoring

You can make the following user-specific setting: Set Start Application for liveCache: Monitoring.

Lock Collisions

If lock collisions occur in the liveCache Assistant, the user causing the lock is displayed.

More Information

Database Administration in CCMS: SAP liveCache Technology

DBA Cockpit: SAP MaxDB

Database Administration, Troubleshooting, Monitoring Databases


liveCache Alert Monitor - SAP Documentation

Function documentation liveCache Alert Monitor

You can use the liveCache Alert Monitor to identify memory problems in good time, to check the security of your SAP liveCache database, and to monitor performance.

If data collection methods are periodically scheduled, alerts are automatically updated and forwarded to the monitoring tree. Analysis methods deliver additional information about the alert statuses, and auto-reaction methods can be configured for automatic reactions to new alerts.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Features

You can use the following start options:

  • Alert Monitor

    In the liveCache Assistant, choose [image] liveCache [image] Alert Monitor [image] MaxDB Monitoring [image] liveCache [image] <name of the database connection> [image] .

    or

    Or enter the name of the database connection in the liveCache Assistant. You can select the name from the list of existing names. You can restrict the search for the required name. Choose [image] liveCache [image] Monitoring [image] Alert Monitor [image] MaxDB Monitoring [image] liveCache [image] <name of the database connection> [image] .

    The Alert Monitoring is activated and the SAP liveCache connection has been added to the liveCache alert monitor (liveCache: Alert Monitor).

  • CCMS Monitoring

    If alert monitoring has not yet been activated (for example, by accessing the liveCache Alert Monitor in the liveCache Assistant) you should activate the Alert Monitor and add the SAP liveCache connection to the liveCache Alert Monitor (more information below: Administering liveCache Connections in the liveCache Alert Monitor) In CCMS Monitoring, choose [image] SAP CCMS Monitor Templates for Optional Components [image] MaxDB Monitoring [image] liveCache [image] <database connection name> [image] .

  • DBA Cockpit

    In the DBA Cockpit (transaction DBACOCKPIT), choose [image] Alerts [image] Alert Monitor (old/new version) [image] .

Activities

If necessary, update the display for the liveCache Alert Monitor tree. To do this, choose Refresh and Invalidate Data Cache in the liveCache Alert Monitor.

Expand your chosen liveCache Alert Monitor.

Node

Every monitored element of the SAP liveCache is displayed as part of a hierarchical tree (monitoring tree) and described as a monitoring tree element (MTE), or node. Online help (short and long texts) gives you the most important information about each node.

You can choose from the following displays for each SAP liveCache node in the monitoring tree:

  • Properties

  • Space Management

  • Performance

  • Backup/Recovery

  • Health

  • External Analysis Tools

  • Connectivity

  • liveCache Applications

Colors of the Alerts

  • Green displays mean that the SAP liveCache state is OK. The administrator does not need to intervene.

  • Yellow or red displays mean that this state is putting production operation of the SAP liveCache database at risk. The administrator must take measures to find and eliminate the cause of the alert.

Data Collector

Data collectors usually collect data for more than one node. You can see an overview of the data collectors in the appropriate internal subtree. For information on the frequency of the data collections, see the long text for each node.

Analysis Methods

You can start the analysis methods of a node through the node itself (for example, by double-clicking it).

Managing SAP liveCache Connections in the liveCache Alert Monitor

Calling up the liveCache Alert Monitor using the liveCache Assistant user menu usually activates alert monitoring and the SAP liveCache connection is added to the liveCache Alert Monitor tree.

It may be necessary to update the liveCache Alert Monitor tree display. To do this, choose Refresh and Invalidate Data Cache in the liveCache Alert Monitor.

In some special cases you may have to administer the SAP liveCache connection in the liveCache Alert Monitor manually. In these cases you can use the report RSLVCALMON.

Adding an SAP liveCache Connection to the liveCache Alert Monitor

Run the report RSLVCALMON.

  1. Start the ABAP Editor (transaction SE38).

  2. Enter RSLVCALMON.

  3. Enter the name of the database connection.

As an alternative to starting the report, you can also start the central instance.

The liveCache Alert Monitor is started and the SAP liveCache connection is added. It may be necessary to update the liveCache Alert Monitor tree display. To do this, choose Refresh and Invalidate Data Cache in the liveCache Alert Monitor.

Deleting an SAP Database Connection from the liveCache Alert Monitor

Run the report RSLVCALMDEL.

  1. Start the ABAP Editor (transaction SE38).

  2. Enter RSLVCALMDEL.

  3. Enter the name of the database connection.

More Information

  • General information about the Alert Monitor

  • DBA Cockpit: SAP MaxDB, Alerts

  • Performance Analysis in CCMS

    Database Administration, Monitoring Databases

  • Troubleshooting

    Database Administration, Troubleshooting


Authorization Concept - SAP Documentation

Function documentation Authorization Concept

There is a multilevel authorization concept for the administration of an SAP liveCache database. Authorizations are granted to an SAP user by assigning the user a role determined by the actions that this user should perform.

Features

Roles

The following roles are preconfigured in the database software supplied:

  • SAP_BC_LVC_USER

  • SAP_BC_LVC_OPERATOR

  • SAP_BC_LVC_ADMINISTRATOR

  • SAP_BC_LVC_SUPERUSER

The system administrator can assign a corresponding role to the SAP users that are to monitor and administer the SAP liveCache database, or create new users with these roles. However, this is only possible when a profile has been assigned to a role.

User Menu

Each of the roles provides a user menu that contains the DBA functions that are to be regularly used by the relevant SAP user to perform the DBA actions. Many DBA functions are integral parts of the DBA Cockpit and can therefore be called via the DBA Cockpit.

DBA Function | Tool / DBA Action
DBA Planning Calendar | You can use the DBA Planning Calendar to schedule and start data and log backups, and monitoring and analysis tasks.
MaxDB/liveCache System Overview | In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.
liveCache Assistant | You can monitor your SAP liveCache database instance with the liveCache Assistant.
CCMS Monitoring | Among many other displays, the CCMS Monitoring also includes the liveCache Alert Monitor, which displays critical information about memory, security and performance as alerts.
Assigning a Profile to a Role

Proceed as follows to assign a profile to a role:

  1. Call Role Maintenance (transaction PFCG).

  2. Enter the name of the role and display it.

  3. Choose Authorizations.

  4. Switch to change mode.

  5. Choose Change Authorization Data.

  6. Choose Generate and confirm the profile name.

For more information, see Application Help for role maintenance in Users and Roles.

The system administrator can now assign a corresponding role to the SAP users that are to monitor and administer the SAP liveCache database, or create new users with these roles.

More Information

Prerequisites

Database Administration in CCMS: SAP liveCache Technology


Class ID - SAP Documentation

Object documentation Class ID

The ID is the unique identifier for a class. The class ID is only of secondary importance for the analysis of the class container. Since the class ID is not a descriptive name, you should use the class name for analyses in the OMS intermediate layer.

More Information

The class ID can be displayed from the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


SAP_BC_LVC_SUPERUSER - SAP Documentation

Object documentation SAP_BC_LVC_SUPERUSER

Role of a SAP user in the CCMS in accordance with the authorization concept.

SAP users with the role SAP_BC_LVC_SUPERUSER can monitor, administer, configure and initialize the SAP liveCache database.

SAP users with this role can perform the following actions:

  • Monitoring of runtime behavior and critical situations

  • Starting and stopping SAP liveCache

  • Initializing SAP liveCache

  • Integrating new SAP liveCache databases

  • Changing of integration data

  • Changing of SAP liveCache configuration and parameters

Integration

The corresponding user menus are available in the DBA Cockpit.

User Menu
DBA Function | Tool / DBA Action
DBA Planning Calendar | You can use the DBA Planning Calendar to manage backups and monitoring and analyzing activities.
MaxDB/liveCache System Overview | In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.
liveCache Assistant | You can monitor your SAP liveCache with the liveCache Assistant.
CCMS Monitoring | Among many other displays, the CCMS Monitoring also includes the liveCache Alert Monitor, which displays critical information about memory, security and performance as alerts.


SAP_BC_LVC_ADMINISTRATOR - SAP Documentation

Object documentation SAP_BC_LVC_ADMINISTRATOR

Role of a SAP user in the CCMS in accordance with the authorization concept.

SAP users with the role SAP_BC_LVC_ADMINISTRATOR can monitor, administer and configure the SAP liveCache database.

SAP users with this role can perform the following actions:

  • Monitoring of runtime behavior and critical situations

  • Starting and stopping SAP liveCache

  • Integrating new SAP liveCache databases

  • Changing of integration data

  • Changing of SAP liveCache configuration and parameters

SAP users with this role cannot perform the following actions:

  • Initializing SAP liveCache

Integration

The appropriate user menus are available in DBA Cockpit.

User Menu
DBA Function | Tool / DBA Action
DBA Planning Calendar | You can use the DBA Planning Calendar to manage backups and monitoring and analyzing activities.
MaxDB/liveCache System Overview | In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.
liveCache Assistant | You can monitor your SAP liveCache with the liveCache Assistant.
CCMS Monitoring | Among many other displays, the CCMS Monitoring also includes the liveCache Alert Monitor, which displays critical information about memory, security and performance as alerts.


Schema - SAP Documentation

Object documentation Schema

All objects (instance classes) that are created in an SAP liveCache database are assigned to an SAP liveCache schema. A schema is a combination of classes for a namespace in the OMS intermediate layer.

Integration

SAP liveCache schemas can be displayed from the Schemas user menu as follows:

  • DBA Cockpit: In the Performance user menu, choose the Schemas display.

  • liveCache Assistant: In the Performance user menu, choose the Schemas display.

You can specify additional details about the size of the SAP liveCache schema in relationships to the application (plan version).

More Information

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


Class Name - SAP Documentation

Object documentation Class Name

Every object in an SAP liveCache database is an instance of a particular class. Every class in an SAP liveCache database has a name in the OMS intermediate layer. In rare cases, it is possible that different applications have defined the same class name with different structures.

Example Example

For a customer order, there is a class with the name "Order". Among other things, this class uses methods for creating, changing and deleting orders (objects).

End of the example.

More Information

The class name can be displayed from the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


SAP_BC_LVC_USER - SAP Documentation

Object documentation SAP_BC_LVC_USER

Role of a SAP user in the CCMS in accordance with the authorization concept.

SAP users with the role SAP_BC_LVC_USER can monitor the SAP liveCache database, but cannot change its behavior or configuration.

SAP users with this role cannot perform the following actions:

  • Integrating the SAP liveCache into the system

  • Starting, stopping or initializing the SAP liveCache

  • Changing SAP liveCache configuration

Integration

The corresponding user menus are available in the DBA Cockpit.

User Menu
DBA Function | Tool / DBA Action
MaxDB/liveCache System Overview | In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.
liveCache Assistant | You can monitor your SAP liveCache with the liveCache Assistant.
CCMS Monitoring | Among many other displays, the CCMS Monitoring also includes the liveCache Alert Monitor, which displays critical information about memory, security and performance as alerts.


SAP_BC_LVC_OPERATOR - SAP Documentation

Object documentation SAP_BC_LVC_OPERATOR

Role of a SAP user in the CCMS in accordance with the authorization concept.

SAP users with the role SAP_BC_LVC_OPERATOR can monitor the SAP liveCache database and perform simple, recurrent administration tasks to ensure the availability of the SAP liveCache.

SAP users with this role can perform the following actions:

  • Monitoring of runtime behavior and critical situations

  • Starting and stopping SAP liveCache

SAP users with this role cannot perform the following actions:

  • Integrating the SAP liveCache into the system

  • Initializing SAP liveCache

  • Changing SAP liveCache configuration

Integration

The corresponding user menus are available in the DBA Cockpit.

User Menu
DBA Function | Tool / DBA Action
MaxDB/liveCache System Overview | In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.
liveCache Assistant | You can monitor your SAP liveCache with the liveCache Assistant.
CCMS Monitoring | Among many other displays, the CCMS Monitoring also includes the liveCache Alert Monitor, which displays critical information about memory, security and performance as alerts.


File ID - SAP Documentation

Object documentation File ID

In the SAP liveCache basis layer, the terms liveCache schema, class ID, class name, or container number are not used. Instead, the SAP liveCache basis layer assigns a unique number, the file ID, for every class of the OMS intermediate layer. If a class is deleted in the SAP liveCache database, the corresponding file ID is also deleted and can then be assigned to a new class

In the SAP liveCache basis layer, only classes and class containers are used.

More Information

The file ID is displayed in the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


Key Pages - SAP Documentation

Object documentation Key Pages

Objects that have a key have an index B* tree, in which the keys are stored, as well as a page chain, where the data in the SAP liveCache basis layer is stored. The key pages value specifies the size of this index tree. If the value is zero, the object does not have any keys.

The keys can be stored in multiple key trees.

More Information

The key pages can be displayed from the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


Standard liveCache User - SAP Documentation

Object documentation Standard liveCache User

The execution of DB procedures in the SAP liveCache technology is triggered by database procedure calls in the SAP system. These database procedure calls are part of Native SQL. Native SQL calls of the SAP liveCache are performed using a secondary database connection (Multi DB Connect).

The logon to the SAP liveCache for these purposes is performed using the standard liveCache user. The authorization information for this user is stored in the table DBCON.

Integration

The standard liveCache user is stored in the SAP system during the installation of an SAP system that uses an SAP liveCache. To change user information or add a new user, proceed as described in user data.

More Information

DBA Cockpit, Properties


Object Size - SAP Documentation

Object documentation Object Size

The object size is the net size of an object (in bytes) in the SAP liveCache basis layer. The actual memory usage of an object is the total of the object size and the header information of the object (24 B). The header contains status information, such as, the time stamp of the consistent view, lock entries, and so on.

More Information

The container size can be displayed from the following user menus:

  • DBA Cockpit, Class Containers

  • liveCache Assistant, Class Containers

Glossary, Consistent View


Free Container Pages - SAP Documentation

Object documentation Free Container Pages

The number of free container pages in the SAP liveCache basis layer is the number of pages where free space exists for the persistent saving of objects.

Caution Caution

The number of free container pages is NOT the number of completely free pages.

End of the caution.

As long as the number of free container pages is larger than zero, no new pages are requested when creating new data within a container.

Pages are only deleted if they are completely empty. This behavior explains the following situation: even though many objects were deleted in an SAP liveCache database, this space does not seem to be released.

More Information

The free container pages can be displayed from the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


Container Usage - SAP Documentation

Object documentation Container Usage

The average container usage specifies the percentage of the pages of a container in the SAP liveCache basis layer that are actually occupied. This value is current only directly after the database structure has been checked. Start to check the database structure for an SAP liveCache database only if there are hardly any other activities running in the SAP liveCache database. A database structure check for an individual container is not possible.

More Information

The average container usage can be displayed from the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


Container Size - SAP Documentation

Object documentation Container Size

All objects are stored in page chains in the SAP liveCache basis layer. The container size specifies the number of pages that a page chain (container) contains.

More Information

The container size can be displayed from the following user menus:

  • DBA Cockpit, Class Containers

  • liveCache Assistant, Class Containers

Class Container Sizes


Container Number - SAP Documentation

Object documentation Container Number

A container number can be assigned more than once. Together with the class name (and the class GUID), a container can be uniquely identified in the OMS intermediate layer.

Instances of a class are grouped by various characteristics using the container number. The combination of liveCache schema, class name, and container number is unique.

More Information

The container numbers can be displayed from the following user menus:

DBA Cockpit, Class Containers

liveCache Assistant, Class Containers


Performance Analysis in CCMS: SAP liveCache - SAP Documentation

Procedure documentation Performance Analysis in CCMS: SAP liveCache

The DBA Cockpit and liveCache Assistant supply a comprehensive range of analysis tools for systems with SAP liveCache technology. You can get the most important SAP liveCache status information, including: name of the database connection, liveCache name, liveCache computer, liveCache version and liveCache status.

For an initial overview of important key figures needed to assess SAP liveCache performance, check the data cache load and the usage of the OMS heap. Hit rates, such as the hit rates of the data cache and the converter, can also give you important information. There are additional comprehensive tools for liveCache monitoring available.

Prerequisites

An SAP liveCache analysis can give you meaningful information only if more than 50000 DB procedures have already been executed. For an overview of how many DB procedures have been executed since the last time SAP liveCache was started, refer to the line External DBPROC calls in the Monitor Statistics display.

To set up and use your SAP liveCache optimally, you can automate many necessary DBA activities: Automating Database Administration Activities.

Procedure

Carrying out an SAP liveCache performance analysis means that you can check a wide range of settings, access times and hit rates of your database system, and then, if necessary, can include the applications in further analyses. As each performance analysis runs individually, the following suggestions are merely a collection of ideas.

To analyze performance bottlenecks, you can use a number of CCMS transactions, in particular DBA Cockpit, liveCache Assistant, and liveCache Alert Monitor. To determine, for example, the SAP liveCache status, you can use the Properties user menu (DBA Cockpit/liveCache Assistant) or the State and Installation displays in the liveCache Alert Monitor. Experts can also use additional database tools, such as the Database Studio, Database Analyzer, and XCONS.

General information about performance analysis for an SAP MaxDB database system: Database Administration in CCMS: SAP MaxDB, Performing a Performance Analysis in CCMS.

The SAP liveCache performance analysis can basically be carried out in the steps described for SAP MaxDB databases. Special features for SAP liveCache technology are indicated if necessary. The following monitoring tasks are described specifically for SAP liveCache technology:

  • Monitoring the Main Memory Areas

  • Monitoring OMS Versions

More Information

Terms and Procedures


Automatic Monitoring - SAP Documentation

Procedure documentation Automatic Monitoring

In the Integration user menu you can, among other things, set automatic monitoring by the liveCache Alert Monitor and the Database Analyzer.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection.

  3. Choose [image] liveCache [image] Integration [image] .

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  5. Check the SAP liveCache connection information (liveCache Name, liveCache Server) for completeness and accuracy.

  6. Choose Automatic Monitoring.

  7. Make your chosen settings in the areas described below.

  8. Choose [image] Connection [image] Save [image] .

Deactivating the Alert Monitor

If the liveCache Alert Monitor is activated, then Activate Alert Monitor is selected.

To deactivate the liveCache Alert Monitor, deselect Activate Alert Monitor. This change to the SAP liveCache connection takes immediate effect. You can remove the corresponding node from the alert monitoring tree manually.

To reactivate the liveCache Alert Monitor again, proceed as described in liveCache Alert Monitor.

Reporting Critical Alerts

Select Report Critical Alerts When Starting the liveCache Assistant, if critical SAP liveCache states should be displayed immediately using a separate dialog box.

Deselect this if you do not require critical database states to be displayed in this way.

For more information, refer to: liveCache: Monitoring, Displaying Critical States (Alerts)

Bottleneck Analysis (Database Analyzer)

Select Activate When liveCache Starts if you want to activate the Database Analyzer every time SAP liveCache starts. Adjust the collection interval, if necessary.

The Database Analyzer bottleneck analysis should always be activated.

For more information, refer to: DBA Cockpit, Database Analyzer, liveCache Assistant, Database Analyzer

Deleting DBA Action Logs Automatically

If necessary, specify when the DBA log files are to be deleted from the SAP liveCache host and from the database (table SDBCCMS).

Select the option In the liveCache Host and in the DB After ... Weeks in Deleting DBA Action Logs Automatically. Enter the number of weeks (more than 4) to elapse before the DBA action logs are automatically deleted.

For more information, refer to: DBA Cockpit, DBA History, liveCache Assistant, DBA History

Deactivating Automatic Monitoring

You can deactivate all automatic monitoring procedures.

To do so, choose [image] Goto [image] Deactivate Automatic Monitoring [image] .


Start Application for liveCache: Monitoring - SAP Documentation

Procedure documentation Start Application for liveCache: Monitoring

As a possible user-specific setting in the liveCache Assistant, you can define the start application for the monitoring and administration of the SAP liveCache using liveCache: Monitoring.

Prerequisites

The user has been assigned a role in accordance with the authorization concept.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Choose [image] Goto [image] Settings [image] .

  3. Choose Initial Screen.

  4. You have the following options:

    Select Start Application. From the list of possible applications, choose the application that should always be executed first when liveCache: Monitoring is started.

    Select Do Not Run a Start Application if no application is to be started.

Note Note

For more information about [image] Goto [image] Database Studio [image] , refer to Tools.

End of the note.

Result

Depending on your selection, the selected start application or no start application is started every time the application liveCache: Monitoring is started.

If one of the critical database states "Data or Log Area Is Full" occurs, the application Properties is started irrespective of these settings to make you aware of this status.


Administration Reports - SAP Documentation

Procedure documentation Administration Reports

In the Integration user menu, you can, among other things, specify application-specific administration reports for a SAP liveCache that are to be executed before or after the SAP liveCache is started, initialized or stopped.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Monitoring (transaction LC10).

  2. Enter the name of the database connection.

  3. Choose [image] liveCache [image] Integration [image] .

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  5. Check the SAP liveCache connection information (liveCache Name, liveCache Server) for completeness and accuracy.

  6. Choose Administration Reports.

  7. Enter the required report name in the areas Initialize liveCache, Start liveCache, or Stop liveCache. You can also define a report list. The report names for pre-processing and post-processing must be unique.

  8. Choose [image] Connection [image] Save [image] .

Result

The names of the administration reports are saved.

More Information

Operating


Current Log - SAP Documentation

Procedure documentation Current Log

In the Operating user menu, you can find, among other things, a display of the most recent SAP liveCache operating log (lcinit.log).

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Problem Analysis [image] Logs [image] Operating [image] Current [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] Operating [image] Current [image] .

Result

The most recent lcinit.log log is displayed. The start, stop, and initialization of the SAP liveCache database are logged in this log.

  • You can use the navigation help (Start of File, End of File) for orientation within the log.

  • Choose Import File to update the output.

More Information

DBA Cockpit: SAP MaxDB, Current Log

Database Administration, Log Files


User Data - SAP Documentation

Procedure documentation User Data

In the Integration user menu, you can, among other things, specify or change the user data for the DBM operator and for the standard liveCache user. To allow communication between SAP liveCache and the SAP system, the DBM operator and the standard liveCache user must be known, since the SAP system differentiates between two types of communication:

  • If you want to connect to the DBM server for SAP liveCache administration purposes, you need to specify the DBM operator and password. The storage of the DBM operator data in the SAP system can be either centralized or decentralized (Central/Decentral Authorization). SAP recommends that you store user data centrally.

  • You must specify the standard liveCache user and password to connect to the SAP liveCache database.

The DBM operator and the standard liveCache user are stored in the SAP system and in the SAP liveCache database instance during the installation of an SAP system that uses an SAP liveCache database instance. Further action for this SAP liveCache database is not normally required.

You should, however, check that the user data exists before starting SAP liveCache operations, and correct or complete it, if required. You can create and change the names and the passwords for the DBM operator and the standard liveCache user in the SAP system.

Caution Caution

If the user data in the SAP system does not match the user data in the SAP liveCache database, you must manually change the user data in the SAP liveCache database, since saving the user data in the SAP system does not update the SAP liveCache database data.

End of the caution.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER. You can reach the user menu of the user with the authorizations that correspond to his or her role.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection.

  3. Choose [image] liveCache [image] Integration [image] .

  4. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  5. Check the SAP liveCache connection information (liveCache Name, liveCache Server) for completeness and accuracy.

  6. Choose User Data.

  7. Configure the DBM operator and the standard liveCache user.

    DBM Operator:

    If the SAP liveCache connection already exists, the user name selected during the installation is displayed. You can change this. Enter and confirm your chosen password. If you want to use central authorization for the user, select Central Authorization.

    Standard liveCache User:

    If the SAP liveCache connection already exists, the user name selected during the installation is displayed. You can change this. Enter and confirm your chosen password.

  8. Choose [image] Connection [image] Save [image] .

Result

The names and passwords are converted to upper-case letters and encrypted by the SAP system.

The user data for the DBM operator is stored in the DBCONUSR table in the SAP system. The user data for the standard liveCache user is stored in the DBCON table. If you make changes, the corresponding entries in the table DBCONUSR or DBCON of the SAP system are updated.

Caution Caution

If the user data in the SAP system does not match the user data in the SAP liveCache database, you must manually change the user data in the SAP liveCache database, since saving the user data in the SAP system does not update the database data.

End of the caution.

  • You can change the DBM operator using any client of the Database Manager (DBMCLI, DBMRFC) (more information: Database Administration, DBM Operators).

  • You can change the standard liveCache user in the SAP liveCache database using a query tool of your choice (such as Database Studio or SQLCLI) by entering a corresponding SQL statement (more information: Database Administration, Database Users).

If you have selected decentral authorization, you must also store the user data on every application server in the XUSER file. To do so, follow the procedure described in Central/Decentral Authorization.

The changing of user data for an SAP liveCache database is logged in the SysLog of your SAP sysem (transaction SM21).

More Information

Database Administration in CCMS: SAP MaxDB, User Data


Users - SAP Documentation

Procedure documentation Users

The liveCache: Monitoring user menu in the liveCache Assistant provides a user display.

Prerequisites

The user has been assigned a role in accordance with the authorization concept. You can reach the user menu of the user with the authorizations that correspond to his or her role.

The SAP liveCache is now in the ONLINE operational state.

Procedure

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. If no start application is displayed, or if you exit the application with Back, Exit, or Cancel, you can choose [image] Utilities [image] Users [image] in the menu.

Result

You obtain a list of the users that are stored in the system table DOMAIN.USERS.


Configuring the Data Area - SAP Documentation

Procedure documentation Configuring the Data Area

In the Volumes user menu, you can, among other things, configure the data area.

If the data area no longer has sufficient storage space, you can add more data volumes. The system adjusts all dependent parameters during the change.

Note Note

If a user is performing configuration functions, the configuration function is locked for all other users.

End of the note.

Prerequisites

In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

The SAP liveCache database is in the ONLINE or ADMIN operational state.

Procedure

Configuring the Data Area with the DBA Cockpit

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Data Area [image] .

Configuring the Data Area with the liveCache Assistant

  1. In the user menu, choose liveCache Assistant (transaction LC10).

  2. Enter the name of the database connection. You can select the name from the list of existing names. You can restrict the search for the required name.

  3. Choose [image] liveCache [image] Monitoring [image] .

  4. Choose [image] Administration [image] Configuration [image] Volumes [image] Data Area [image] .

Configuring the Data Area

Check the operational state. Check the operational state. The SAP liveCache database must be in the ONLINE or ADMIN operational state.

Choose [image] Edit [image] Add Volume [image] . If the current volume configuration corresponds to the SAP liveCache naming convention, the generated name of the new volume is already displayed in the dialog box.

Make the following entries in this screen:

Size in KB | Size of the new data volume
Path | Complete path of the new data volume Confirm the default value. UNIX: You can decide whether a file or a raw device should be created.

Confirm your entries.

Result

After you have confirmed your entries again, the new data volume is created.

The new file is created with the specified size. This can take some time, since the new volume is formatted (this does not apply if the volume is created on a UNIX raw device).

More Information

  • Monitoring the Data Area

    Configuring the Log Area

  • liveCache Assistant, Configuring Volumes

  • DBA Cockpit: SAP MaxDB, Data Area


Task Manager - SAP Documentation

Procedure documentation Task Manager

In the Kernel Threads user menu, you can find, among other things, a display of all tasks and their current status. You can end running SQL statements and tasks.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Kernel Threads [image] Task Manager [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Kernel Threads [image] Task Manager [image] .

Result

The system displays an overview of the database tasks and information about the current state of each individual task. The following views are available:

  • Active Tasks

  • Executable Tasks

  • User Tasks (User task type)

  • System Tasks

  • All Tasks

You obtain the following data, among other things:

ID | Internal Task ID
Thread ID | Thread ID of the corresponding internal task
Application PID | Process ID of the application program linked to the task A * before the PID indicates that the PID is on a separate server.
Task State | Information about the current state of the database task.
LCApps | liveCache Technology: Name of the DB Procedure
Refreshing the Display

You can refresh the display. To do so, choose [image] Edit [image] Refresh [image] .

You can automate this function by choosing [image] Edit [image] Automatic Refresh On/Off [image] . The display for the function for the automatic refresh is above the header line of the table (green symbol: on, red symbol: off). In the field next to this, you can specify the time interval with which the automatic refresh should take place. The default value is 5 seconds.

Displaying Task Details

In the Task Manager, you can display detailed information about a task.

  1. Select a task.

  2. Choose [image] Edit [image] Task Details [image] .

Analyze the display of the task details.

liveCache Technology: The system displays the current name of the running DB procedure here, among other things.

Activating/Deactivating DB Time Measurement

In the Task Manager, you can activate or deactivate the internal time measurement for database activities.

You can use this function to, for example, calculate the average response times for an SQL command.

  1. Choose [image] Edit [image] Activate DB Time Measurement [image] .

  2. Perform the desired time measurements.

  3. Choose [image] Edit [image] Deactivate DB Time Measurement [image] .

Evaluation of measurement data can be done via the analysis of bottlenecks using the Database Analyzer.

Terminating an SQL Command/SQL Session

You can terminate an SQL statement (command) or an SQL session in the Task Manager.

  1. Select a task.

  2. Choose [image] Edit [image] Terminate SQL Command [image] . This terminates the SQL command currently being processed.

    or

    Choose [image] Edit [image] Terminate SQL Session [image] . This terminates the task. If a work process of the SAP system was connected with the terminated task, the work process immediately logs on to a new task.

If you want the affected SQL command to still be recorded in the performance trace after the termination, use one of these options to terminate a running action. If you terminate an action by terminating the corresponding work process (transaction code SM50), the SQL command is not recorded in the trace.

Example

Task | State | Possible Causes | Possible Reactions
Log Writer | I/O wait | I/O bottleneck in the log area | Monitoring the Log Area
User | I/O wait | Data cache too small Low performance of disk I/O | Monitoring Caches Monitoring I/O Operations Further analysis of Bottlenecks
User | Vwait | SQL statements in the application cause SQL locks | Analyzing Wait Situations.

More Information

DBA Cockpit: SAP MaxDB, Task Manager

Concepts of the Database System, Operating System Functions and Resources Used by Databases


DBM Operator - SAP Documentation

Object documentation DBM Operator

To administer the database, requests must be made from the SAP system to the DBM server. In this case, the communication takes place by means of the Database Manager operator (DBM operator). The storage of user data for the DBM operator can be either centralized or decentralized (see Central/Decentral Authorization).

If the DBM operator information is to be changed, or a new user is to be added, follow the procedure described in User Data (SAP MaxDB/SAP liveCache Technology).

More Information

Database Administration, DBM Operator


Terms and Procedures - SAP Documentation

Background documentation Terms and Procedures

When administering databases in the CCMS, there is certain information that the administrator must frequently obtain and monitor at regular intervals. There is a list of common terms and procedures below. This should help you to get to know the extensive CCMS administration functions.

Database Topic | Where can I find information about it?
Aggregating performance data | Expert Analysis
Alert monitoring | Alerts
Archiving backup files (for log backups only) | DBA History, Archiving Backup Files
Authorization | Centralized/Decentralized Authorization
Authorization concept | Prerequisites
Automatic log backup | Activating Automatic Log Backup
Automating database administration tasks | Automating Database Administration Activities
Backup, automatic log backup | Activating Automatic Log Backup
Backup, data backup | Scheduling a Data Backup
Backup, interactive log backup | Scheduling an Interactive Log Backup
Backup, SAP liveCache Technology | Backing Up liveCache: Background Processing
Backup files (for log backups only) | DBA History, Archiving Backup Files
Backup history | DBA History, DBA Action Logs
Backup template | Backup Templates
Central authorization | Centralized/Decentralized Authorization
Central calendar | Central Calendar, Using the Central Calendar
Checking backups | Planning Concept
Class containers | Class Container, Class Container Size
Command Monitor | Command Monitor
Configuring backup templates | Backup Templates
Consistency checks | Missing Tables and Indexes
Critical section | Critical Sections
Database Alert Monitor | Alerts, Database Alert Monitor
Database Analyzer | Database Analyzer
Database Assistant | Database Assistant
Database console | Database Console
Database files | Database Files
Database monitor | Database Monitor
Database structure check | Scheduling a Database Structure Check
Database trace | Database Trace, SAP liveCache Technology Monitoring Statistics
Database user | Standard Database User, Standard liveCache User
Database version | Central System Data
Data area | Monitoring the Data Area
Data backup | Scheduling a Data Backup, Backing Up liveCache: Background Processing
Data cache | Caches, SAP liveCache Technology Monitoring the Main Memory Areas
Data carrier | Backup Templates
DBA actions | Database Administration: Overview of Activities DBA History, Setting Up and Using the DBA Planning Calendar, DBA Action Logs
DBA Cockpit | DBA Cockpit: SAP MaxDB
DBA Planning Calendar | DBA Planning Calendar
DBM operator | DBM Operator
DBM server version | Central System Data
DB procedure | Task Manager, DB Procedures
Directories | Properties
Error | Error Messages, Error Codes
EXPLAIN statement | Diagnosis, Command Monitor
Heap, OMS heap, system heap | Heap Usage
Index | Index Analysis, Indexes, Bad Indexes, Table Sizes
INITIALIZE_LIVECACHE_LVC | Function Module for Starting/Stopping/Initializing
Integrating additional systems | Displaying/Changing Integration Data, SAP liveCache Technology: Integration, Integrating a Database System
Interactive log backup | Scheduling Interactive Log Backup, Backing Up liveCache: Background Processing
liveCache, backup | Scheduling a Data Backup, Scheduling a Log Backup, Backing Up liveCache: Background Processing
liveCache, start, stop, initialize | Starting liveCache, Stopping liveCache, Initializing liveCache, Function Module for Start/Stopping/Initializing
liveCache Alert Monitor | liveCache Alert Monitor
liveCache application | liveCache Applications, Registering LCApps
liveCache Assistant | liveCache Assistant
liveCache monitoring | Database Monitoring
liveCache version | Central System Data
Log area, log information | System Settings, Monitoring Log Area
Log backup, automatic | Activating Automatic Log Backup
Log backup, interactive | Scheduling Interactive Log Backup, Backing Up liveCache: Background Processing
Logical database/liveCache name | Central System Data
Logs | Logs, Database Files, Displaying Actions, DBA History
Memory analysis | OMS Monitor, Monitoring Statistics
Memory, data area | Monitoring the Data Area
Memory, log area | System Settings, Monitoring Log Area
Message file | Messages, Database Files
Monitor, class container | Class Containers
Monitor, Database/liveCache Alert Monitor | Database Alert Monitor or liveCache Alert Monitor
Monitor, database/liveCache monitoring | Database Monitoring
Monitor, liveCache | Monitoring Statistics
Monitor, OMS monitor | OMS Monitor
Name of the database connection | Central System Data
Name, running DB procedure | Task Manager
Name, liveCache | Central System Data
OMS heap | Heap Usage, Monitoring the Main Memory Areas
OMS locks | OMS Locks
OMS Monitor | OMS Monitor
OMS Object Browser | OMS Object Browser
OMS synchronization objects | Critical Sections
OMS version | OMS Versions, Monitoring OMS Versions
OneDB | OneDB
Optimizer | SQL Optimizer in CCMS
Optimizer, statistics | Scheduling Updates of the SQL Optimizer Statistics, Optimizer Statistics, SQL Optimizer in the CCMS
Performance | Executing Performance Analysis in CCMS, Index Analysis, Performance, Performance Analysis in CCMS: SAP liveCache Technology
Performance Warehouse | Performance
Release notes | MaxDB/liveCache System Overview
Resource Monitor | Resource Monitor
Role of an SAP user | Prerequisites, SAP liveCache Technology Authorization Concept
RSLVCBACKUP | Backing Up liveCache: Background Processing
RSLVCINIT | Initializing liveCache
RSLVCSTART | Starting liveCache
RSLVCSTOP | Stopping liveCache
SAP Notes | SAP Notes
SAP Release Notes | MaxDB/liveCache System Overview
SAP user | Prerequisites, SAP liveCache Technology Authorization Concept
Savepoints | System Settings
SQLDBC trace | SQLDBC Trace
SQL Optimizer, statistics | Scheduling Updates of the SQL Optimizer Statistics, SQL Optimizer in the CCMS
Standard database user | Standard Database User
Standard liveCache user | Standard liveCache User
START_LIVECACHE_LVC, STOP_LIVECACHE_LVC | Function Module for Starting/Stopping/Initializing
Starting/stopping the liveCache | Operating (liveCache)
Starting/stopping the liveCache from operating system level | Function Module for Starting/Stopping/Initializing
Synchronization object | Critical Sections
System heap | Heap Usage
Tables | Tables/Views/Synonyms, Table Sizes
Task states | Task Manager, Database Console
Terminations, backup logs | Message History
Transaction | Transactions, Executing Performance Analysis in CCMS, Executing Performance Analysis: SAP liveCache
Troubleshooting | Troubleshooting
User, database user | Standard Database User, Standard liveCache User
User, DBM operator | DBM Operator
User, SAP user | Prerequisites
User data | User Data, SAP liveCache Technology: User Data
Version, database or liveCache | Central System Data
Version, DBM Server | Central System Data
Version, liveCache programs | MaxDB/liveCache System Overview
Version, OMS version | OMS Versions

More Information

  • Database Administration: Overview of Activities

  • DBA Cockpit: MaxDB

  • Database Administration in CCMS: SAP MaxDB

    Database Administration in CCMS: SAP liveCache Technology

  • Glossary


Centralized/Decentralized Authorization - SAP Documentation

Background documentation Centralized/Decentralized Authorization

The storage of user data for the Database Manager operator (DBM operator) can be either centralized or decentralized.

Note Note

We recommend that you use central authorization of the user data.

End of the note.
Centralized Authorization

The user data for the DBM operator is stored in SAP table DBCONUSR. When the DBM operator is called, this data is used for its authorization.

Decentralized Authorization

User data for the DBM operator is stored in the SAP table DBCONUSR; however, when the DBM operator is called, this data is not used for its authorization.

The XUSER concept is used for the authorization of the DBM operator. You must therefore store the user data on every application server in the XUSER file. You can use, for example, the following Database Manager CLI command to store the DBM operator user data in the user key (user_key) DEFAULT).

dbmcli -ux <default_user_name>,<default_user_password> -us <dbm_user>,<password> -d <database_name> -n <database_computer>

Procedure

To set centralized or decentralized authorization, follow the procedure described in User Data (SAP MaxDB/SAP liveCache Technology).

More Information

Database Manager CLI, -us: Creating or Changing XUSER Entries

Utilities, XUSER


Properties - SAP Documentation

Procedure documentation Properties

Certain status information is helpful in administering a database. The most important information is displayed in a status box in every user menu. You will find a display of all status details in the Properties user menu.

Procedure

Open the Database Assistant (transaction code DB50) or the liveCache Assistant (transaction code LC10). Choose Properties.

The properties display is a component of the DBA Cockpit and as such can be called as follows: In the DBA Cockpit, (transaction DBACOCKPIT, choose the Properties user menu.

Result

The following Properties are displayed under Operational State:

  • Name of the Database Connection

  • Database Name/liveCache Name

  • Database Server/liveCache Server

Database version/liveCache version | Database Server and Versions
DBM Server Version | Database Server and Versions
Operating System | Name
Operational state/liveCache state | Operational State
Started at | Time stamp
Last Initialization | SAP liveCache Technology: Action status, current log display and action time stamp
Last Start/Stop Action | SAP liveCache Technology: Action status, current log display and action time stamp
Automatic Log Backup OFF | ON | Activating Automatic Log Backup
Database Trace OFF | ON | Database Trace
Command monitors OFF | ON | Command Monitor
Resource Monitor OFF | ON | Resource Monitor

SAP liveCache Technology: If you want to see all the logs, not just the current ones, switch to the Operating Logs display.

Note Note

The most important information (name of the database connection, database/liveCache name, database/liveCache server, operational state, database/liveCache version) is displayed in a status box in every user menu.

End of the note.

The following Properties are displayed under Directories: Directories

The following Properties are displayed under Files: Files

Recalculating Values

The values are recalculated in the following cases:

  • You start the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10).

  • You choose the Refresh button.

  • After starting or stopping the database.

    After the liveCache database is started, stopped, or initialized.

Displaying Critical Database States

If the data or log area has become full, the system displays this. If one of these critical states occurs, the Properties application appears as the first display in the Database Assistant or liveCache Assistant, no matter which starter application you selected (user menu liveCache: Monitoring, more information: Start Application for liveCache: Monitoring).

If the system finds any bad indexes, you will see this displayed (see also: Indexes).

Hot Standby System

In the case of a Hot Standby System, additional information on the individual standby instances (name, type and operational status) is displayed.

Database Administration, Hot-Standby

More Information

DBA Cockpit: SAP MaxDB, Properties

Database/liveCache Alert Monitor, Installation, State


dban_state - SAP Documentation

Background documentation dban_state

Use this command to display the status of the Database Analyzer program.

Prerequisites

You have the DBInfoRead server permission.

Structure

dban_state

Result

The current status of Database Analyzer is displayed.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the status of Database Analyzer:

>dbmcli -u OLEG,MONDAY -d DEMODB dban_state

OK

0,OK: everything works fine

0,"C:\Program Files\sdb\programs\bin\dbanalyzer" -d DEMODB -u *,* -stateMaxDB Database Analyzer, The Performance Analysis Tool, Version 7.7.06.01

Copyright 2000-2008 by SAP AG

Using log directory: C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer

INFO 20: Database Analyzer not active in directory "C:\Documents and Settings\All Users\Application Data\\sdb\data\wrk\DEMODB\analyzer".

Database = DEMODB

Node =

Rundirectory = C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB

Configfile = C:\Program Files\sdb\programs\env\dbanalyzer77.cfg

Protocoldirectory = C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\analyzer

Interval = 5

Reconnect = false

ProcessID = 5340

SessionID = 1631

Driver = MaxDB

Started = 2008–09–30 13:13:50

Stopped = 2008-09-30 23:59:44

More Information

Database Analyzer documentation


Database Administration in CCMS: SAP liveCache Technology - SAP Documentation

Component documentation Database Administration in CCMS: SAP liveCache Technology

You can manage your SAP MaxDB database system and obtain information on its status from the database administration using SAP Computing Center Management System (CCMS) (part of the Solution Life Cycle Management). Database administration for SAP liveCache technology is introduced in the following sections.

Note Note

All documentation about managing an SAP system (and the SAP MaxDB database) using SAP CCMS is only relevant for SAP customers. You will find the entire CCMS documentation in the SAP Help Portal under http://help.sap.com. The SAP MaxDB-specific CCMS documentation is available as described in SAP Note 767598.

End of the note.

Features

  • Information about required and recommended activities for database administration: Database Administration: Overview of Activities.

  • For you to be able to use the database administration functions (DBA functions) of the CCMS, a number of prerequisites must be fulfilled.

  • The most important DBA functions of the CCMS for various monitoring and administration tasks in your database system are available in the DBA Cockpit.

  • A role is assigned to a user in accordance with the Authorization Concept, and this user can therefore only execute certain DBA functions from the user menu with these authorizations, which correspond to the role of the user.

  • You can use the DBA Planning Calendar to schedule and start data and log backups, and monitoring and analysis tasks.

  • In complex system landscapes, access database administration functions using the MaxDB/liveCache System Overview transaction.

  • You can monitor your database system with the liveCache Assistant.

  • Among many other displays, the CCMS Monitoring also includes the liveCache Alert Monitor, which displays critical information about memory, security and performance as alerts.

More Information

  • You can gain quick access to available DBA functions by using the list of Terms and Procedures.

  • Database Administration in CCMS: SAP MaxDB

  • Database Administration, Monitoring Databases

    Database Administration, Troubleshooting

  • SAP Notes

  • Glossary


Bottlenecks - SAP Documentation

Procedure documentation Bottlenecks

The Database Analyzer user menu contains, among other things, a bottleneck analysis.

You can display the logs of the Database Analyzer. You can stop and start the Database Analyzer, for example, to change the settings for the collection interval. You can also manage the performance data.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Problem Analysis [image] Performance [image] Database Analyzer [image] Bottlenecks [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Database Analyzer [image] Bottlenecks [image] .

Result

You see the results of today's Database Analyzer bottleneck analysis (log DBAN.prt), if it exists. All entries in the Database Analyzer log (warnings and information) of today's first measuring point - and others, where applicable - are opened immediately for viewing. You can open information on the day's other measuring points for viewing by expanding the desired measuring time.

There are different display options for opening the Database Analyzer log for a day of your choice:

  • Choose Expand All Measuring Times to open the entire Database Analyzer log of the selected day for viewing, along with the entries containing warnings and information of each measuring time.

  • Choose Display a Day's Measuring Times to obtain a list of all measuring times of the selected day. The entries in the Database Analyzer log (warnings and information) of the day's first measuring point - and others, where applicable - are opened immediately for viewing. You can open information on the other measuring points for viewing by expanding the desired measuring time.

  • Select the desired measuring times of a certain day and choose Expand Selected Measuring Times to view the Database Analyzer information for the selected measuring times along with the warning and information entries.

You can restrict the measuring point display to measuring points with high-priority warnings or measuring points with any warnings. To do this, select the option Warnings with High Priority or Warnings in the Filter for Measuring Times area.

Choose Collapse All when you wish to close the display of all detailed information again.

To display the logs of the monitoring class (analysis areas) of the Database Analyzer and the collected performance data (aggregated data), go to [image] Goto [image] Expert Analysis [image] in the Expert Analysis.

Changing the Collection Interval

If you need to change the collection interval for performance data, proceed as follows:

  1. In the Bottleneck Analysis, choose [image] Bottleneck Analysis [image] DB Analyzer [image] Stop Analysis [image] .

  2. Choose [image] Bottleneck Analysis [image] DB Analyzer [image] Start Analysis [image] .

  3. Specify a collection interval for the performance data.

Managing Performance Data

Choose [image] Goto [image] Managing Performance Data [image] in the Bottleneck Analysis. You can execute any administration activities automatically or manually:

  • Transferring the log files from the Database Analyzer to the database

  • Deleting the log files from the Database Analyzer

  • Collecting (aggregating) performance data from the Database Analyzer

More information: Managing Performance Data

Displaying Logs

To view more log files from the Database Analyzer proceed as follows:

In the Bottleneck Analysis, choose [image] Goto [image] Self-Monitoring [image] <DBAN.err | DBAN.inf | DBAN.pid | DBAN.sid>

Starting the Database Analyzer Explicitly

If necessary, you can start the Database Analyzer explicitly in the following ways:

  1. In the Bottleneck Analysis, choose [image] Bottleneck Analysis [image] DB Analyzer [image] Start Analysis [image] .

  2. Specify a collection interval for the performance data.

Activating DB Time Measurement

In the Task Manager, you can activate or deactivate the internal time measurement for database activities.

You can use this function to, for example, calculate the average response times for an SQL command.

  1. Choose [image] Edit [image] Activate DB Time Measurement [image] .

  2. Perform the desired time measurements.

  3. Choose [image] Edit [image] Deactivate DB Time Measurement [image] .

Evaluation of measurement data can be done via the analysis of bottlenecks using the Database Analyzer.

More Information

  • For additional analysis, you can use the SQL Performance display, among others.

  • DBA Cockpit: SAP MaxDB, Bottlenecks

  • Database/liveCache Alert Monitor, Database Analyzer

  • Database Analyzer

    Database Analyzer Log Files

    Database Analyzer Messages


recover_state - SAP Documentation

Background documentation recover_state

Use this command to display information about the current status of the database recovery.

You can execute this command while a recovery operation is in progress. To do this, open a second command prompt and log on there again to the database on which the recovery operation is running.

Prerequisites

  • You have the server permission Recovery.

  • You have executed the DBM command for recovering the database (see recover_start).

Structure

recover_state

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Database Administration, Restoring Databases


Automatic Monitoring - SAP Documentation

Procedure documentation Automatic Monitoring

You can use the Display/Change Integration Data transaction to set automatic monitoring by the database Alert Monitor and to delete DBA action logs, among other things.

Note Note

Automatic Monitoring for SAP liveCache technology is described separately.

End of the note.

Procedure

  1. In the Database Assistant, choose [image] Edit [image] Display/Change Integration Data [image] (transaction DB11).

  2. Enter the name of the database connection.

  3. To be able to change integration information, you must be in change mode. Switch to this mode, if necessary.

  4. Check the information about the database connection (Database Name and Database Server) for completeness and accuracy.

  5. Choose Automatic Monitoring.

  6. Make your chosen settings in the areas described below.

  7. Choose Save Connection.

Deactivating the Alert Monitor

If the database Alert Monitor is activated then Activate Alert Monitor is highlighted.

To deactivate the database Alert Monitor, deselect Activate Alert Monitor. This change to the database connection takes immediate effect. You can remove the corresponding node from the alert monitoring tree manually.

To reactivate the database Alert Monitor, proceed as described in Database Alert Monitor.

Reporting Critical Alerts

Select Report Critical Alerts when starting the Database Assistant if critical database states are to be displayed immediately in a separate dialog window.

Deselect this if you do not require critical database states to be displayed in this way.

Deleting DBA Action Logs Automatically

You can specify when the DBA log files are to be deleted from the database host and from the database (table SDBCCMS).

Select the option In the database host and in the DB after….weeks in Deleting DBA Action Logs Automatically.

Enter the number of weeks (more than 4) to elapse before the DBA action logs are automatically deleted.

More information: DBA Action Logs, DBA Cockpit, DBA History, Database Assistant, DBA History

Deactivating Automatic Monitoring

You can deactivate all automatic monitoring procedures.

To do so, choose [image] Goto [image] Deactivate Automatic Monitoring [image] .

More Information

Database Assistant, Displaying Critical States (Alerts)


param_gethistory - SAP Documentation

Background documentation param_gethistory

With this command you can open the database parameter history and transfer the first block of the contents. The entries are displayed in reverse chronological order, that is, starting with the most recent and ending with the oldest entries.

You can restrict the parameters displayed by specifying options. If you enter several selection criteria, only the data for those parameters that correspond to all the criteria is displayed. You can also define which data should be displayed for the parameters selected.

Each parameter is displayed on a separate line with the details for all fields defined.

If the entries for the parameter history cannot be transferred in full, due to the limited size of the reply packet, you can display the remaining contents using param_gethistorynext.

Prerequisites

You have the server permission ParamRead.

Structure

param_gethistory [NAME=<parameter_name>] [DATE=<yyyymmdd>] [GROUP=<group_list>] [STATE=<status_list>] [FIELDS=<field_list>]

<group_list>:: = <parameter_group>,<parameter_group>,...

<status_list>:: = <status>,<status>...

<field_list>:: = <field>,<field>,...

<field>:: = DATE | TIME | NAME | OLDVALUE | NEWVALUE | STATE | GROUP | COMMENT

Options
Option | Description
<parameter_name> | Name of the database parameter If you do not specify a parameter name, the entries for all parameters in the history are displayed.
<yyyymmdd> | Date format (year, month, day) Only parameter changes since this date are displayed. If you do not specify a date, all entries in the history are displayed.
<parameter_group> | Parameter group Changes to database parameters, which belong to this group, are displayed. Possible values are: GENERAL | EXTENDED | SUPPORT GENERAL: general database parameters EXTENDED: special database parameters SUPPORT: support database parameters If you do not specify a parameter group, the parameter changes for all groups will be output. See also: Database Administration, Database Parameters
<status> | Database parameter status Possible values are: a | c | d a: active database parameters c: changed database parameters d: deleted database parameters If you do not specify a state, all parameter changes will be output.
<field> | Name of the field in the parameter history to be displayed You can display the following fields: DATE : date when the parameter was changed TIME: time when the parameter was changed NAME: parameter name NEWVALUE: new parameter value OLDVALUE: old parameter value STATE: the change status of the parameter GROUP: group to which the parameter is assigned COMMENT: comment, which you can enter when changing a parameter, or which is created by the system If you do not specify a field, all fields will be displayed.
<hhmmss> | Time format (hours, minutes, seconds) Only parameter changes since this time are displayed If you do not specify a time, all entries in the history are displayed.

Result

OK

<header_line>

<param_line>

<param_line>

...

Values for the Reply Fields
Value | Description
<header_line> | Contains the names of the fields displayed. S stands for the STATUS of the data base parameter
<param_line> | Contains the values for the fields displayed in the <header_line>, the values are in the same column position as the field name in the <header_line>. Possible statuses are: a | c | d a: Active database parameter c: Changed database parameter d: Deleted database parameter

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB:

>dbmcli –u OLEG,MONDAY –d DEMODB

dbmcli on DEMODB>

Display the parameter history for the parameter MaxDataVolumes:

dbmcli on DEMODB>param_gethistory NAME=MaxDataVolumes

OK

DATE TIME NAME NEWVALUE OLDVALUE S GROUP

20050503 00134126 MaxDataVolumes 32 64 A GENERAL

20050317 00141019 MaxDataVolumes 64 1 C GENERAL

20050317 00141013 MaxDataVolumes 1 C GENERAL

Display all changes to the database parameter MaxUserTasks with date, time and status:

dbmcli on DEMODB>param_gethistory NAME=MaxUserTasks FIELDS=DATE,TIME,STATE

OK

DATE TIME S

220050503 00105843 A

0050317 00141019 C

20050317 00141013 C

More Information

Database Administration, Log Files


recover_check - SAP Documentation

Background documentation recover_check

Use this command to check whether Database Manager can properly access the specified data carrier and read the data there.

You can use this DBM command to check if access to a backup tool is functioning, for example.

This DBM command is executed irrespective of the functions running on the database. However, it might cause a temporary loss of performance in the database.

Note Note

The backup specified is just checked, not restored.

End of the note.

Prerequisites

  • You have the server permission Backup.

  • You have opened a service session (see: service_connect).

Structure

recover_check <medium_name> <type> [EBID <ebid_list>] [<nnn>] [UNTIL <date> <time>]

<ebid_list> :: = <external_backup_ID> | <external_backup_ID>,<external_backup_ID>,...

Options
Option | Description
<medium_name> | Name of the backup template
<type> | Type of backup. Possible values are: DATA | PAGES | LOG DATA: complete data backup PAGES: incremental data backup LOG: log backup
<nnn> | For log backup only: version of the backup on the data carrier, only relevant for a data carrier of the FILE type
UNTIL <date> <time> <date> ::= <yyyymmdd> <time> ::= <hhmmss> | For log backup only: exact time (year, month, day, hour, minutes, seconds) up to which you want to check
<ebid_list> | List of external backup IDs Seperate several backup IDs using commas. If backup IDs contain spaces, enclose the list in double quotation marks.
<external_backup_ID> | Name under which the backup is known to the external backup tool (only for checking a backup, which was created with a backup tool of another provider)

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

If an error occurs you will receive a reply with the following information:

Reply in the Event of an Error
Value | Description
<errcode> | Error Message Number See: Messages documentation
<err_description> | Description of the error
<extended_description> | Cause of error

The following errors may occur:

Messages
Error Message Number | Error message text | Explanation
-24927 | ERR_TOOLCHK: the external backup tool was not found | The backup tool could not be found or has been installed incorrectly.
-24926 | ERR_MEDIUMCHK: the medium cannot be used with this external backup tool | The backup template specified cannot be used with this backup tool.
-24925 | ERR_PREPARE: prepare of the backup operation failed | The preparations required to use the backup tool could not be completed correctly.
-24924 | ERR_DBREQ: cannot start database kernel request | The database was unable to start the backup.
-24923 | ERR_TOOLREQ: cannot start external backup tool correctly | The backup tool could not be started correctly.
-24922 | ERR_OPCHK: cannot check state of backup operation | Unable to check the status of the database or the backup tool.
-24921 | ERR_POSTOP: cannot finish backup operation correctly | Although the backup was successful, the required post-processing steps could not be performed.
-24920 | ERR_BACKUPOP: backup operation was unsuccessful | The backup failed due to a problem with the database or with the backup tool.
-24919 | ERR_CLEANUP: cannot clean up correctly after backup operation | Although the backup was successful, the system resources used during the check could not be released.


recover_ignore - SAP Documentation

Background documentation recover_ignore

Use this command in one of the following recovery situations:

  • While importing a data backup from multiple data carriers simultaneously

  • While importing a complete sequence of log backups after a log volume was destroyed (for example after a hardware error)

  • While importing an incomplete sequence of log backups

Note Note

Start any recovery process restoring the data backups of the relevant database. Only then import the available log backups. The command to be used for starting the recovery process depends on the point of departure.

End of the note.

Recovering from Multiple Data Carriers Simultaneously

Use the recover_ignore command when the data backup was made using multiple data carriers simultaneously. First start the recovery process. When the data from one of the data carriers involved was imported in full, the system prompts you to specify a succeeding data carrier. If you do not specify another data carrier, but instead execute the DBM command recover_ignore, the system will continue restoring the backup from the remaining data carriers only.

Importing a Complete Sequence of Log Backups

If the log volume has been destroyed because of a hardware problem, you still can recover the log entries retrieving the log backups made until the volume was destroyed. For that purpose, first solve the hardware problem. Then start the recovery process importing the data backups first (See: recover_start). When recovering the first log backup, the database will apply the actions stored in the log entries to the data in the data area, and stop with a return code (-8020: Next volume required) whenever the next log backup in the sequence must be specified. Each time continue the recovery process specifying the next log backup to be imported (recover_replace command) until the last available log backup has been imported. Now execute the recover_ignore command, which terminates the recovery process and starts the database. Afterwards the database will be in the ONLINE operational state and its data is consistent. The log area is empty and only that data has been retrieved that was contained in the log backups. The data that was only stored in the destroyed log volume is lost.

Importing an Incomplete Sequence of Log Backups

If errors ocurred and the sequence of log backups is incomplete because of missing log backups (gaps in the sequence), you still can recover log entries retrieving part of that data. Start the recovery process importing the data backups first (See: db_activate RECOVER). When recovering the first log backup, the database will apply the actions stored in the log entries to the data in the data area, and stop with a return code (-8020: Next volume required) whenever the next log backup in the sequence must be specified. Each time continue the recovery process specifying the next log backup to be imported (recover_replace command) until the last available log backup before the gap has been imported. Now execute the recover_ignore command, which terminates the recovery process and starts the database. Afterwards the database will be in the ONLINE operational state and its data is consistent. The log area has been initialized. Only that data was retrieved that was stored in the actually imported log backups (before the gap). The data contained in the log backups dated after the gap, and the data that was only stored in the log volume, is lost.

Example

You want to import a data backup, which was created using three tape drives simultaneouslyl and consists of a total of 5 tapes. Start importing the data using three tape drives so that tapes 1-3 are imported simultaneouslyl. After a while, the data on the tape in tape drive 1 has been completely imported. The import from drives 2 and 3 is ongoing. The system prompts you to place the next tape in tape drive 1. If you now enter recover_ignore, the import only continues with tape drives 2 and 3.

As soon as the next tape drive (e.g. tape drive 3) prompts you to insert another data carrier, use recover_replace to specify a succeeding data carrier, and import tape 4.

When you are asked to do so by tape drive 2, also use recover_replace to specify a succeeding data carrier, and import tape 5.

Thereafter all 5 backup tapes will have been imported.

The reply to this DBM command displays information about the import of the backup. Pay particular attention to the message number displayed in the Returncode field.

Note that this information is only given when the backup operation is completed or interrupted. For this reason, the reply to this command can take a long time.

Prerequisites

  • You have the server permission Backup.

  • You have started recovering a database by importing data (see recover_start) and you are still in the same database session. The operation was interrupted.

Structure

recover_ignore

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information


recover_config - SAP Documentation

Background documentation recover_config

You can use this DBM command when you create a database. It enables you to create a new database, which has the same parameter values as an existing database.

For that purpose, you need a complete backup of the existing database. Import the parameter file from this backup to the new database.

The copy of the parameter file is then stored in the <dependent_path> under the name of the current database.

Note Note

If you use this command when creating a database copy or a standby database, always check whether security reasons make it necessary to create this database on a database computer other than the computer of the original database. If you do create the new database on the same computer as the original database, it is imperative to change the imported parameter values for the run directory and the diagnosis history as well as the paths for the data and log volumes.

End of the note.

Prerequisites

  • You have the server permission Recovery.

  • You have started a service session (see service_connect).

Structure

recover_config <medium_name>

Options
Option | Description
<medium_name> | Name of the backup template

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


recover_start - SAP Documentation

Background documentation recover_start

Use this command to import backups of the database and recover the database status that they contain.

To recover the database completely, first import the most up-to-date complete data backup. If you have carried out one or more incremental data backups after the complete data backup, import them as well. To find out which data backup is the most up-to-date and which incremental data backups were made after it, look into the backup history (see backup_history_open).

After the data backup(s) have been imported, the system will display which log page to start importing the log backups with. You can also find this information in the backup history. On the basis of this information, select the first log backup to be imported. Then import the subsequent log backups in chronological order.

Look into the restart information to determine up to which log page you need to import the log backups. The system displays which log pages are still in the log area (that is beginning with which number). The log pages, which are still in the log area can be restored by the system from that location (see db_restartinfo). You need not import them using a log backup.

The backups to be imported must, in their entirety, comprise all the contents of the database without any gaps. The automatic recovery of the log entries in the log area is only possible if the log volumes are still intact.

If the log volumes contain all the log entries that were written after the last imported data backup was carried out, it is sufficient to import the data backups and then restart the database (see db_restart). The system then imports the content of the log area.

If you need to import more log backups after the data backup(s), the database system recognizes the page starting from which the missing content can be imported from the log area. The log backup import terminates at this point, the system recovers the remaining log pages from the log area and automatically transfers the database to the ONLINE operational state.

You can import data backups that were created sequentially as well as data backups that were created on more than one data carrier in parallel into the database system.

Execute the recover_start command to import data backups and the first log backup. Then import all succeeding log backups with the continuation command recover_replace (after return value -8020.

If you set up a standby database, import all succeeding log backups with recover_start (after return value -7075.

It is possible to recover the database only as far as a certain consistent state before a database or hard disk error occurred. When importing log backups, you can use an option to specify the point in time up to which the system should import the entries from the log backups or from the log area (as the case may be).

If you used a third-party backup tool to make the backups, use that tool to import the backups. To do so, determine the backup ID of the required backup first (see backup_ext_ids_get and backup_ext_ids_list). Database Manager uses this ID to identify the backup that is to be imported.

The reply to the recover_start DBM command displays information about the import of the backup. However, this information is only displayed when the backup has been imported completely, or if the backup was interrupted. This command may therefore take a long time to execute.

You can display the current status of the restore operation with the DBM command recover_state.

Note Note

Pay special attention to the Returncode reply field, which contains a numeric value for a message.

End of the note.

If it is clear from the message number that the restore was interrupted and not finished, continue the session with the continuation command (recover_replace) or terminate it with (recover_cancel).

If the automatic log backup was on before the recovery was started, it is not reactivated automatically after the recovery. To reactivate the automatic log backup function, execute DBM command autolog_on.

If you updated the software after the database state that the recovery takes you back to, you need to reload the system tables to adjust them to the new software version (see load_systab).

Prerequisites

  • You have the server permission Recovery.

  • The database is in the ADMIN operational state.

  • You have opened a database session (see db_connect).

  • You have the necessary data backups and log backups to recover the database.

  • If you want to restore the database using a third-party backup tool, your SAP MaxDB software installation must have been configured for the backup tool you want to use (see: Installation Manual, Connecting Third-Party Backup Tools).

Structure

Importing a Data Backup

recover_start <medium_name> <backup_type> [LABEL <label>] [EBID <ebid_list>] [AUTOIGNORE]

<ebid_list> :: = <external_backup_ID> | <external_backup_ID>,<external_backup_ID>,...

Importing a Log Backup

recover_start <medium_name> <backup_type> [LABEL <label>] [<nnn> | EBID <ebid_list>] [UNTIL <date> <time>] [AUTOIGNORE]

<ebid_list> :: = <external_backup_ID> | <external_backup_ID>,<external_backup_ID>,...

Options

Option

Description

<medium_name>

Backup template from which the backup is to be imported

If importing a backup created on a group of parallel data carriers, specify the name of the group here. (See medium_put, Database Administration, Backup Templates and Data Carriers)

<backup_type>

Type of backup to be imported. Possible values are: DATA | PAGES | LOG

DATA: complete data backup

PAGES: incremental data backup

LOG: log backup

LABEL <label>

Backup ID of the data carrier to be imported

<ebid_list>

List of external backup IDs

If the list contains several backup IDs, separate them by commas.

If backup IDs contain spaces, enclose the list in double quotation marks.

<external_backup_ID>

Only for importing a backup that was created with a backup tool:

Name under which the backup is known to the backup tool.

<nnn>

Only for log backup to be imported and only for data carriers of the FILE type:

version number of the log backup on the data carrier to be imported

UNTIL <date> <time> <date> ::= <yyyymmdd> <time> ::= <hhmmss>

Exact time (year, month, day, hour, minutes, seconds) up to which you want to recover

AUTOIGNORE

This option is only relevant when restoring from a group of parallel data carriers in the background.

Use it to define that the system should continue restoring automatically from the remaining data carriers as soon as one of the data carriers has been imported completely. This prevents you from having to react interactively (see: recover_config).

Note Note

Use this option only if you have the technical prerequisites for importing all data carriers of a backup simultaneously.

End of the note.

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

If an error occurs, you receive a reply with the following information:

Reply in the Event of an Error
Value | Description
<errcode> | Error Message Number See: Messages documentation
<err_description> | Description of the error
<extended_description> | Cause of error

The following errors (among others) may occur:

Messages
Error Message Number | Error message text | Explanation
-24927 | ERR_TOOLCHK: the external backup tool was not found | The backup tool could not be found or has been installed incorrectly.
-24926 | ERR_MEDIUMCHK: the medium cannot be used with this external backup tool | The backup template specified cannot be used with this backup tool.
-24925 | ERR_PREPARE: prepare of the backup operation failed | The preparations required to use the backup tool could not be completed correctly.
-24924 | ERR_DBREQ: cannot start database kernel request | The database was unable to start the backup.
-24923 | ERR_TOOLREQ: cannot start external backup tool correctly | The backup tool could not be started correctly.
-24922 | ERR_OPCHK: cannot check state of backup operation | Unable to check the status of the database or the backup tool.
-24921 | ERR_POSTOP: cannot finish backup operation correctly | Although the backup was successful, the required post-processing steps could not be performed.
-24920 | ERR_BACKUPOP: backup operation was unsuccessful | The backup failed due to a problem with the database or with the backup tool.
-24919 | ERR_CLEANUP: cannot clean up correctly after backup operation | Although the backup was successful, the system resources used during the check could not be released.

More Information

Database Administration, Restoring Databases


recover_replace - SAP Documentation

Background documentation recover_replace

Use this command to specify the succeeding data carrier when you are asked by the system to do so.

The reply to this DBM command displays information about the import of the backup. Pay particular attention to the message number displayed in the Returncode field.

Note that this information is only given when the backup operation is completed or interrupted. For this reason, the reply to this command can take a long time.

If you have executed the DBM command and the restore process was interrupted again (message number -8020), specify the next succeeding data carrier with recover_replace.

Repeat this procedure until the data from all the data carriers belonging to the backup has been imported.

Prerequisites

  • You have the server permission Backup.

  • You have executed the DBM command for recovering the database (see: recover_start). The operation was interrupted because the data stored on the data carrier was imported completely. You are still in the same database session.

Structure

recover_replace <medium_name> [ExternalBackupID <ext_backup_ID>] [<loc> [<nnn>]]

Options
Option | Description
<medium_name> | Backup template, or complete file or device name of the succeeding data carrier If you restore a backup, which was made with a backup template defined for several data carriers, enter the name of the group of parallel data carriers here.
ExternalBackupID <external_backup_ID> | Only for restoring a backup, which was created using a backup tool: name under which the backup is known to the backup tool
<loc> | Name of the device/the file in which the backup to be recovered is stored Operating system functions must be able to address the device/file using <loc>.
<nnn> | Only for importing log backups and only for data carriers of the FILE type: version number of the log backup on the data carrier to be imported

Result

OK

Returncode <value>

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Database Administration, Restoring Databases


param_getfull - SAP Documentation

Background documentation param_getfull

With this command you can display all the data stored for the database parameter specified.

Prerequisites

You have the server permission ParamRead.

Structure

param_getfull <parameter_name>

Options
Option | Description
<parameter_name> | Name of the database parameter

Result

OK

<type>

<default> <value>

<property> <value>

<property> <value>

... HELP <help_line>

<help_line>

... EXPLAIN <explain_line>

<explain_line>

...

Values for the Reply Fields
Value | Description
<type> | Data type of the parameter
<default> | System default value
<value> | Current value taken from the parameter file at the start of the session
<property> | Property of the parameter
<help_line> | Help text
<explain_line> | Explanatory text

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display all data of the database parameter RunDirectoryPath:

>dbmcli -u OLEG,MONDAY -d DEMODB param_getfull RunDirectoryPath

OK

string

c:\documents and settings\all users\application data\sdb\data\wrk\DEMODB

CHANGE OFFLINE

INTERN NO

MANDATORY YES

CLEAR YES

DYNAMIC NO

CASESENSITIVE YES

DEVSPACE NO

MODIFY YES

GROUP GENERAL

DISPLAYNAME

VALUESET

MAX

MIN

INSTANCES

SYSDBAONLY YES

CLASS GENERAL

LASTKNOWNGOOD c:\documents and settings\all users\application data\sdb\data\wrk\DEMODB

ACTIVEVALUE c:\documents and settings\all users\application data\sdb\data\wrk\DEMODB

HELP

Path where context and diagnosis information is stored

EXPLAIN

Path where context and diagnosis information is stored for this database instance.

(char(256))

More Information

Database Administration, Database Parameters


Configuring Systems for Remote Monitoring Using the System Lands (SAP Library - SAP MaxDB Library) Directory (SLD)

 Start of Content Area

Procedure documentation Configuring Systems for Remote Monitoring Using the System Landscape Directory (SLD) Locate the document in its SAP Library structure

Use

The system landscape directory (SLD) contains data from all database systems available in your system landscape. You can use this data to set up the system configuration in the DBA Cockpit instead of setting it up manually.

When you set up the DBA Cockpit for the first time, you use this procedure to import the appropriate data from the SLD. During production operation, you use the procedure to synchronize the data between the SLD and the DBA Cockpit periodically.

Procedure

...

1. To import database connection data from the SLD, call the DBA Cockpit.

2. In the system landscape toolbar, choose System Configuration.

The screen The DBA Cockpit: System Configuration Maintenance appears.

3. Choose SLD System Import.

The SLD System Import screen appears. Depending on the system landscape, one or more of the following nodes are displayed:

○ New Database Systems in the SLD

All database systems registered in the SLD that are so far unknown to the DBA Cockpit are displayed.

○ Changed Systems From Earlier SLD Imports

All database systems for which the main data differs between the SLD and the DBA Cockpit are displayed.

○ Systems No Longer Registered in the SLD

All systems that were originally imported from the SLD into the DBA Cockpit but that are no longer registered in the SLD are displayed.

○ Systems Identical in the SLD and in the DBA Cockpit

All systems that are registered in the SLD and that are identical in the DBA Cockpit are displayed.

○ Unsupported Database Systems in the SLD

All database systems that are registered in the SLD but not supported by the DBA Cockpit are displayed.

Each database system is described as follows:

<Name (system ID) of the database system> on <main database host> ( <database platform> )

The actions allowed for each database system are displayed in the second column of the tree.

4. To import database system data, select the actions that you want to execute for the selected database systems and choose Import. By default, only the import of new database systems is selected.

The selected actions are executed. A short message for each executed action is displayed in the message window below.

Connection data that is retrieved from the SLD might not be complete for one of the following reasons:

· Depending on the data provided by a system to the SLD, some connection data can be incomplete.

· User or password data is generally not available via SLD.

When you establish the connection to an imported system, the DBA Cockpit checks the completeness of a configured system. That is, if necessary, you are prompted for user, password and connection information.

If additional connection information is required, enter the required data according to the maintenance dialog that is described in Configuration of Database Connections.

End of Content Area


Operating Logs - SAP Documentation

Procedure documentation Operating Logs

In the Logs user menu of the DBA Cockpit, you can find, among other things, a display of Operating logs (starting, stopping, initializing an SAP liveCache).

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Logs [image] Operating [image] .

Result

The system displays the following:

  • Current Log

  • History

You can also display the control file responsible for the operating.

More Information

Properties


alter_user_statement - SAP Documentation

Syntax documentation alter_user_statement

Syntax Syntax

  1. <alter_user_statement> ::=
  ALTER USER <user_name> [<user_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>]
  | DEFAULT ROLE NONE
  | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]
End of the code.


alias_name - SAP Documentation

Syntax documentation alias_name

Syntax Syntax

  1. <alias_name> ::=
  <identifier>
End of the code.


alter_table_statement - SAP Documentation

Syntax documentation alter_table_statement

Syntax Syntax

  1. <alter_table_statement> ::=
  ALTER TABLE <table_name> <add_definition>
| ALTER TABLE <table_name> <alter_definition>
| ALTER TABLE <table_name> <column_change_definition>
| ALTER TABLE <table_name> <drop_definition>
| ALTER TABLE <table_name> <modify_definition>
| ALTER TABLE <table_name> <referential_constraint_definition>
| ALTER TABLE <table_name> <sample_definition>
| ALTER TABLE <table_name> [NOT] CACHE
| ALTER TABLE <table_name> [NOT] NOCACHE
End of the code.


ascii_or_unicode - SAP Documentation

Syntax documentation ascii_or_unicode

Syntax Syntax

  1. <ascii_or_unicode> ::=
  ASCII
| UNICODE
End of the code.


arithmetic_function - SAP Documentation

Syntax documentation arithmetic_function

Syntax Syntax

  1. <arithmetic_function> ::=
  ABS (<expression>)
| CEIL (<expression>)
| EXP (<expression>)
| FIXED (<expression>[,<unsigned_integer>[,<unsigend_integer>]])
| FLOAT (<expression>,<unsigend_integer>)
| FLOOR (<expression>)
| INDEX (<string_spec>,<string_spec>[,<expression>[,<expression>]])
| LENGTH (<expression>)
| LN (<expression>)
| LOG (<expression>)
| NOROUND (<expression>)
| PI
| POWER (<expression>,<expression>)
| ROUND (<expression>[,<expression>])
| SIGN (<expression>)
| SQRT (<expression>)
| TRUNC (<expression>[,<expression>])
End of the code.


argument - SAP Documentation

Syntax documentation argument

Syntax Syntax

  1. <argument> ::=
  <identifier>
End of the code.


assignment_statement - SAP Documentation

Syntax documentation assignment_statement

Syntax Syntax

  1. <assignment_statement> ::=
  SET <variable_name> = <expression>
End of the code.


argument1 - SAP Documentation

Syntax documentation argument1

Syntax Syntax

  1. <argument1> ::=
  <identifier>
End of the code.


digit - SAP Documentation

Syntax documentation digit

Syntax Syntax

  1. <digit> ::=
  0
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
End of the code.


dbfunction_name - SAP Documentation

Syntax documentation dbfunction_name

Syntax Syntax

  1. <dbfunction_name> ::=
  [<schema_name>.]<identifier>
End of the code.


dbfunction_call - SAP Documentation

Syntax documentation dbfunction_call

Syntax Syntax

  1. <dbfunction_call> ::=
  <dbfunction_name> ( [<expression>,...] )
End of the code.


default_expression - SAP Documentation

Syntax documentation default_expression

Syntax Syntax

  1. <default_expression> ::=
  <expression>
End of the code.


dbproc_name - SAP Documentation

Syntax documentation dbproc_name

Syntax Syntax

  1. <dbproc_name> ::=
  [<schema_name>.]<identifier>
End of the code.


declare_cursor_statement - SAP Documentation

Syntax documentation declare_cursor_statement

Syntax Syntax

  1. <declare_cursor_statement> ::=
  DECLARE <result_table_name> CURSOR FOR <select_statement>
End of the code.


default_predicate - SAP Documentation

Syntax documentation default_predicate

Syntax Syntax

  1. <default_predicate> ::=
  <column_spec> <comp_op> DEFAULT
End of the code.


default_spec - SAP Documentation

Syntax documentation default_spec

Syntax Syntax

  1. <default_spec> ::=
  DEFAULT <literal>
| DEFAULT NULL
| DEFAULT USER
| DEFAULT USERGROUP
| DEFAULT SYSDBA
| DEFAULT DATE
| DEFAULT TIME
| DEFAULT TIMESTAMP
| DEFAULT UTCODE
| DEFAULT UTCDIFF
| DEFAULT TIMEZONE
| DEFAULT TRUE
| DEFAULT FALSE
| DEFAULT TRANSACTION
| DEFAULT SAMP
| DEFAULT SERIAL [(<unsigned_integer>)]
End of the code.


delete_statement - SAP Documentation

Syntax documentation delete_statement

Syntax Syntax

  1. <delete_statement> ::=
  DELETE [FROM] <table_name>
    [<reference_name>]
    [KEY <key_spec>,...] <!  This SQL clause is
          no longer recommended to be used
          and might be removed from future versions.  !>
    [WHERE <search_condition>]
    [IGNORE TRIGGER]
    [NOWAIT]
| DELETE [FROM] <table_name>
    [<reference_name>]
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
End of the code.


delete_rule - SAP Documentation

Syntax documentation delete_rule

Syntax Syntax

  1. <delete_rule> ::=
  ON DELETE CASCADE
| ON DELETE RESTRICT
| ON DELETE SET DEFAULT
| ON DELETE SET NULL
End of the code.


data_type - SAP Documentation

Syntax documentation data_type

Syntax Syntax

  1. <data_type> ::=
  CHAR[ACTER] [(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| VARCHAR [(<unsigned_integer>] [ASCII | BYTE | UNICODE]
| CLOB [ASCII | UNICODE]
| BLOB
| BOOLEAN
| FIXED (<unsigned_integer> [,<unsigned_integer>])
| FLOAT (<unsigned_integer>)
| INT[EGER]
| SMALLINT
| DATE
| TIME
| TIMESTAMP
End of the code.


datetimeformat - SAP Documentation

Syntax documentation datetimeformat

Syntax Syntax

  1. <datetimeformat> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.


date_function - SAP Documentation

Syntax documentation date_function

Syntax Syntax

  1. <date_function>::=
  ADDDATE(<date_or_timestamp_expression>,<expression>)
| ADD_MONTHS(<date_or_timestamp_expression>,<expression>)
| DATEDIFF(<date_or_timestamp_expression>,<date_or_timestamp_expression>)
| DAYNAME(<date_or_timestamp_expression>)
| DAYOFMONTH(<date_or_timestamp_expression>)
| DAYOFWEEK(<date_or_timestamp_expression>)
| DAYOFYEAR(<date_or_timestamp_expression>)
| MAKEDATE(<expression>,<expression>)
| MONTHNAME(<date_or_timestamp_expression>)
| SUBDATE(<date_or_timestamp_expression>,<expression>)
| WEEKOFYEAR(<date_or_timestamp_expression>)
End of the code.


domain_name - SAP Documentation

Syntax documentation domain_name

Syntax Syntax

  1. <domain_name> ::=
  [<schema_name>.]<identifier>
End of the code.


derived_column - SAP Documentation

Syntax documentation derived_column

Syntax Syntax

  1. <derived_column> ::=
  <expression> [ [AS] <result_column_name>]
End of the code.


date_or_timestamp_expression - SAP Documentation

Syntax documentation date_or_timestamp_expression

Syntax Syntax

  1. <date_or_timestamp_expression> ::=
  <expression>
End of the code.


delimiter_token - SAP Documentation

Syntax documentation delimiter_token

Syntax Syntax

  1. <delimiter_token> ::=
  <vertical_slash>
| ,
| .
| +
| -
| *
| /
| <
| >
| <>
| !=
| =
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>
End of the code.


digit_sequence - SAP Documentation

Syntax documentation digit_sequence

Syntax Syntax

  1. <digit_sequence> ::=
  <digit>...
End of the code.


double_quotes - SAP Documentation

Syntax documentation double_quotes

Syntax Syntax

  1. <double_quotes> ::=
  "
End of the code.


distinct_function - SAP Documentation

Syntax documentation distinct_function

Syntax Syntax

  1. <distinct_function> ::=
  <set_function_name>(DISTINCT <expression>)
End of the code.


distinct_spec - SAP Documentation

Syntax documentation distinct_spec

Syntax Syntax

  1. <distinct_spec> ::=
  DISTINCT
| ALL
End of the code.


drop_synonym_statement - SAP Documentation

Syntax documentation drop_synonym_statement

Syntax Syntax

  1. <drop_synonym_statement> ::=
   DROP [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>
End of the code.


drop_table_statement - SAP Documentation

Syntax documentation drop_table_statement

Syntax Syntax

  1. <drop_table_statement> ::=
  DROP TABLE <table_name> [<cascade_option>]
End of the code.


drop_trigger_statement - SAP Documentation

Syntax documentation drop_trigger_statement

Syntax Syntax

  1. <drop_trigger_statement> ::=
  DROP TRIGGER <trigger_name> OF <table_name>
End of the code.


drop_user_statement - SAP Documentation

Syntax documentation drop_user_statement

Syntax Syntax

  1. <drop_user_statement> ::=
  DROP USER <user_name> [<cascade_option>]
End of the code.


drop_usergroup_statement - SAP Documentation

Syntax documentation drop_usergroup_statement

Syntax Syntax

  1. <drop_usergroup_statement> ::=
  DROP USERGROUP <usergroup_name> [<cascade_option>]
End of the code.


drop_view_statement - SAP Documentation

Syntax documentation drop_view_statement

Syntax Syntax

  1. <drop_view_statement> ::=
  DROP VIEW <table_name> [<cascade_option>]
End of the code.


drop_definition - SAP Documentation

Syntax documentation drop_definition

Syntax Syntax

  1. <drop_definition> ::=
  DROP <column_name>,... [<cascade_option>] [RELEASE SPACE]
| DROP (<column_name>,...) [<cascade_option>] [RELEASE SPACE]
| DROP CONSTRAINT <constraint_name>
| DROP PRIMARY KEY
End of the code.


duplicates_clause - SAP Documentation

Syntax documentation duplicates_clause

Syntax Syntax

  1. <duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE
End of the code.


exists_table_statement - SAP Documentation

Syntax documentation exists_table_statement

Syntax Syntax

  1. <exists_table_statement> ::=
  EXISTS TABLE <table_name>
End of the code.


exists_predicate - SAP Documentation

Syntax documentation exists_predicate

Syntax Syntax

  1. <exists_predicate> ::=
  EXISTS <subquery>
End of the code.


explain_statement - SAP Documentation

Syntax documentation explain_statement

Syntax Syntax

  1. <explain_statement> ::=
  EXPLAIN [(<result_table_name>)] <query_statement>
| EXPLAIN [(<result_table_name>)] <single_select_statement>
End of the code.


exponent - SAP Documentation

Syntax documentation exponent

Syntax Syntax

  1. <exponent> ::=
  [<sign>] [[<digit>]<digit>]<digit>
End of the code.


extraction_function - SAP Documentation

Syntax documentation extraction_function

Syntax Syntax

  1. <extraction_function> ::=
  YEAR(<date_or_timestamp_expression>)
| MONTH(<date_or_timestamp_expression>)
| DAY(<date_or_timestamp_expression>)
| HOUR(<time_or_timestamp_expression>)
| MINUTE(<time_or_timestamp_expression>)
| SECOND(<time_or_timestamp_expression>)
| MICROSECOND(<expression>)
| TIMESTAMP(<expression>[,<expression>])
| DATE(<expression>)
| TIME(<expression>)
End of the code.


extended_expression - SAP Documentation

Syntax documentation extended_expression

Syntax Syntax

  1. <extended_expression> ::=
  <expression>
| DEFAULT
| STAMP
End of the code.


extended_letter - SAP Documentation

Syntax documentation extended_letter

Syntax Syntax

  1. <extended_letter> ::=
  #
| @
| $
End of the code.


drop_dbproc_statement - SAP Documentation

Syntax documentation drop_dbproc_statement

Syntax Syntax

  1. <drop_dbproc_statement> ::=
  DROP DBPROC[EDURE] <dbproc_name>
End of the code.


drop_domain_statement - SAP Documentation

Syntax documentation drop_domain_statement

Syntax Syntax

  1. <drop_domain_statement> ::=
  DROP DOMAIN <domain_name>
End of the code.


drop_index_statement - SAP Documentation

Syntax documentation drop_index_statement

Syntax Syntax

  1. <drop_index_statement> ::=
   DROP INDEX <index_name> [ON <table_name>]
End of the code.


drop_role_statement - SAP Documentation

Syntax documentation drop_role_statement

Syntax Syntax

  1. <drop_role_statement> ::=
  DROP ROLE <role_name>
End of the code.


extended_value_spec - SAP Documentation

Syntax documentation extended_value_spec

Syntax Syntax

  1. <extended_value_spec> ::=
  DEFAULT
| STAMP
| <value_spec>
End of the code.


drop_function_statement - SAP Documentation

Syntax documentation drop_function_statement

Syntax Syntax

  1. <drop_function_statement> ::=
  DROP [PUBLIC] FUNCTION <dbfunction_name>
End of the code.


between_predicate - SAP Documentation

Syntax documentation between_predicate

Syntax Syntax

  1. <between_predicate> ::=
  <expression> [NOT] BETWEEN <expression> AND <expression>
End of the code.


formal_parameter1 - SAP Documentation

Syntax documentation formal_parameter1

Syntax Syntax

  1. <formal_parameter1> ::=
  <argument1><data_type>
End of the code.


first_password_character - SAP Documentation

Syntax documentation first_password_character

Syntax Syntax

  1. <first_password_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>
| <digit>
End of the code.


final_select - SAP Documentation

Syntax documentation final_select

Syntax Syntax

  1. <final_select> ::=
  <select_statement>
End of the code.


formal_parameter - SAP Documentation

Syntax documentation formal_parameter

Syntax Syntax

  1. <formal_parameter> ::=
  IN <argument> <data_type>
| OUT <argumnet> <data_type>
| INOUT <argument> <data_type>
End of the code.


fetch_statement - SAP Documentation

Syntax documentation fetch_statement

Syntax Syntax

  1. <fetch_statement> ::=
  FETCH [FIRST | LAST | NEXT | PREV | <position> | SAME]
    [<result_table_name>] INTO <parameter_spec>,...
End of the code.


from_table_spec - SAP Documentation

Syntax documentation from_table_spec

Syntax Syntax

  1. <from_table_spec> ::=
  <table_name> [AS] [<reference_name>]
| <result_table_name> [AS] [<reference_name>]
| (<query_expression>) [AS] [reference_name]
| <joined_table>
| (<from_table_spec>,...)
End of the code.


from_clause - SAP Documentation

Syntax documentation from_clause

Syntax Syntax

  1. <from_clause> ::=
  FROM <from_table_spec>,...
End of the code.


function_spec - SAP Documentation

Syntax documentation function_spec

Syntax Syntax

  1. <function_spec> ::=
  <arithmetic_function>
| <trigonometric_function>
| <string_function>
| <date_function>
| <time_function>
| <extraction_function>
| <special_function>
| <conversion_function>
| <dbfunction_call>
End of the code.


grant_user_statement - SAP Documentation

Syntax documentation grant_user_statement

Syntax Syntax

  1. <grant_user_statement> ::=
  GRANT USER <granted_users>
    [FROM <user_name>] TO <user_name>
End of the code.


grant_usergroup_statement - SAP Documentation

Syntax documentation grant_usergroup_statement

Syntax Syntax

  1. <grant_usergroup_statement> ::=
  GRANT USERGROUP <granted_usergroups>
    [FROM <user_name>] TO <user_name>
End of the code.


grant_statement - SAP Documentation

Syntax documentation grant_statement

Syntax Syntax

  1. <grant_statement> ::=
  GRANT <priv_spec>,... TO <grantee>,... [WITH GRANT OPTION]
| GRANT <schema_priv_spec> TO <grantee>,...
| GRANT EXECUTE ON <dbproc_name> TO <grantee>,...
| GRANT EXECUTE ON <dbfunction_name> TO <grantee>,...
| GRANT SELECT ON <sequence_name> TO <grantee>,... [WITH GRANT OPTION]
End of the code.


group_clause - SAP Documentation

Syntax documentation group_clause

Syntax Syntax

  1. <group_clause> ::=
  GROUP BY <expression>,...
End of the code.


granted_users - SAP Documentation

Syntax documentation granted_users

Syntax Syntax

  1. <granted_users> ::=
  <user_name>,...
| *
End of the code.


granted_usergroups - SAP Documentation

Syntax documentation granted_usergroups

Syntax Syntax

  1. <granted_usergroups> ::=
  <usergroup_name>,...
| *
End of the code.


factor - SAP Documentation

Syntax documentation factor

Syntax Syntax

  1. <factor> ::=
  [<sign>] <value_spec>
| [<sign>] <column_spec>
| [<sign>] <function_spec>
| [<sign>] <set_function_spec>
| <scalar_subquery>
| <expression>
End of the code.


first_character - SAP Documentation

Syntax documentation first_character

Syntax Syntax

  1. <first_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>
End of the code.


fixed_point_literal - SAP Documentation

Syntax documentation fixed_point_literal

Syntax Syntax

  1. <fixed_point_literal> ::=
  [<sign>]<digit_sequence>[.<digit_sequence>]
| [<sign>]<digit_sequence>.
| [<sign>].<digit_sequence>
End of the code.


floating_point_literal - SAP Documentation

Syntax documentation floating_point_literal

Syntax Syntax

  1. <floating_point_literal> ::=
  <mantissa>E<exponent>
| <mantissa>e<exponent>
End of the code.


grantee - SAP Documentation

Syntax documentation grantee

Syntax Syntax

  1. <grantee> ::=
  <user_name>
| <usergroup_name>
| <role_name>
| PUBLIC
End of the code.


comp_op - SAP Documentation

Syntax documentation comp_op

Syntax Syntax

  1. <comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  for computers with ASCII code  !>
| ~< <!  for computers with ASCII code  !>
| ~> <!  for computers with ASCII code  !>
End of the code.


comparison_predicate - SAP Documentation

Syntax documentation comparison_predicate

Syntax Syntax

  1. <comparison_predicate> ::=
  <expression> <comp_op> <expression>
| <expression> <comp_op> <subquery>
| <expression_list> <equal_or_not> (<expression_list>)
| <expression_list> <equal_or_not> <sub_query>
End of the code.


case_else_clause - SAP Documentation

Syntax documentation case_else_clause

Syntax Syntax

  1. <case_else_clause> ::=
  ELSE <statement>;
End of the code.


case_statement - SAP Documentation

Syntax documentation case_statement

Syntax Syntax

  1. <case_statement> ::=
  <simple_case_statement>
| <searched_case_statement>
End of the code.


conversion_function - SAP Documentation

Syntax documentation conversion_function

Syntax Syntax

  1. <conversion_function> ::=
  CHAR(<expression>[,<datetimeformat>])
| CHR(<expression>[,<unsigned_integer>])
| HEX(<expression>)
| HEXTORAW(<expression>)
| INTTORAW(<expression>)
| NUM(<expression>)
End of the code.


check_expression - SAP Documentation

Syntax documentation check_expression

Syntax Syntax

  1. <check_expression> ::=
  <expression>
End of the code.


cascade_option - SAP Documentation

Syntax documentation cascade_option

Syntax Syntax

  1. <cascade_option> ::=
  CASCADE
| RESTRICT
End of the code.


close_statement - SAP Documentation

Syntax documentation close_statement

Syntax Syntax

  1. <close_statement> ::=
  CLOSE [<result_table_name>]
End of the code.


comment_on_statement - SAP Documentation

Syntax documentation comment_on_statement

Syntax Syntax

  1. <comment_on_statement> ::=
  COMMENT ON <object_spec> IS <comment>
End of the code.


comment - SAP Documentation

Syntax documentation comment

Syntax Syntax

  1. <comment> ::=
  <string_literal>
| <parameter_name>
End of the code.


commit_statement - SAP Documentation

Syntax documentation commit_statement

Syntax Syntax

  1. <commit_statement> ::=
  COMMIT [WORK]
End of the code.


connect_statement - SAP Documentation

Syntax documentation connect_statement

Syntax Syntax

  1. <connect_statement> ::=
  CONNECT <parameter_name> IDENTIFIED BY <parameter_name> [<connect_option>...]
| CONNECT <parameter_name> IDENTIFIED BY <password> [<connect_option>...]
| CONNECT <user_name> IDENTIFIED BY <parameter_name> [<connect_option>...]
| CONNECT <user_name> IDENTIFIED BY <password> [<connect_option>...]
End of the code.


constraint_definition - SAP Documentation

Syntax documentation constraint_definition

Syntax Syntax

  1. <constraint_definition> ::=
  CHECK <search_condition>
| CONSTRAINT <search_condition>
| CONSTRAINT <constraint_name> CHECK <search_condition>
End of the code.


connect_option - SAP Documentation

Syntax documentation connect_option

Syntax Syntax

  1. <connect_option> ::=
  SQLMODE <internal_oracle>
| ISOLATION LEVEL <unsigned_integer>
| TIMEOUT <unsigned_integer>
End of the code.


column_list - SAP Documentation

Syntax documentation column_list

Syntax Syntax

  1. <column_list> ::=
  <column_name>
| <column_list>, <column_name>
End of the code.


case_function - SAP Documentation

Syntax documentation case_function

Syntax Syntax

  1. <case_function> ::=
  <simple_case_function>
| <searched_case_function>
End of the code.


constraint_name - SAP Documentation

Syntax documentation constraint_name

Syntax Syntax

  1. <constraint_name> ::=
  <identifier>
End of the code.


column_attributes - SAP Documentation

Syntax documentation column_attributes

Syntax Syntax

  1. <column_attributes> ::=
  [<key_or_not_null_spec>]
  [<default_spec>]
  [UNIQUE]
  [<constraint_definition>]
  [REFERENCES <referenced_table>
    [(<referenced_column>)]
    [<delete_rule>]]
End of the code.


column_definition - SAP Documentation

Syntax documentation column_definition

Syntax Syntax

  1. <column_definition> ::=
  <column_name> <data_type> [<column_attributes>]
| <column_name> <domain_name> [<column_attributes>]
End of the code.


column_name - SAP Documentation

Syntax documentation column_name

Syntax Syntax

  1. <column_name> ::=
  <identifier>
End of the code.


column_spec - SAP Documentation

Syntax documentation column_spec

Syntax Syntax

  1. <column_spec> ::=
  <column_name>
| <table_name>.<column_name>
| <reference_name>.<column_name>
| <result_table_name>.<column_name>
End of the code.


if_statement - SAP Documentation

Syntax documentation if_statement

Syntax Syntax

  1. <if_statement> ::=
  IF <search_condition> THEN <statement>
    [ELSE <statement>]
End of the code.


having_clause - SAP Documentation

Syntax documentation having_clause

Syntax Syntax

  1. <having_clause> ::=
  HAVING <search_condition>
End of the code.


in_predicate - SAP Documentation

Syntax documentation in_predicate

Syntax Syntax

  1. <in_predicate> ::=
  <expression> [NOT] IN <*>
| <expression> [NOT] IN <expression_list>
| <expression_list> [NOT] IN <subquery>
| <expression_list> [NOT] IN (<expression_list>,...)
End of the code.


insert_statement - SAP Documentation

Syntax documentation insert_statement

Syntax Syntax

  1. <insert_statement> ::=
  INSERT [INTO] <table_name>
    [(<column_name>,...)]
    VALUES (<insert_expression>,...)
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
| INSERT [INTO] <table_name>
    [(<column_name>,...)]
    <query_expression>
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
| INSERT [INTO] <table_name>
    SET <set_insert_clause>,...
    [<duplicates_clause>]
    [IGNORE TRIGGER]
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>
End of the code.


index_name - SAP Documentation

Syntax documentation index_name

Syntax Syntax

  1. <index_name> ::=
  <identifier>
End of the code.


indicator_name - SAP Documentation

Syntax documentation indicator_name

Syntax Syntax

  1. <indicator_name> ::=
  <parameter_name>
End of the code.


internal_oracle - SAP Documentation

Syntax documentation internal_oracle

Syntax Syntax

  1. <internal_oracle> ::=
  INTERNAL
| ORACLE
End of the code.


index_column_name - SAP Documentation

Syntax documentation index_column_name

Syntax Syntax

  1. <index_column_name> ::=
  <column_name> [ASC|DESC]
End of the code.


inner_transaction_statement - SAP Documentation

Syntax documentation inner_transaction_statement

Syntax Syntax

  1. <inner_transaction_statement> ::=
  INNER TRANSACTION BEGIN
| INNER TRANSACTION COMMIT
| INNER TRANSACTION ROLLBACK
End of the code.


initial_select - SAP Documentation

Syntax documentation initial_select

Syntax Syntax

  1. <initial_select> ::=
  <query_spec>
End of the code.


hours - SAP Documentation

Syntax documentation hours

Syntax Syntax

  1. <hours> ::=
  <expression>
End of the code.


join_predicate - SAP Documentation

Syntax documentation join_predicate

Syntax Syntax

  1. <join_predicate> ::=
  <expression> [<outer_join_indicator>]
    <comp_op> <expression> [<outer_join_indicator>]
End of the code.


insert_expression - SAP Documentation

Syntax documentation insert_expression

Syntax Syntax

  1. <insert_expression> ::=
  <extended_expression>
| <subquery>
End of the code.


identifier - SAP Documentation

Syntax documentation identifier

Syntax Syntax

  1. <identifier> ::=
  <simple_identifier>
| <double_quotes><special_identifier><double_quotes>
End of the code.


index_spec - SAP Documentation

Syntax documentation index_spec

Syntax Syntax

  1. <index_spec> ::=
  <index_column_name>,...
| <dbfunction_name> (<column_name>,...) [ASC|DESC]
End of the code.


integer - SAP Documentation

Syntax documentation integer

Syntax Syntax

  1. <integer> ::=
  [<sign>]<unsigned_integer>
End of the code.


hex_digit - SAP Documentation

Syntax documentation hex_digit

Syntax Syntax

  1. <hex_digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
| A | B | C | D | E | F
| a | b | c | d | e | f
End of the code.


hex_digit_seq - SAP Documentation

Syntax documentation hex_digit_seq

Syntax Syntax

  1. <hex_digit_seq> ::=
  <hex_digit><hex_digit>
| <hex_digit><hex_digit><hex_digit>
End of the code.


numeric_literal - SAP Documentation

Syntax documentation numeric_literal

Syntax Syntax

  1. <numeric_literal> ::=
  <fixed_point_literal>
| <floating_point_literal>
End of the code.


new_usergroup_name - SAP Documentation

Syntax documentation new_usergroup_name

Syntax Syntax

  1. <new_usergroup_name> ::=
  <usergroup_name>
End of the code.


new_schema_name - SAP Documentation

Syntax documentation new_schema_name

Syntax Syntax

  1. <new_schema_name> ::=
  <schema_name>
End of the code.


mapchar_set_name - SAP Documentation

Syntax documentation mapchar_set_name

Syntax Syntax

  1. <mapchar_set_name> ::=
  <identifier>
End of the code.


match_set - SAP Documentation

Syntax documentation match_set

Syntax Syntax

  1. <match_set> ::=
  <underscore>
| X'1E'
| <match_char>
End of the code.


match_char - SAP Documentation

Syntax documentation match_char

Syntax Syntax

  1. <match_char> ::=
<!  every character except
    %
  | X'1F'
  | <underscore>
  | X'1E'
!>
End of the code.


not_reserved_keyword - SAP Documentation

Syntax documentation not_reserved_keyword

Syntax Syntax

  1. <not_reserved_keyword> ::=
End of the code.
ABS | ACOS | ADD | ADDDATE | ADDRESS
ADDTIME | ADD_MONTH | AFTER | ALPHA | ALTERIN
ANALYZE | AND | ANSI | APPEND | AS
ASC | ASIN | AT | ATAN | ATAN2
AUTHORIZATION | AUTO | AUTOSAVE | AVG |
BAD | BEFORE | BEGIN | BEGINLOAD | BEGINPROC
BETWEEN | BLOCK | BLOCKSIZE | BOTH | BREAK
BUFFER | BUFFERPOOL | BWHIERARCHY | BY |
CACHE | CACHELIMIT | CACHES | CALL | CANCEL
CASCADE | CASE | CATALOG | CATCH | CEIL
CEILING | CHECKPOINT | CHR | CLEAR | CLOSE
CLUSTER | COALESCE | COMMENT | COMMIT | COMPUTE
CONCAT | CONFIG | CONNECT | CONSTRAINTS | CONTAINER
CONTINUE | COS | COSH | COSTLIMIT | COSTWARNING
COT | COUNT | CREATE | CREATEIN | CURRENT_DATE
CURRENT_TIME | CURRENT_TIMESTAMP | CURRVAL | CURSOR | CYCLE
DAFS | DATA | DATEDIFF | DAY | DAYNAME
DAYOFMONTH | DAYOFWEEK | DAYOFYEAR | DAYS | DB2
DBA | DBPROC | DBPROCEDURE | DEBUG | DECLARE
DECODE | DEFAULTCODE | DEGREE | DEGREES | DESC
DESCRIBE | DETERMINISTIC | DEVICE | DIAGNOSE | DIGITS
DIMENSION | DISABLE | DIV | DO | DOMAIN
DROP | DROPIN | DSETPASS | DUPLICATES | DYNAMIC
EDITPROC | ELSE | ENABLE | END | ENDLOAD
ENDPROC | ERROR | ESCAPE | ESTIMATE | EUR
EXCLUSIVE | EXECUTE | EXP | EXPAND | EXPLAIN
EXPLICIT | EXTENDED | EXTERNALLY |  |
FACT | FETCH | FILE | FLOOR | FLUSH
FORCE | FOREIGN | FORMAT | FREEPAGE | FUNCTION
FVERSION |  |  |  |
GET | GET_OBJECTNAME | GET_SCHEMA | GRANT | GREATEST
HEX | HEXTORAW | HIGH | HISTORY | HOLD
HOUR | HOURS |  |  |
IDENTIFIED | IDENTIFIER | IF | IFNULL | IMPLICIT
IMPORT | IN | INCREMENT | INDEX | INDEXNAME
INDICATOR | INFO | INIT | INITCAP | INITRANS
INOUT | INPROC | INSTANCE | INSTR | INTTORAW
IS | ISO | ISOLATION | ISUPDATECOLUMN |
JAVA | JIS |  |  |
LABEL | LANGUAGE | LAST_DAY | LCASE | LEAST
LEFT | LENGTH | LEVEL | LFILL | LIKE
LN | LOAD | LOCAL | LOCATE | LOCK
LOG | LOG10 | LOGFULL | LOGWRITER | LOW
LOWER | LPAD | LTRIM |  |
MAKEDATE | MAKETIME | MAPCHAR | MAX | MAXTRANS
MAXVALUE | MBCS | MEDIANAME | MEDIUM | MICROSECOND
MICROSECONDS | MIGRATE | MIN | MINUS | MINUTE
MINUTES | MINVALUE | MOD | MODE | MODIFY
MONITOR | MONTH | MONTHNAME | MONTHS | MONTHS_BETWEEN
NAME | NEW | NEW_TIME | NEXTVAL | NEXT_DAY
NLSSORT | NLS_DATE_FORMAT | NLS_DATE_LANGUAGE | NLS_LANGUAGE | NLS_SORT
NOCACHE | NOCYCLE | NOLOG | NOMAXVALUE | NOMINVALUE
NONE | NOORDER | NOREWIND | NORMAL | NOROUND
NOSORT | NUM | NUMBER | NVL |
OBID | OFF | ONLY | OPEN | OPTIMISTIC
OPTIMIZE | OPTION | OR | ORACLE | OUT
OUTER | OVERWRITE |  |  |
PACKAGE | PAGE | PAGES | PARAM | PARAMETER
PARSE | PARSEID | PARTITION | PASSWORD | PCTFREE
PCTUSED | PER | PERCENT | PERMANENT | PING
PIPE | POS | POWER | PRECISION | PREPARE
PREPAREDSTATEMENT | PRIV | PRIVILEGES | PROC | PROCEDURE
PSM | PUBLIC |  |  |
QUICK |  |  |  |
RADIANS | RANGE | RAW | RAWTOHEX | READ
RECURSIVE | REFERENCES | REGISTER | RELATIVE | RELEASE
REMOTE | REMOVE | RENAME | REPLACE | REPLICATION
REPOSITORY | RESET | RESOURCE | RESTART | RESTORE
RESTRICT | RESUME | RETURN | RETURNS | REUSE
REVOKE | RFILL | RIGHT | ROLE | ROLLBACK
ROUND | ROW | ROWNUM | ROWS | RPAD
RTRIM |  |  |  |
SAME | SAMPLE | SAPR3 | SAVE | SAVEPOINT
SCHEMA | SECOND | SECONDS | SELECTIVITY | SEQUENCE
SERVERDB | SESSION | SHARE | SHARED | SHUTDOWN
SIGN | SIN | SINH | SNAPSHOT | SOUNDEX
SOUNDS | SPACE | SQLID | SQLMODE | SQRT
STANDARD | STANDBY | START | STARTPOS | STAT
STATE | STATIC | STDDEV | STOP | STORAGE
SUBDATE | SUBPAGES | SUBSTR | SUBSTRING | SUBTIME
SUBTRANS | SUM | SUSPEND | SWITCH | SYNCHRONIZE
SYNONYM | SYSDATE | SYSTEM |  |
TABLESPACE | TAKEOVER | TAN | TANH | TAPE
TEMP | THEN | TIMEDIFF | TIMEOUT | TOIDENTIFIER
TO_CHAR | TO_DATE | TO_NUMBER | TRACE | TRANSLATE
TRIGGER | TRIM | TRUNC | TRUNCATE | TRY
TYPE |  |  |  |
UCASE | UNIQUE | UNKNOWN | UNLOAD | UNLOCK
UNTIL | UNUSED | UPPER | UPSERT | USA
USAGE | USERID |  |  |
VALIDPROC | VALUE | VARCHAR2 | VARIANCE | VERIFY
VERSION | VIEW | VOLUME | VSIZE | VTRACE
WAIT | WEEK | WEEKOFYEAR | WHENEVER | WHILE
WORK | WRITE | WRITER |  |
YEAR | YEARS |  |  |


match_string - SAP Documentation

Syntax documentation match_string

Syntax Syntax

  1. <match_string> ::=
  %
| X'1F'
End of the code.


new_user_name - SAP Documentation

Syntax documentation new_user_name

Syntax Syntax

  1. <new_user_name> ::=
  <user_name>
End of the code.


new_index_name - SAP Documentation

Syntax documentation new_index_name

Syntax Syntax

  1. <new_index_name> ::=
  <index_name>
End of the code.


new_table_name - SAP Documentation

Syntax documentation new_table_name

Syntax Syntax

  1. <new_table_name> ::=
  <table_name>
End of the code.


outer_join_indicator - SAP Documentation

Syntax documentation outer_join_indicator

Syntax Syntax

  1. <outer_join_indicator> ::=
  (+) <!  This SQL clause is
          no longer recommended to be used
          and might be removed from future versions.  !>
End of the code.


password - SAP Documentation

Syntax documentation password

Syntax Syntax

  1. <password> ::=
  <identifier>
| <first_password_character>[<identifier_tail_character>...]
End of the code.


old_password - SAP Documentation

Syntax documentation old_password

Syntax Syntax

  1. <old_password> ::=
  <password>
End of the code.


old_synonym_name - SAP Documentation

Syntax documentation old_synonym_name

Syntax Syntax

  1. <old_synonym_name> ::=
  <synonym_name>
End of the code.


offset - SAP Documentation

Syntax documentation offset

Syntax Syntax

  1. <offset> ::=
  <unsigned_integer>
| <parameter_name>
End of the code.


quantified_predicate - SAP Documentation

Syntax documentation quantified_predicate

Syntax Syntax

  1. <quantified_predicate> ::=
  <expression> <comp_op> <quantifier> <expression_list>
| <expression> <comp_op> <quantifier> <subquery>
| <expression_list> <equal_or_not> <quantifier> (<expression_list>,...)
| <expression_list> <equal_or_not> <quantifier> <subquery>
End of the code.


order_clause - SAP Documentation

Syntax documentation order_clause

Syntax Syntax

  1. <order_clause> ::=
  ORDER BY <sort_spec>,...
End of the code.


parameter_name - SAP Documentation

Syntax documentation parameter_name

Syntax Syntax

  1. <parameter_name> ::=
  :<identifier>
| ?
End of the code.


parameter_spec - SAP Documentation

Syntax documentation parameter_spec

Syntax Syntax

  1. <parameter_spec> ::=
  <parameter_name> [<indicator_name>]
End of the code.


privilege - SAP Documentation

Syntax documentation privilege

Syntax Syntax

  1. <privilege> ::=
  INSERT
| UPDATE [(<column_name>,...)]
| SELECT [(<column_name>,...)]
| SELUPD [(<column_name>,...)]
| DELETE
| INDEX
| ALTER
| REFERENCES [(<column_name>,...)]
End of the code.


priv_spec - SAP Documentation

Syntax documentation priv_spec

Syntax Syntax

  1. <priv_spec> ::=
  ALL [PRIV[ILEGES]] ON [TABLE] <table_name>,...
| <privilege>,... ON [TABLE] <table_name>,...
| <role_name>
End of the code.


predicate - SAP Documentation

Syntax documentation predicate

Syntax Syntax

  1. <predicate> ::=
  <between_predicate>
| <bool_predicate>
| <comparison_predicate>
| <default_predicate>
| <exists_predicate>
| <in_predicate>
| <join_predicate>
| <like_predicate>
| <null_predicate>
| <quantified_predicate>
| <rowno_predicate>
| <sound_predicate>
End of the code.


query_statement - SAP Documentation

Syntax documentation query_statement

Syntax Syntax

  1. <query_statement> ::=
  <declare_cursor_statement>
| <recursive_declare_cursor_statement>
| <select_statement>
End of the code.


query_expression - SAP Documentation

Syntax documentation query_expression

Syntax Syntax

  1. <query_expression> ::=
  <query_term>
| <query_expression> UNION [ALL] <query_term>
| <querry_expression> EXCEPT [ALL] <query_term>
End of the code.


query_spec - SAP Documentation

Syntax documentation query_spec

Syntax Syntax

  1. <query_spec> ::=
  SELECT [<distinct_spec>] [<top_spec>]
    <select_column>,... <table_expression>
End of the code.


query_primary - SAP Documentation

Syntax documentation query_primary

Syntax Syntax

  1. <query_primary> ::=
  <query_spec>
| (<query_expression>)
End of the code.


query_term - SAP Documentation

Syntax documentation query_term

Syntax Syntax

  1. <query_term> ::=
  <query_primary>
| <query_term> INTERSECT [ALL] <query_primary>
End of the code.


object_spec - SAP Documentation

Syntax documentation object_spec

Syntax Syntax

  1. <object_spec> ::=
  COLUMN <table_name>.<column_name>
| DBPROC[EDURE] <dbproc_name>
| DOMAIN <domain_name>
| FOREIGN KEY <table_name>.<referential_constraint_name>
| INDEX <index_name> ON <table_name>
| SEQUENCE <sequence_name>
| [PUBLIC] SYNONYM <synonym_name>
| TABLE <table_name>
| TRIGGER <trigger_name>.<table_name>
| USER <user_name>
| USERGROUP <usergroup_name>
| <parameter_name>
End of the code.


position - SAP Documentation

Syntax documentation position

Syntax Syntax

  1. <position> ::=
  POS (<unsigned_integer>)
| POS (<parameter_spec>)
| ABSOLUTE <integer>
| ABSOLUTE <parameter_spec>
| RELATIVE <integer>
| RELATIVE <parameter_spec>
End of the code.


pattern_element - SAP Documentation

Syntax documentation pattern_element

Syntax Syntax

  1. <pattern_element> ::=
  <match_string>
| <match_set>
End of the code.


quantifier - SAP Documentation

Syntax documentation quantifier

Syntax Syntax

  1. <quantifier> ::=
  ALL
| SOME
| ANY
End of the code.


old_index_name - SAP Documentation

Syntax documentation old_index_name

Syntax Syntax

  1. <old_index_name> ::=
  <index_name>
End of the code.


old_table_name - SAP Documentation

Syntax documentation old_table_name

Syntax Syntax

  1. <old_table_name> ::=
  <table_name>
End of the code.


equal_or_not - SAP Documentation

Syntax documentation equal_or_not

Syntax Syntax

  1. <equal_or_not> ::=
  <>
| =
| ~= <!  for computers with ASCII code  !>
End of the code.


expression_list - SAP Documentation

Syntax documentation expression_list

Syntax Syntax

  1. <expression_list> ::=
  (<expression>,...)
End of the code.


drop_table_temp - SAP Documentation

Syntax documentation drop_table_temp

Syntax Syntax

  1. <drop_table_temp> ::=
  DROP TABLE TEMP.<identifier>
End of the code.


expression - SAP Documentation

Syntax documentation expression

Syntax Syntax

  1. <expression> ::=
  <term>
| <expression> + <term>
| <expression> - <term>
| (<expression>)
| -(<expression>)
End of the code.


drop_schema_statement - SAP Documentation

Syntax documentation drop_schema_statement

Syntax Syntax

  1. <drop_schema_statement> ::=
  DROP SCHEMA <schema_name> [<cascade_option>]
End of the code.


drop_system_trigger_statement - SAP Documentation

Syntax documentation drop_system_trigger_statement

Syntax Syntax

  1. <drop_system_trigger_statement> ::=
  DROP SYSTEM TRIGGER [<schema_name>.]<trigger_name>
End of the code.


drop_sequence_statement - SAP Documentation

Syntax documentation drop_sequence_statement

Syntax Syntax

  1. <drop_sequence_statement> ::=
  DROP SEQUENCE [<schema_name>.]<sequence_name>
End of the code.


bool_predicate - SAP Documentation

Syntax documentation bool_predicate

Syntax Syntax

  1. <bool_predicate> ::=
  <comlumn_spec> [IS [NOT] TRUE | IS [NOT] FALSE]
End of the code.


boolean_factor - SAP Documentation

Syntax documentation boolean_factor

Syntax Syntax

  1. <boolean_factor> ::=
  [NOT] <predicate>
| [NOT] (<search_condition>)
End of the code.


boolean_term - SAP Documentation

Syntax documentation boolean_term

Syntax Syntax

  1. <boolean_term> ::=
  <boolean_factor>
| <boolean_term> AND <boolean_factor>
End of the code.


create_table_temp - SAP Documentation

Syntax documentation create_table_temp

Syntax Syntax

  1. <create_table_temp> ::=
<!  <create_table_statement> for creating temporary tables,
    that is, the table name <table_name> in the
    CREATE TABLE statement must have the form TEMP.<identifier>
!>
End of the code.


create_system_trigger_statement - SAP Documentation

Syntax documentation create_system_trigger_statement

Syntax Syntax

  1. <create_system_trigger_statement> ::=
  CREATE SYSTEM TRIGGER [<schema_name>.]<trigger_name>
    AFTER RESTART EXECUTE (<routine>)
End of the code.


create_function_statement - SAP Documentation

Syntax documentation create_function_statement

Syntax Syntax

  1. <create_function_statement> ::=
  CREATE [PUBLIC] FUNCTION <dbfunction_name>
    [(<formal_parameter1>,...)] RETURNS <data_type>
    [DETERMINISTIC] AS <routine>
End of the code.


create_schema_statement - SAP Documentation

Syntax documentation create_schema_statement

Syntax Syntax

  1. <create_schema_statement> ::=
  CREATE SCHEMA <schema_name_clause> [<schema_element>...]
End of the code.


create_dbproc_statement - SAP Documentation

Syntax documentation create_dbproc_statement

Syntax Syntax

  1. <create_dbproc_statement> ::=
  CREATE DBPROC[EDURE] <dbproc_name> [(<formal_parameter>,...)]
    [RETURNS CURSOR] AS <routine>
End of the code.


create_domain_statement - SAP Documentation

Syntax documentation create_domain_statement

Syntax Syntax

  1. <create_domain_statement> ::=
  CREATE DOMAIN <domain_name> <data_type>
    [<default_spec>] [<constraint_definition>]
End of the code.


create_index_statement - SAP Documentation

Syntax documentation create_index_statement

Syntax Syntax

  1. <create_index_statement> ::=
  CREATE [UNIQUE] INDEX <index_name> ON <table_name> (<index_spec>)
End of the code.


create_role_statement - SAP Documentation

Syntax documentation create_role_statement

Syntax Syntax

  1. <create_role_statement> ::=
  CREATE ROLE <role_name> [IDENTIFIED BY <password>]
End of the code.


create_sequence_statement - SAP Documentation

Syntax documentation create_sequence_statement

Syntax Syntax

  1. <create_sequence_statement> ::=
  CREATE SEQUENCE [<schema_name>.]<sequence_name>
    [INCREMENT BY <integer>]
    [START WITH <integer>
    [MAXVALUE <integer> | NOMAXVALUE]
    [MINVALUE <integer> | NOMINVALUE]
    [CYCLE | NOCYCLE]
    [CACHE <unsigned_integer> | NOCACHE]
    [ORDER | NOORDER]
End of the code.


create_table_statement - SAP Documentation

Syntax documentation create_table_statement

Syntax Syntax

  1. <create_table_statement> ::=
  CREATE TABLE <table_name>
    (<table_description_element> [,<table_description_element>,...])
    [IGNORE ROLLBACK]
    [<sample_definition>]
    [CACHE]
    [NOCACHE]
| CREATE TABLE <table_name>
    [(<table_description_element>,...)]
    [IGNORE ROLLBACK]
    [<sample_definition>]
    AS <query_expression>
    [<duplicates_clause>]
| CREATE TABLE <table_name> LIKE <table_name>
    [IGNORE ROLLBACK]
End of the code.


create_trigger_statement - SAP Documentation

Syntax documentation create_trigger_statement

Syntax Syntax

  1. <create_trigger_statement> ::=
  CREATE TRIGGER <trigger_name> FOR <table_name> AFTER <trigger_event>,...
    EXECUTE (<routine>) [WHENEVER <search_condition>]
End of the code.


create_user_statement - SAP Documentation

Syntax documentation create_user_statement

Syntax Syntax

  1. <create_user_statement> ::=
  CREATE USER <user_name> PASSWORD <password>
    [<user_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTLIMIT <unsigned integer>
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]
| CREATE USER <user_name> PASSWORD <password> LIKE <source_user>
| CREATE USER <user_name> PASSWORD <password> USERGROUP <usergroup_name>
End of the code.


create_usergroup_statement - SAP Documentation

Syntax documentation create_usergroup_statement

Syntax Syntax

  1. <create_usergroup_statement> ::=
  CREATE USERGROUP <usergroup_name>
    [<usergroup_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>]
    [<connect_mode>]
End of the code.


create_view_statement - SAP Documentation

Syntax documentation create_view_statement

Syntax Syntax

  1. <create_view_statement> ::=
  CREATE [OR REPLACE] VIEW <table_name> [(<alias_name>,...)]
    AS <query_expression> [WITH CHECK OPTION]
End of the code.


create_synonym_statement - SAP Documentation

Syntax documentation create_synonym_statement

Syntax Syntax

  1. <create_synonym_statement> ::=
  CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name> FOR <table_name>
| CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name> FOR <sequence_name>
End of the code.


column_change_definition - SAP Documentation

Syntax documentation column_change_definition

Syntax Syntax

  1. <column_change_definition> ::=
  COLUMN <column_name> ADD <default_spec>
| COLUMN <column_name> ALTER <default_spec>
| COLUMN <column_name> DEFAULT NULL
| COLUMN <column_name> DROP DEFAULT
| COLUMN <column_name> NOT NULL
End of the code.


connect_mode - SAP Documentation

Syntax documentation connect_mode

Syntax Syntax

  1. <connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT
End of the code.


character - SAP Documentation

Syntax documentation character

Syntax Syntax

  1. <character> ::=
  <digit>
| <letter>
| <extended_letter>
| <hex_digit>
| <language_specific_character>
| <special_character>
End of the code.


call_statement - SAP Documentation

Syntax documentation call_statement

Syntax Syntax

  1. <call_statement> ::=
  CALL <dbproc_name> [(<expression>,...)] [WITH COMMIT]
End of the code.


like_predicate - SAP Documentation

Syntax documentation like_predicate

Syntax Syntax

  1. <like_predicate> ::=
  <expression> [NOT] LIKE <like_expression> [ESCAPE <expression>]
End of the code.


like_expression - SAP Documentation

Syntax documentation like_expression

Syntax Syntax

  1. <like_expression> ::=
  <expression>
| '<pattern_element>...'
End of the code.


lock_statement - SAP Documentation

Syntax documentation lock_statement

Syntax Syntax

  1. <lock_statement> ::=
  LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN EXCLUSIVE MODE
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE <lock_spec> IN EXCLUSIVE MODE
| LOCK [(WAIT)|(NOWAIT)] <row_spec>... OPTIMISTIC
End of the code.


lock_spec - SAP Documentation

Syntax documentation lock_spec

Syntax Syntax

  1. <lock_spec> ::=
  TABLE <table_name>,..
| <row_spec>
| TABLE <table_name>,... <row_spec>...
End of the code.


lock_option - SAP Documentation

Syntax documentation lock_option

Syntax Syntax

  1. <lock_option> ::=
  WITH LOCK [(IGNORE)|(NOWAIT)] [EXCLUSIVE | OPTIMISTIC] [ISOLATION LEVEL <unsigned_integer>]
End of the code.


literal - SAP Documentation

Syntax documentation literal

Syntax Syntax

  1. <literal> ::=
  <string_literal>
| <numeric_literal>
End of the code.


limit_clause - SAP Documentation

Syntax documentation limit_clause

Syntax Syntax

  1. <limit_clause> ::=
  LIMIT <row_count>
| LIMIT <offset>,<row_count>
End of the code.


key_definition - SAP Documentation

Syntax documentation key_definition

Syntax Syntax

  1. <key_definition> ::=
  PRIMARY KEY (<column_name>,...)
End of the code.


local_variable - SAP Documentation

Syntax documentation local_variable

Syntax Syntax

  1. <local_variable> ::=
  <variable_name> <routine_data_type>
End of the code.


letter - SAP Documentation

Syntax documentation letter

Syntax Syntax

  1. <letter> ::=
  A | B | C | D | E | F | G | H | I | J | K | L | M
  N | O | P | Q | R | S | T | U | V | W | X | Y | Z
  a | b | c | d | e | f | g | h | i | j | k | l | m
  n | o | p | q | r | s | t | u | v | w | x | y | z
End of the code.


local_variables - SAP Documentation

Syntax documentation local_variables

Syntax Syntax

  1. <local_variables> ::=
  VAR <local_variable_list>
End of the code.


language_specific_character - SAP Documentation

Syntax documentation language_specific_character

Syntax Syntax

  1. <language_specific_character> ::=
<!  <every letter that occurs in a Northern, Central,
    or Southern European language and is not included in the <letter> list>
  | <for UNICODE-enabled databases: every character that is not included
    in the ASCII code list from 0 to 127>
!>
End of the code.


local_variable_list - SAP Documentation

Syntax documentation local_variable_list

Syntax Syntax

  1. <local_variable_list> ::=
  <local_variable>
| <local_variable_list>,<local_variable>
End of the code.


key_spec - SAP Documentation

Syntax documentation key_spec

Syntax Syntax

  1. <key_spec> ::=
  <column_name> = <value_spec>
End of the code.


keyword - SAP Documentation

Syntax documentation keyword

Syntax Syntax

  1. <keyword> ::=
  <not_reserved_keyword>
| <reserved_keyword>
End of the code.


key_or_not_null_spec - SAP Documentation

Syntax documentation key_or_not_null_spec

Syntax Syntax

  1. <key_or_not_null_spec> ::=
  [PRIMARY] KEY
| NOT NULL [WITH DEFAULT]
End of the code.


rename_table_statement - SAP Documentation

Syntax documentation rename_table_statement

Syntax Syntax

  1. <rename_table_statement> ::=
  RENAME TABLE <old_table_name> TO <new_table_name>
End of the code.


rename_user_statement - SAP Documentation

Syntax documentation rename_user_statement

Syntax Syntax

  1. <rename_user_statement> ::=
  RENAME USER <user_name> TO <new_user_name>
End of the code.


rename_usergroup_statement - SAP Documentation

Syntax documentation rename_usergroup_statement

Syntax Syntax

  1. <rename_usergroup_statement> ::=
  RENAME USERGROUP <usergroup_name> TO <new_usergroup_name>
End of the code.


rename_view_statement - SAP Documentation

Syntax documentation rename_view_statement

Syntax Syntax

  1. <rename_view_statement> ::=
  RENAME VIEW <old_table_name> TO <new_table_name>
End of the code.


revoke_statement - SAP Documentation

Syntax documentation revoke_statement

Syntax Syntax

  1. <revoke_statement> ::=
  REVOKE <priv_spec>,... FROM <grantee>,...[<cascade_option>]
| REVOKE <schema_priv_spec> FROM <grantee>,...
| REVOKE EXECUTE ON <dbproc_name> FROM <grantee>,...
| REVOKE EXECUTE ON <dbfunction_name> FROM <grantee>,...
| REVOKE SELECT ON <sequence_name> FROM <grantee>,... [<cascade_option>]
End of the code.


referenced_table - SAP Documentation

Syntax documentation referenced_table

Syntax Syntax

  1. <referenced_table> ::=
  <table_name>
End of the code.


hex_literal - SAP Documentation

Syntax documentation hex_literal

Syntax Syntax

  1. <hex_literal> ::=
  x''
| X''
| x'<hex_digit_seq>'
| X'<hex_digit_seq>'
End of the code.


identifier_tail_character - SAP Documentation

Syntax documentation identifier_tail_character

Syntax Syntax

  1. <identifier_tail_character> ::=
| <digit>
| <letter>
| <extended_letter>
| <language_specific_character>
| <underscore>
End of the code.


joined_table - SAP Documentation

Syntax documentation joined_table

Syntax Syntax

  1. <joined_table> ::=
  <from_table_spec>
| <from_table_spec> [INNER] JOIN <from_table_spec> <join_spec>
| <from_table_spec> [LEFT [OUTER] | [RIGHT [OUTER] | FULL [OUTER]] JOIN
    <from_table_spec> <join_spec>
End of the code.


join_spec - SAP Documentation

Syntax documentation join_spec

Syntax Syntax

  1. <join_spec> ::=
  ON <search_condition>
End of the code.


modify_column_definition - SAP Documentation

Syntax documentation modify_column_definition

Syntax Syntax

  1. <modify_column_definition> ::=
  <column_name> <data_type> <column_attributes>
| <column_name> <data_type>
| <column_name> <column_attributes>
End of the code.


minutes - SAP Documentation

Syntax documentation minutes

Syntax Syntax

  1. <minutes> ::=
  <expression>
End of the code.


modify_definition - SAP Documentation

Syntax documentation modify_definition

Syntax Syntax

  1. <modify_definition> ::=
  MODIFY (<modify_column_definition>,...)
End of the code.


monitor_statement - SAP Documentation

Syntax documentation monitor_statement

Syntax Syntax

  1. <monitor_statement> ::=
  MONITOR INIT
End of the code.


new_password - SAP Documentation

Syntax documentation new_password

Syntax Syntax

  1. <new_password> ::=
  <password>
End of the code.


new_synonym_name - SAP Documentation

Syntax documentation new_synonym_name

Syntax Syntax

  1. <new_synonym_name> ::=
  <synonym_name>
End of the code.


mantissa - SAP Documentation

Syntax documentation mantissa

Syntax Syntax

  1. <mantissa> ::=
  <fixed_point_literal>
End of the code.


next_stamp_statement - SAP Documentation

Syntax documentation next_stamp_statement

Syntax Syntax

  1. <next_stamp_statement> ::=
  NEXT STAMP [INTO] <parameter_name>
End of the code.


null_predicate - SAP Documentation

Syntax documentation null_predicate

Syntax Syntax

  1. <null_predicate> ::=
  <expression> IS [NOT] NULL
End of the code.


rollback_to_statement - SAP Documentation

Syntax documentation rollback_to_statement

Syntax Syntax

  1. <rollback_to_statement> ::=
  ROLLBACK TO [SAVEPOINT] <sql_savepoint_name>
End of the code.


referenced_column - SAP Documentation

Syntax documentation referenced_column

Syntax Syntax

  1. <referenced_column> ::=
  <column_name>
End of the code.


rename_schema_statement - SAP Documentation

Syntax documentation rename_schema_statement

Syntax Syntax

  1. <rename_schema_statement> ::=
  RENAME SCHEMA <schema_name> TO <new_schema_name>
End of the code.


release_savepoint_statement - SAP Documentation

Syntax documentation release_savepoint_statement

Syntax Syntax

  1. <release_savepoint_statement> ::=
  RELEASE SAVEPOINT <sql_savepoint_name>
End of the code.


result_expression - SAP Documentation

Syntax documentation result_expression

Syntax Syntax

  1. <result_expression> ::=
  <expression>
End of the code.


row_count - SAP Documentation

Syntax documentation row_count

Syntax Syntax

  1. <row_count> ::=
  <unsigned_integer>
| <parameter_name>
End of the code.


routine_data_type - SAP Documentation

Syntax documentation routine_data_type

Syntax Syntax

  1. <routine_data_type> ::=
  <data_type>
| CURSOR
| PREPAREDSTATEMENT
End of the code.


referential_constraint_name - SAP Documentation

Syntax documentation referential_constraint_name

Syntax Syntax

  1. <referential_constraint_name> ::=
  <identifier>
End of the code.


rollback_statement - SAP Documentation

Syntax documentation rollback_statement

Syntax Syntax

  1. <rollback_statement> ::=
  ROLLBACK [WORK]
End of the code.


row_spec - SAP Documentation

Syntax documentation row_spec

Syntax Syntax

  1. <row_spec> ::=
  ROW <table_name> KEY <key_spec>,...
| ROW <table_name> CURRENT OF <result_table_name>
End of the code.


rowno_predicate - SAP Documentation

Syntax documentation rowno_predicate

Syntax Syntax

  1. <rowno_predicate> ::=
  ROWNO < <unsigned_integer>
| ROWNO < <parameter_spec>
| ROWNO <= <unsigned_integer>
| ROWNO <= <parameter_spec>
End of the code.


referential_constraint_definition - SAP Documentation

Syntax documentation referential_constraint_definition

Syntax Syntax

  1. <referential_constraint_definition> ::=
  FOREIGN KEY [<referential_constraint_name>]
    (<referencing_column>,...)
    REFERENCES <referenced_table>
    [(<referenced_column>,...)]
    [<delete_rule>]
End of the code.


reference_name - SAP Documentation

Syntax documentation reference_name

Syntax Syntax

  1. <reference_name> ::=
  <identifier>
End of the code.


recursive_declare_cursor_statement - SAP Documentation

Syntax documentation recursive_declare_cursor_statement

Syntax Syntax

  1. <recursive_declare_cursor_statement> ::=
  DECLARE <result_table_name> CURSOR FOR
    WITH RECURSIVE <reference_name> (<alias_name>,...)
    AS (<initial_select> UNION ALL <recursive_select>)
    <final_select>
End of the code.


recursive_select - SAP Documentation

Syntax documentation recursive_select

Syntax Syntax

  1. <recursive_select> ::=
  <query_spec>
End of the code.


role_name - SAP Documentation

Syntax documentation role_name

Syntax Syntax

  1. <role_name> ::=
  <identifier>
End of the code.


routine_sql_statement - SAP Documentation

Syntax documentation routine_sql_statement

Syntax Syntax

  1. <routine_sql_statement> ::=
  <call_statement>
| <close_statement>
| <create_table_temp>
| <declare_cursor_statement>
| <delete_statement>
| <drop_table_temp>
| <fetch_statement>
| <insert_statement>
| <lock_statement>
| <recursive_declare_cursor_statement>
| <select_statement>
| <single_select_statement>
| <subtrans_statement>
| <unlock_statement>
| <update_statement>
End of the code.


result_table_name - SAP Documentation

Syntax documentation result_table_name

Syntax Syntax

  1. <result_table_name> ::=
  <identifier>
End of the code.


referencing_column - SAP Documentation

Syntax documentation referencing_column

Syntax Syntax

  1. <referencing_column> ::=
  <column_name>
End of the code.


regular_token - SAP Documentation

Syntax documentation regular_token

Syntax Syntax

  1. <regular_token> ::=
  <literal>
| <keyword>
| <identifier>
| <parameter_name>
End of the code.


reserved_keyword - SAP Documentation

Syntax documentation reserved_keyword

Syntax Syntax

  1. <reserved_keyword> ::=
End of the code.
ABSOLUTE | ALL | ALTER | ANY | ASCII
BINARY | BIT | BLOB | BOOLEAN | BYTE
CHAR | CHARACTER | CHECK | CLOB | COLUMN
CONSTRAINT | CROSS | CURDATE | CURRENT | CURRENT_SCHEMA
CURTIME |  |  |  |
DATABASE | DATE | DEC | DECIMAL | DEFAULT
DELETE | DISTINCT | DOUBLE |  |
EXCEPT | EXISTS |  |  |
FALSE | FIRST | FIXED | FLOAT | FOR
FROM | FULL |  |  |
GRAPHIC | GROUP |  |  |
HAVING |  |  |  |
IGNORE | INNER | INSERT | INT | INTEGER
INTERNAL | INTERSECT | INTO |  |
JOIN |  |  |  |
KEY |  |  |  |
LAST | LIMIT | LIST | LONG | LONGFILE
NATURAL | NCHAR | NCLOB | NEXT | NO
NOT | NOW | NOWAIT | NULL | NUMERIC
NVARCHAR |  |  |  |
OBJECT | OF | ON | ORDER |
PACKED | PI | PREV | PRIMARY |
REAL | REJECT | ROWID | ROWNO |
SELECT | SELUPD | SERIAL | SET | SHOW
SMALLINT | SOME | STAMP | STATISTICS | SYSDBA
TABLE | TIME | TIMESTAMP | TIMEZONE | TO
TOP | TRANSACTION | TRUE |  |
UID | UNICODE | UNION | UPDATE | USER
USERGROUP | USING | UTCDATE | UTCDIFF |
VALUES | VARCHAR | VARGRAPHIC |  |
WHEN | WHERE | WITH |  |
ZONED |  |  |  |


rowno_column - SAP Documentation

Syntax documentation rowno_column

Syntax Syntax

  1. <rowno_column> ::=
  ROWNO [ [AS] <result_column_name>]
End of the code.


result_column_name - SAP Documentation

Syntax documentation result_column_name

Syntax Syntax

  1. <result_column_name> ::=
  <identifier>
End of the code.


routine - SAP Documentation

Syntax documentation routine

Syntax Syntax

  1. <routine> ::=
  [<local_variables>] <statement_list>
End of the code.


release_statement - SAP Documentation

Syntax documentation release_statement

Syntax Syntax

  1. <release_statement> ::=
  COMMIT [WORK] RELEASE
| ROLLBACK [WORK] RELEASE
End of the code.


rename_column_statement - SAP Documentation

Syntax documentation rename_column_statement

Syntax Syntax

  1. <rename_column_statement> ::=
  RENAME COLUMN <table_name>.<column_name> TO <column_name>
End of the code.


rename_index_statement - SAP Documentation

Syntax documentation rename_index_statement

Syntax Syntax

  1. <rename_index_statement> ::=
  RENAME INDEX <old_index_name> [ON <table_name>] TO <new_index_name>
End of the code.


rename_synonym_statement - SAP Documentation

Syntax documentation rename_synonym_statement

Syntax Syntax

  1. <rename_synonym_statement> ::=
  RENAME [PUBLIC] SYNONYM <old_synonym_name> TO <new_synonym_name>
End of the code.


sign - SAP Documentation

Syntax documentation sign

Syntax Syntax

  1. <sign> ::=
  +
| -
End of the code.


savepoint_statement - SAP Documentation

Syntax documentation savepoint_statement

Syntax Syntax

  1. <savepoint_statement> ::=
  SAVEPOINT <sql_savepoint_name>
End of the code.


search_expression - SAP Documentation

Syntax documentation search_expression

Syntax Syntax

  1. <search_expression> ::=
  <expression>
End of the code.


select_statement - SAP Documentation

Syntax documentation select_statement

Syntax Syntax

  1. <select_statement> ::=
  <query_expression>
    [<order_clause>]
    [<limit_clause>]
    [<update_clause>]
    [<lock_option>]
    [FOR REUSE]
End of the code.


set_insert_clause - SAP Documentation

Syntax documentation set_insert_clause

Syntax Syntax

  1. <set_insert_clause> ::=
  <column_name> = <extended_value_spec>
End of the code.


set_update_clause - SAP Documentation

Syntax documentation set_update_clause

Syntax Syntax

  1. <set_update_clause> ::=
  <column_name> = <extended_expression>
| <column_name>,... = (<extended_expression>,...)
| (<column_name>,...) = (<extended_expression>,...)
| <column_name> = <subquery>
| (<column_name>,...) = <subquery>
End of the code.


set_statement - SAP Documentation

Syntax documentation set_statement

Syntax Syntax

  1. <set_statement> ::=
  SET ROLE ALL [EXCEPT <role_name>,...]
| SET ROLE NONE
| SET ROLE <role_name>,... [IDENTIFIED BY <password>]
| SET ISOLATION LEVEL <unsigned_integer>
| SET CURRENT_SCHEMA = <schema_name>
End of the code.


single_select_statement - SAP Documentation

Syntax documentation single_select_statement

Syntax Syntax

  1. <single_select_statement> ::=
  SELECT [<distinct_spec>] <select_column>,... INTO <parameter_spec>,...
    FROM <from_table_spec>,...[<where_clause>] [<group_clause>]
    [<having_clause>] [<lock_option>]
End of the code.


schema_name_clause - SAP Documentation

Syntax documentation schema_name_clause

Syntax Syntax

  1. <schema_name_clause> ::=
  <schema_name>
| <schema_name> AUTHORIZATION <schema_authorization_identifier>
End of the code.


simple_case_function - SAP Documentation

Syntax documentation simple_case_function

Syntax Syntax

  1. <simple_case_function> ::=
  CASE <check_expression>
    WHEN <search_expression> THEN <result_expression>
    [...]
    [ELSE <default_expression>]
  END
End of the code.


searched_case_function - SAP Documentation

Syntax documentation searched_case_function

Syntax Syntax

  1. <searched_case_function> ::=
  CASE
    WHEN <search_condition> THEN <result_expression>
    [...]
    [ELSE <default_expression>]
  END
End of the code.


simple_case_statement - SAP Documentation

Syntax documentation simple_case_statement

Syntax Syntax

  1. <simple_case_statement> ::=
  CASE <expression>
    <simple_case_when_clause>...
    [<case_else_clause>]
  END [CASE]
End of the code.


sample_definition - SAP Documentation

Syntax documentation sample_definition

Syntax Syntax

  1. <sample_definition> ::=
  SAMPLE <unsigned_integer> ROWS
| SAMPLE <unsigned_integer> PERCENT
End of the code.


search_condition - SAP Documentation

Syntax documentation search_condition

Syntax Syntax

  1. <search_condition> ::=
  <boolean_term>
| <search_condition> OR <boolean_term>
End of the code.


scalar_subquery - SAP Documentation

Syntax documentation scalar_subquery

Syntax Syntax

  1. <scalar_subquery> ::=
  <subquery>
End of the code.


searched_case_statement - SAP Documentation

Syntax documentation searched_case_statement

Syntax Syntax

  1. <searched_case_statement> ::=
  CASE
    <searched_case_when_clause>...
    [<case_else_clause>]
  END [CASE]
End of the code.


schema_priv_spec - SAP Documentation

Syntax documentation schema_priv_spec

Syntax Syntax

  1. <schema_priv_spec> ::=
  <schema_privilege> ON <schema_name>,...
End of the code.


schema_privilege - SAP Documentation

Syntax documentation schema_privilege

Syntax Syntax

  1. <schema_privilege> ::=
  CREATEIN
| DROPIN
End of the code.


seconds - SAP Documentation

Syntax documentation seconds

Syntax Syntax

  1. <seconds> ::=
  <expression>
End of the code.


search_and_result_spec - SAP Documentation

Syntax documentation search_and_result_spec

Syntax Syntax

  1. <search_and_result_spec> ::=
  <search_expression>, <result_expression>
End of the code.


simple_identifier - SAP Documentation

Syntax documentation simple_identifier

Syntax Syntax

  1. <simple_identifier> ::=
  <first_character>[<identifier_tail_character>...]
End of the code.


schema_element - SAP Documentation

Syntax documentation schema_element

Syntax Syntax

  1. <schema_element> ::=
  <create_table_statement>
| <create_view_statement>
| <create_dbproc_statement>
| <create_function_statement>
| <create_sequence_statement>
End of the code.


simple_case_when_clause - SAP Documentation

Syntax documentation simple_case_when_clause

Syntax Syntax

  1. <simple_case_when_clause> ::=
  WHEN <literal>[,...] THEN <statement>
End of the code.


searched_case_when_clause - SAP Documentation

Syntax documentation searched_case_when_clause

Syntax Syntax

  1. <searched_case_when_clause> ::=
  WHEN <search_condition> THEN <statement>
End of the code.


schema_authorization_identifier - SAP Documentation

Syntax documentation schema_authorization_identifier

Syntax Syntax

  1. <schema_authorization_identifier> ::=
  <identifier>
End of the code.


schema_name - SAP Documentation

Syntax documentation schema_name

Syntax Syntax

  1. <schema_name> ::=
  <identifier>
End of the code.


select_column - SAP Documentation

Syntax documentation select_column

Syntax Syntax

  1. <select_column> ::=
  <table_columns>
| <derived_column>
| <rowno_column>
| <stamp_column>
End of the code.


sequence_name - SAP Documentation

Syntax documentation sequence_name

Syntax Syntax

  1. <sequence_name> ::=
  <identifier>
End of the code.


set_function_spec - SAP Documentation

Syntax documentation set_function_spec

Syntax Syntax

  1. <set_function_spec> ::=
  COUNT (*)
| <all_function>
| <distinct_function>
End of the code.


set_function_name - SAP Documentation

Syntax documentation set_function_name

Syntax Syntax

  1. <set_function_name> ::=
  AVG
| COUNT
| MAX
| MIN
| STDDEV
| SUM
| VARIANCE
End of the code.


statement - SAP Documentation

Syntax documentation statement

Syntax Syntax

  1. <statement> ::=
  BEGIN <statement_list> END
| BREAK
| CONTINUE
| CONTINUE EXECUTE
| EXECUTE <expression>
| <if_statement>
| <while_statement>
| <assignment_statement>
| <case_statement>
| OPEN :<local_variable> FOR <select_statement>
| PREPARE <local_variable> FOR <expression>
| RETURN [<expression>]
| STOP (<expression> [,<expression>] )
| TRY <statement_list>; CATCH <statement>
| <routine_sql_statement>
End of the code.


sql_comment - SAP Documentation

Syntax documentation sql_comment

Syntax Syntax

  1. <sql_comment> ::=
  /*<sql_comment_text>*/
 |--<sql_comment_text>
End of the code.


SQL Syntax Changes - SAP Documentation

Background documentation SQL Syntax Changes

Some SQL syntax changes were made in the transition from database version 7.7 to version 7.8. They are listed below.

SQL Syntax in Version 7.8 | Change in Version 7.8 as Compared to Older Versions
ADD_MONTHS(t,a) | You can use this date function.
INSERT Statement | The SQL clause INSERT ... SET... is no longer recommended to be used and might be removed from future versions.
Key Specification UPDATE Statement DELETE Statement | The SQL clause key specification (key_spec) is no longer recommended to be used in UPDATE or DELETE statements and might be removed in these SQL statements from future versions.
OUTER JOIN Indicator | This SQL clause is no longer recommended to be used and might be removed from future versions.
UPDATE Statement | The SQL clause UPDATE ... VALUES ... is no longer recommended to be used and might be removed from future versions.
Updateable Join View Table | An updatable join view table is no longer recommended to be used and might be removed from future versions.
Definitions of the System Tables | System table information has been changed, deleted, or added.

More Information

SQL Syntax

SQL Reference Manual


sort_spec - SAP Documentation

Syntax documentation sort_spec

Syntax Syntax

  1. <sort_spec> ::=
  <unsigned_integer> [ASC | DESC]
| <expression> [ASC | DESC]
End of the code.


sound_predicate - SAP Documentation

Syntax documentation sound_predicate

Syntax Syntax

  1. <sound_predicate> ::=
  <expression> [NOT] SOUNDS [LIKE] <expression>
End of the code.


subtrans_statement - SAP Documentation

Syntax documentation subtrans_statement

Syntax Syntax

  1. <subtrans_statement> ::=
  SUBTRANS BEGIN
| SUBTRANS END
| SUBTRANS ROLLBACK
End of the code.


source_user - SAP Documentation

Syntax documentation source_user

Syntax Syntax

  1. <source_user> ::=
  <user_name>
End of the code.


sql_savepoint_name - SAP Documentation

Syntax documentation sql_savepoint_name

Syntax Syntax

  1. <sql_savepoint_name> ::=
  <identifier>
End of the code.


sql_comment_text - SAP Documentation

Syntax documentation sql_comment_text

Syntax Syntax

  1. <sql_comment_text> ::=
  <!  comment text  !>
End of the code.


subquery - SAP Documentation

Syntax documentation subquery

Syntax Syntax

  1. <subquery> ::=
  (<query_expression>)
End of the code.


sql_statement - SAP Documentation

Syntax documentation sql_statement

Syntax Syntax

  1. <sql_statement> ::=
  <alter_index_statement>
| <alter_password_statement>
| <alter_table_statement>
| <alter_user_statement>
| <alter_usergroup_statement>
| <call_statement>
| <close_statement>
| <comment_on_statement>
| <commit_statement>
| <connect_statement>
| <create_dbproc_statement>
| <create_domain_statement>
| <create_function_statement>>
| <create_index_statement>
| <create_role_statement>
| <create_schema_statement>
| <create_sequence_statement>
| <create_synonym_statement>
| <create_system_trigger_statement>
| <create_table_statement>
| <create_trigger_statement>
| <create_user_statement>
| <create_usergroup_statement>
| <create_view_statement>
| <delete_statement>
| <drop_dbproc_statement>
| <drop_domain_statement>
| <drop_function_statement>
| <drop_index_statement>
| <drop_role_statement>
| <drop_schema_statement>
| <drop_sequence_statement>
| <drop_synonym_statement>
| <drop_system_trigger_statement>
| <drop_table_statement>
| <drop_trigger_statement>
| <drop_user_statement>
| <drop_usergroup_statement>
| <drop_view_statement>
| <exists_table_statement>
| <explain_statement>
| <fetch_statement>
| <grant_statement>
| <grant_user_statement>
| <grant_usergroup_statement>
| <inner_transaction_statement>
| <insert_statement>
| <lock_statement>
| <monitor_statement>
| <next_stamp_statement>
| <query_statement>>
| <release_statement>
| <rename_column_statement>
| <rename_index_statement>
| <rename_schema_statement>
| <rename_synonym_statement>
| <rename_table_statement>
| <rename_user_statement>
| <rename_usergroup_statement>
| <rename_view_statement>
| <revoke_statement>
| <rollback_statement>
| <rollback_to_statement>
| <savepoint_statement>
| <set_statement>
| <single_select_statement>
| <subtrans_statement>
| <unlock_statement>
| <update_statement>
| <update_statistics_statement>
End of the code.


statement_list - SAP Documentation

Syntax documentation statement_list

Syntax Syntax

  1. <statement_list> ::=
  <statement>
| <statement_list> ; <statement>
End of the code.


special_character - SAP Documentation

Syntax documentation special_character

Syntax Syntax

  1. <special_character> ::=
<!  every character except
    <digit>
  | <letter>
  | <extended_letter>
  | <hex_digit>
  | <language_specific_character>
  | <!  character for the end of a line in a file  !>
!>
End of the code.


stamp_column - SAP Documentation

Syntax documentation stamp_column

Syntax Syntax

  1. <stamp_column> ::=
  STAMP [ [AS] <result_column_name>]
End of the code.


special_function - SAP Documentation

Syntax documentation special_function

Syntax Syntax

  1. <special_function> ::=
  <case_function>
| DECODE(<check_expression>,<search_and_result_spec>,...[,<default_expression>])
| GREATEST(<expression>,<expression>,...)
| LEAST(<expression>,<expression>,...)
| VALUE(<expression>,<expression>,...)
End of the code.


special_identifier - SAP Documentation

Syntax documentation special_identifier

Syntax Syntax

  1. <special_identifier> ::=
  <special_identifier_character>...
End of the code.


special_identifier_character - SAP Documentation

Syntax documentation special_identifier_character

Syntax Syntax

  1. <special_identifier_character> ::=
  <!  any <character>  !>
End of the code.


string_function - SAP Documentation

Syntax documentation string_function

Syntax Syntax

  1. <string_function> ::=
  ALPHA(<string_spec>[,<unsigned_integer>])
| ASCII(<string_spec>)
| CONCAT(<string_spec>,<string_spec>)
| EXPAND(<string_spec>)
| LFILL(<string_spec>,<string_literal>[,<unsigned_integer>])
| LOWER(<string_spec>)
| LPAD(<string_spec>,<expression>,<string_literal>[,<unsigned_integer>])
| LTRIM(<string_spec>[,<string_spec>])
| MAPCHAR(<string_spec>[,<unsigned_integer>][,<mapchar_set_name>])
| REPLACE(<string_spec>,<string_spec>[,<string_spec>])
| RFILL(<string_spec>,<string_literal>,[,<unsigned_integer>])
| RPAD(<string_spec>,<expression>,<string_literal>[,<unsigned_integer>])
| RTRIM(<string_spec>[,<string_spec>])
| SOUNDEX(<string_spec>)
| SQLMODE()
| SUBSTR(<string_spec>,<expression>[,<expression>])
| TRANSLATE(<string_spec>,<string_spec>,<string_spec>)
| TRIM(<string_spec>[,<string_spec>])
| UPPER(<string_spec>)
| <string_spec> || <string_spec>
| <string_spec> & <string_spec>
End of the code.


string_literal - SAP Documentation

Syntax documentation string_literal

Syntax Syntax

  1. <string_literal> ::=
  ''
| '<character>...'
| <hex_literal>
End of the code.


string_spec - SAP Documentation

Syntax documentation string_spec

Syntax Syntax

  1. <string_spec> ::=
  <expression>
End of the code.


synonym_name - SAP Documentation

Syntax documentation synonym_name

Syntax Syntax

  1. <synonym_name> ::=
  <identifier>
End of the code.


trigger_name - SAP Documentation

Syntax documentation trigger_name

Syntax Syntax

  1. <trigger_name> ::=
  <identifier>
End of the code.


trigonometric_function - SAP Documentation

Syntax documentation trigonometric_function

Syntax Syntax

  1. <trigonometric_function> ::=
  COS ( <expression> )
| SIN ( <expression> )
| TAN ( <expression> )
| COT ( <expression> )
| COSH ( <expression> )
| SINH ( <expression> )
| TANH ( <expression> )
| ACOS ( <expression> )
| ASIN ( <expression> )
| ATAN ( <expression> )
| ATAN2 ( <expression>, <expression>)
| RADIANS ( <expression> )
| DEGREES ( <expression> )
End of the code.


unique_definition - SAP Documentation

Syntax documentation unique_definition

Syntax Syntax

  1. <unique_definition> ::=
  [CONSTRAINT <index_name>] UNIQUE (<column_name>,...)
End of the code.


unlock_statement - SAP Documentation

Syntax documentation unlock_statement

Syntax Syntax

  1. <unlock_statement> ::=
  UNLOCK <row_spec> ... IN SHARE MODE
| UNLOCK <row_spec> ... IN EXCLUSIVE MODE
| UNLOCK <row_spec> ... IN SHARE MODE <row_spec> ...IN EXCLUSIVE MODE
| UNLOCK <row_spec> ... OPTIMISTIC
End of the code.


update_statistics_statement - SAP Documentation

Syntax documentation update_statistics_statement

Syntax Syntax

  1. <update_statistics_statement> ::=
  UPDATE STAT[ISTICS] COLUMN <table_name>.<column_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] COLUMN (<column_name>,...) FOR <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] COLUMN (*) FOR <table_name>
    [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] <table_name> [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] [<schema_name>.][<identifier>]* [ESTIMATE [<sample_definition>]]
| UPDATE STAT[ISTICS] AS PER SYSTEM TABLE [ESTIMATE [<sample_definition>]
End of the code.


update_statement - SAP Documentation

Syntax documentation update_statement

Syntax Syntax

  1. <update_statement> ::=
  UPDATE [OF] <table_name>
    [<reference_name>]
    SET <set_update_clause>,...
    [KEY <key_spec>,..] <!  This SQL clause is
          no longer recommended to be used and
          might be removed from future versions.  !>
    [WHERE <search_condition>]
    [NOWAIT]
    [IGNORE TRIGGER]
| UPDATE [OF] <table_name>
    [<reference_name>]
    SET <set_update_clause>,...
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
| UPDATE [OF] <table_name>
    [<reference_name>]
    (<column_name>,...)
    VALUES (<extended_value_spec>,...)
    [KEY <key_spec>,...]
    [WHERE <search_condition>]
    [NOWAIT]
    [IGNORE TRIGGER]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>
| UPDATE [OF] <table_name>
    [<reference_name>]
    (<column_name>,...
    VALUES (<extended_value_spec>,...)
    WHERE CURRENT OF <result_table_name>
    [NOWAIT]
<!  This SQL clause is no longer recommended to be used
    and might be removed from future versions.  !>
End of the code.


update_clause - SAP Documentation

Syntax documentation update_clause

Syntax Syntax

  1. <update_clause> ::=
  FOR UPDATE [OF <column_name>,...] [NOWAIT]
End of the code.


where_clause - SAP Documentation

Syntax documentation where_clause

Syntax Syntax

  1. <where_clause> ::=
  WHERE <search_condition>
End of the code.


time_function - SAP Documentation

Syntax documentation time_function

Syntax Syntax

  1. <time_function> ::=
  ADDTIME ( <time_or_timestamp_expression>, <time_expression> )
| SUBTIME ( <time_or_timestamp_expression>, <time_expression> )
| TIMEDIFF ( <time_or_timestamp_expression>, <time_or_timestamp_expression> )
| MAKETIME ( <hours>, <minutes>, <seconds> )
End of the code.


while_statement - SAP Documentation

Syntax documentation while_statement

Syntax Syntax

  1. <while_statement> ::=
  WHILE <search_condition> DO <statement>
End of the code.


term - SAP Documentation

Syntax documentation term

Syntax Syntax

  1. <term> ::=
  <factor>
| <term> * <factor>
| <term> / <factor>
| <term> DIV <factor>
| <term> MOD <factor>
End of the code.


vertical_slash - SAP Documentation

Syntax documentation vertical_slash

Syntax Syntax

  1. <vertical_slash> ::=
  |
End of the code.


top_spec - SAP Documentation

Syntax documentation top_spec

Syntax Syntax

  1. <top_spec> ::=
  TOP <unsigned_integer>
| TOP <parameter_name>
End of the code.


token - SAP Documentation

Syntax documentation token

Syntax Syntax

  1. <token> ::=
  <regular_token>
| <delimiter_token>
End of the code.


usergroup_name - SAP Documentation

Syntax documentation usergroup_name

Syntax Syntax

  1. <usergroup_name> ::=
  <identifier>
End of the code.


user_name - SAP Documentation

Syntax documentation user_name

Syntax Syntax

  1. <user_name> ::=
  <identifier>
End of the code.


table_description_element - SAP Documentation

Syntax documentation table_description_element

Syntax Syntax

  1. <table_description_element> ::=
  <column_definition>
| <constraint_definition>
| <referential_constraint_definition>
| <key_definition>
| <unique_definition>
End of the code.


trigger_event - SAP Documentation

Syntax documentation trigger_event

Syntax Syntax

  1. <trigger_event> ::=
  INSERT
| UPDATE [(<column_list>)]
| DELETE
End of the code.


unsigned_integer - SAP Documentation

Syntax documentation unsigned_integer

Syntax Syntax

  1. <unsigned_integer> ::=
  <numeric_literal>
End of the code.


time_expression - SAP Documentation

Syntax documentation time_expression

Syntax Syntax

  1. <time_expression> ::=
  <expression>
End of the code.


time_or_timestamp_expression - SAP Documentation

Syntax documentation time_or_timestamp_expression

Syntax Syntax

  1. <time_or_timestamp_expression> ::=
  <expression>
End of the code.


underscore - SAP Documentation

Syntax documentation underscore

Syntax Syntax

  1. <underscore> ::=
  _
End of the code.


user_mode - SAP Documentation

Syntax documentation user_mode

Syntax Syntax

  1. <user_mode> ::=
  DBA
| RESOURCE
| STANDARD
End of the code.


usergroup_mode - SAP Documentation

Syntax documentation usergroup_mode

Syntax Syntax

  1. <usergroup_mode> ::=
  RESOURCE
| STANDARD
End of the code.


variable_name - SAP Documentation

Syntax documentation variable_name

Syntax Syntax

  1. <variable_name> ::=
  <identifier>
End of the code.


table_columns - SAP Documentation

Syntax documentation table_columns

Syntax Syntax

  1. <table_columns> ::=
  *
| <table_name>.*
| <reference_name>.*
End of the code.


value_spec - SAP Documentation

Syntax documentation value_spec

Syntax Syntax

  1. <value_spec> ::=
  <literal>
| <parameter_spec>
| NULL
| USER
| USERGROUP
| SYSDBA
| CURRENT_SCHEMA
| UID
| [<schema_name>.]<sequence_name>.NEXTVAL
| [<schema_name>.]<sequence_name>.CURRVAL
| <table_name>.CURRVAL
| DATE
| TIME
| TIMESTAMP
| UTCDATE
| TIMEZONE
| UTCDIFF
| TRUE
| FALSE
| TRANSACTION
End of the code.


table_expression - SAP Documentation

Syntax documentation table_expression

Syntax Syntax

  1. <table_expression> ::=
  <from_clause> [<where_clause>] [<group_clause>] [<having_clause>]
End of the code.


table_name - SAP Documentation

Syntax documentation table_name

Syntax Syntax

  1. <table_name> ::=
  [<schema_name>.]<identifier>
End of the code.


Actions (View) - SAP Documentation

Background documentation Actions (View)

In the Actions view, the system displays actions such as individual steps for backing up and restoring data. The system can execute long-running actions in the background.

Caution Caution

When you close Database Studio, the system terminates all actions.

End of the caution.

Activities

To bring a long-running action back to the foreground, double-click the action.


Processes - SAP Documentation

Background documentation Processes

A process is an instance of a computer program that is sequentially executed. Every process uses operating system resources.

Processes
Microsoft Windows |  | Unix and Linux |  | Function
Process Name | Process Owner (Operating System User) | Process Name | Process Owner (Operating System User) |
dbanalyzer.exe | When started on the command line: logged-on operating system user When called from another database tool: Local System Account | dbanalyzer | When started on the command line: logged-on operating system user When called from another database tool: sdb | Database Analyzer
dbmcli.exe | logged-on operating system user | dbmcli | logged-on operating system user | Database Manager CLI
DBMGui3.exe | logged-on operating system user | - | - | Database Manager GUI
dbmsrv.exe | Local System Account | dbmsrv | sdb | DBM Server
dbstudio.exe | logged-on operating system user | dbstudio | logged-on operating system user | Database Studio
kernel.exe | Local System Account | kernel | sdb | Database system kernel Every database has its own kernel process. On Microsoft Windows, the kernel of the database runs as an individual operating system process. On Unix and Linux, the kernel uses two operating system processes: upon starting, the database system generates a watchdog process which then directly starts the actual kernel process.
loadercli.exe | logged-on operating system user | loadercli | logged-on operating system user | Loader
- On Microsoft Windows, NI support is an integral part of the global listener. | - | niserver | sdb | NI server (for connections with SAPRouter, in SAP systems only)
- On Microsoft Windows, NISSL support is an integral part of the global listener. | - | nisslserver | sdb | NISSL server (for SSL connections with SAPRouter, in SAP systems only)
serv.exe | Local System Account | sdbgloballistener | sdb | Global listener On Unix and Linux, a new child process is started for each database connection.
serv.exe | Local System Account | vserver | sdb | SAP MaxDB X server (communication server) On Unix and Linux, a new child process is started for each database connection.
sqlcli.exe | logged-on operating system user | sqlcli | logged-on operating system user | SQLCLI
SQLSto.exe | logged-on operating system user | - | - | SQL Studio


autocommit_command - SAP Documentation

Syntax documentation autocommit_command

Syntax Syntax

  1. <autocommit_command> ::=
  AUTOCOMMIT ON
| AUTOCOMMIT OFF
End of the code.


sql_mode_command - SAP Documentation

Syntax documentation sql_mode_command

Syntax Syntax

  1. <sql_mode_command> ::=
  SQLMODE <sql_mode>
End of the code.


use_database_command - SAP Documentation

Syntax documentation use_database_command

Syntax Syntax

  1. <use_database_command> ::=
  USE DB <database_spec>
End of the code.


set_command - SAP Documentation

Syntax documentation set_command

Syntax Syntax

  1. <set_command> ::=
  SET
| SET <bool_spec>
| SET <code_page_spec>
| SET <isolation_level_spec>
| SET <null_spec>
| SET <number_spec>
| SET BACKUPTOOL <backup_tool_spec>
| SET CODETYPE <standard_code_spec>
| SET CONFIGURATION <exclude_include>
| SET CSV '/<separator>/<delimiter>/'
| SET CURRENT_SCHEMA = <schema_name>
| SET DATE <standard_date_mask>
| SET FORMAT <standard_date_mask>
| SET LOGFILEPATH '<loader_log_file_path>' [DELETELOGFILE]
| SET MAXERRORCOUNT <unsigned_integer>
| SET TIME <standard_time_mask>
| SET TIMESTAMP <standard_timestamp_mask>
| SET TRANSACTION SIZE <unsigned_integer>
End of the code.


database_spec - SAP Documentation

Syntax documentation database_spec

Syntax Syntax

  1. <database_spec> ::=
  <database_name> [ON <database_computer> [ENCRYPTION <protocol_name>]]
End of the code.


use_user_command - SAP Documentation

Syntax documentation use_user_command

Syntax Syntax

  1. <use_user_command> ::=
  USE USER <user_spec>
    [SCHEMA <schema_name>] [DB <database_spec>] [<isolation_level_spec>]
End of the code.


isolation_level_spec - SAP Documentation

Syntax documentation isolation_level_spec

Syntax Syntax

  1. <isolation_level_spec> ::=
  ISOLATION LEVEL <unsigned_integer>
End of the code.


bool_spec - SAP Documentation

Syntax documentation bool_spec

Syntax Syntax

  1. <bool_spec> ::=
  BOOLEAN '<true_value>/<false_value>'
End of the code.


sql_mode - SAP Documentation

Syntax documentation sql_mode

Syntax Syntax

  1. <sql_mode> ::=
  INTERNAL
| ORACLE
End of the code.


code_page_spec - SAP Documentation

Syntax documentation code_page_spec

Syntax Syntax

  1. <code_page_spec> ::=
  CODEPAGE [<literal>]
End of the code.


usage_spec - SAP Documentation

Syntax documentation usage_spec

Syntax Syntax

  1. <usage_spec> ::=
  RECORDS USAGE
| PAGE WITH <unsigned_integer> % USAGE
| PAGE WITH <unsigned_integer> RECORDS USAGE
End of the code.


catalog_instream_spec - SAP Documentation

Syntax documentation catalog_instream_spec

Syntax Syntax

  1. <catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>
End of the code.


code_spec - SAP Documentation

Syntax documentation code_spec

Syntax Syntax

  1. <code_spec> ::=
  <standard_code_spec>
| CODESET <literal>
End of the code.


timestamp_spec - SAP Documentation

Syntax documentation timestamp_spec

Syntax Syntax

  1. <timestamp_spec> :=
  TIMESTAMP <standard_timestamp_mask>
| TIMESTAMP '<free_mask_timestamp>'
End of the code.


column_spec - SAP Documentation

Syntax documentation column_spec

Syntax Syntax

  1. <column_spec>::=
  <column_name>
| <column_id>
End of the code.


map_column_field - SAP Documentation

Syntax documentation map_column_field

Syntax Syntax

  1. <map_column_field> ::=
  <column_spec> <field_spec> <field_function> <null_assign>
End of the code.


map_field_column - SAP Documentation

Syntax documentation map_field_column

Syntax Syntax

  1. <map_field_column> ::=
  <column_name> <field_spec> <field_function>
End of the code.


column_assignment - SAP Documentation

Syntax documentation column_assignment

Syntax Syntax

  1. <column_assignment> ::=
  <column_name> '<literal>'
| <column_name> <column_function>
End of the code.


catalog_outstream_spec - SAP Documentation

Syntax documentation catalog_outstream_spec

Syntax Syntax

  1. <catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>
End of the code.


import_command - SAP Documentation

Syntax documentation import_command

Syntax Syntax

  1. <import_command> ::=
  <import_db_command>
| <import_user_command>
| <import_schema_command>
| <import_table_command>
| <import_columns_command>
End of the code.


set_column_spec - SAP Documentation

Syntax documentation set_column_spec

Syntax Syntax

  1. <set_column_spec> ::=
  SET <import_column_spec>
End of the code.


noheader_spec - SAP Documentation

Syntax documentation noheader_spec

Syntax Syntax

  1. <noheader_spec> ::=
  NOHEADER <unsigned_integer>
End of the code.


int_spec - SAP Documentation

Syntax documentation int_spec

Syntax Syntax

  1. <int_spec> ::=
  INTEGER HILO
| INTEGER LOHI
End of the code.


lob_code_spec - SAP Documentation

Syntax documentation lob_code_spec

Syntax Syntax

  1. <lob_code_spec> ::=
  <code_spec>
| BINARY
End of the code.


compare_operator - SAP Documentation

Syntax documentation compare_operator

Syntax Syntax

  1. <compare_operator> ::=
  <
| >
| =
| <=
| >=
| !=
End of the code.


select_expression - SAP Documentation

Syntax documentation select_expression

Syntax Syntax

  1. <select_expression> ::=
  <!  <select_statement> without key word SELECT  !>
End of the code.


standard_date_mask - SAP Documentation

Syntax documentation standard_date_mask

Syntax Syntax

  1. <standard_date_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.


package_spec - SAP Documentation

Syntax documentation package_spec

Syntax Syntax

  1. <package_spec> ::=
  PACKAGE <outstream_csv_spec>
End of the code.


condition - SAP Documentation

Syntax documentation condition

Syntax Syntax

  1. <condition> ::=
  (<condition>)
| <condition> AND <condition>
| <condition> OR <condition>
| NOT <condition>
| <simple_condition>
End of the code.


round_or_trunc_spec - SAP Documentation

Syntax documentation round_or_trunc_spec

Syntax Syntax

  1. <round_or_trunc_spec> ::=
  <unsigned_integer>
| TRUNC <unsigned_integer>
End of the code.


remark_command - SAP Documentation

Syntax documentation remark_command

Syntax Syntax

  1. <remark_command> ::=
  REMARK "<literal>"
End of the code.


column_function - SAP Documentation

Syntax documentation column_function

Syntax Syntax

  1. <column_function> ::=
  DATE
| FALSE
| STAMP
| TIME
| TIMESTAMP
| TRUE
| USER
| USERGROUP
| <sequence_number>
End of the code.


user_spec - SAP Documentation

Syntax documentation user_spec

Syntax Syntax

  1. <user_spec> ::=
  <database_user> <password>
End of the code.


import_user_command - SAP Documentation

Syntax documentation import_user_command

Syntax Syntax

  1. <import_user_command> ::=
  IMPORT USER
    [<duplicates_clause>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]
End of the code.


table_dataformat_spec - SAP Documentation

Syntax documentation table_dataformat_spec

Syntax Syntax

  1. <table_dataformat_spec> ::=
  PAGES
| RECORDS <records_format_spec>
End of the code.


export_schema_command - SAP Documentation

Syntax documentation export_schema_command

Syntax Syntax

  1. <export_schema_command> ::=
  EXPORT SCHEMA <schema_name>
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]
End of the code.


outstream_pages_spec - SAP Documentation

Syntax documentation outstream_pages_spec

Syntax Syntax

  1. <outstream_pages_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' [PAGES]
End of the code.


instream_pages_spec - SAP Documentation

Syntax documentation instream_pages_spec

Syntax Syntax

  1. <instream_pages_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' [PAGES]
End of the code.


outstream_records_spec - SAP Documentation

Syntax documentation outstream_records_spec

Syntax Syntax

  1. <outstream_records_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' RECORDS [<records_format_spec>]
End of the code.


export_table_command - SAP Documentation

Syntax documentation export_table_command

Syntax Syntax

  1. <export_table_command> ::=
  EXPORT <table_name>
    [<order_clause>]
    <catalog_data_outstream_table_spec>
    [<package_spec>]
End of the code.


export_db_command - SAP Documentation

Syntax documentation export_db_command

Syntax Syntax

  1. <export_db_command> ::=
  EXPORT DB
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]
End of the code.


import_db_command - SAP Documentation

Syntax documentation import_db_command

Syntax Syntax

  1. <import_db_command> ::=
  IMPORT DB
    [<duplicates_clause>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]
End of the code.


records_format_spec - SAP Documentation

Syntax documentation records_format_spec

Syntax Syntax

  1. <records_format_spec> ::=
  <field_format_spec> ...
End of the code.


fwv_format_spec - SAP Documentation

Syntax documentation fwv_format_spec

Syntax Syntax

  1. <fwv_format_spec> ::=
  <null_spec>
| <int_spec>
| <field_format_spec>
End of the code.


csv_format_spec - SAP Documentation

Syntax documentation csv_format_spec

Syntax Syntax

  1. <csv_format_spec> ::=
  <separator_spec>
| <delimiter_spec>
| <null_spec>
| <field_format_spec>
End of the code.


column_dataformat_spec - SAP Documentation

Syntax documentation column_dataformat_spec

Syntax Syntax

  1. <column_dataformat_spec> ::=
  CSV <csv_format_spec> ...
| FWV [BINARY] <fwv_format_spec> ...
| FWV BINARY <fwv_format_spec> ... <noheader_spec>
End of the code.


data_outstream_table_spec - SAP Documentation

Syntax documentation data_outstream_table_spec

Syntax Syntax

  1. <data_outstream_table_spec> ::=
  <data_outstream_part_spec>
| <data_oustream_column_spec>
End of the code.


instream_records_spec - SAP Documentation

Syntax documentation instream_records_spec

Syntax Syntax

  1. <instream_records_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    RECORDS [<records_format_spec>]
End of the code.


outstream_lob_spec - SAP Documentation

Syntax documentation outstream_lob_spec

Syntax Syntax

  1. <outstream_lob_spec> ::=
  OUTSTREAM [FILE] <column_spec> '<stream_name>' [<lob_code_spec>]
End of the code.


instream_lob_spec - SAP Documentation

Syntax documentation instream_lob_spec

Syntax Syntax

  1. <instream_lob_spec> ::=
  INSTREAM [FILE] <column_spec> <lob_code_spec>
| INSTREAM [FILE] <column_spec> '<stream_name>' [<lob_code_spec>]
End of the code.


outstream_fwv_spec - SAP Documentation

Syntax documentation outstream_fwv_spec

Syntax Syntax

  1. <outstream_fwv_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    FWV [<fwv_format_spec> ...] [<start_spec>]
End of the code.


instream_fwv_spec - SAP Documentation

Syntax documentation instream_fwv_spec

Syntax Syntax

  1. <instream_fwv_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    FWV [<fwv_format_spec> ...] [<start_spec>]
End of the code.


outstream_columnformat_spec - SAP Documentation

Syntax documentation outstream_columnformat_spec

Syntax Syntax

  1. <outstream_columnformat_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [<column_dataformat_spec>] [<start_spec>]
End of the code.


instream_columnformat_spec - SAP Documentation

Syntax documentation instream_columnformat_spec

Syntax Syntax

  1. <instream_columnformat_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [<column_dataformat_spec>][<start_spec>]
End of the code.


outstream_tableformat_spec - SAP Documentation

Syntax documentation outstream_tableformat_spec

Syntax Syntax

  1. <outstream_tableformat_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' [<table_dataformat_spec>]
End of the code.


instream_tableformat_spec - SAP Documentation

Syntax documentation instream_tableformat_spec

Syntax Syntax

  1. <instream_tableformat_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' [<table_dataformat_spec>]
End of the code.


outstream_ddl_spec - SAP Documentation

Syntax documentation outstream_ddl_spec

Syntax Syntax

  1. <outstream_ddl_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' [DDL]
End of the code.


instream_ddl_spec - SAP Documentation

Syntax documentation instream_ddl_spec

Syntax Syntax

  1. <instream_ddl_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' [DDL]
End of the code.


import_lobcolumn_spec - SAP Documentation

Syntax documentation import_lobcolumn_spec

Syntax Syntax

  1. <import_lobcolumn_spec> ::=
  LOB <instream_lob_spec>
End of the code.


data_instream_columns_spec - SAP Documentation

Syntax documentation data_instream_columns_spec

Syntax Syntax

  1. <data_instream_columns_spec> ::=
  DATA <instream_columnformat_spec>
    [<import_column_spec> ... <import_lobcolumn_spec> ...] [<usage_spec>]
End of the code.


export_lobcolumn_spec - SAP Documentation

Syntax documentation export_lobcolumn_spec

Syntax Syntax

  1. <export_lobcolumn_spec> ::=
  LOB <outstream_lob_spec>
End of the code.


data_instream_column_spec - SAP Documentation

Syntax documentation data_instream_column_spec

Syntax Syntax

  1. <data_instream_column_spec> ::=
  DATA <instream_columnformat_spec> [<import_lobcolumn_spec> ...]
End of the code.


data_outstream_column_spec - SAP Documentation

Syntax documentation data_outstream_column_spec

Syntax Syntax

  1. <data_outstream_column_spec> ::=
  DATA <outstream_columnformat_spec> [<export_lobcolumn_spec> ...]
End of the code.


data_outstream_part_spec - SAP Documentation

Syntax documentation data_outstream_part_spec

Syntax Syntax

  1. <data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>
End of the code.


data_instream_table_spec - SAP Documentation

Syntax documentation data_instream_table_spec

Syntax Syntax

  1. <data_instream_table_spec> ::=
  <data_instream_part_spec>
| <data_instream_columns_spec>
End of the code.


catalog_data_outstream_table_spec - SAP Documentation

Syntax documentation catalog_data_outstream_table_spec

Syntax Syntax

  1. <catalog_data_outstream_table_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_table_spec>
| <catalog_outstream_spec> <data_outstream_table_spec>
End of the code.


catalog_data_instream_part_spec - SAP Documentation

Syntax documentation catalog_data_instream_part_spec

Syntax Syntax

  1. <catalog_data_instream_part_spec> ::=
  <catalog_instream_spec>
| <data_instream_part_spec>
| <catalog_instream_spec> <data_instream_part_spec>
End of the code.


catalog_data_outstream_part_spec - SAP Documentation

Syntax documentation catalog_data_outstream_part_spec

Syntax Syntax

  1. <catalog_data_outstream_part_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_part_spec>
| <catalog_outstream_spec> <data_outstream_part_spec>
End of the code.


data_instream_part_spec - SAP Documentation

Syntax documentation data_instream_part_spec

Syntax Syntax

  1. <data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>
End of the code.


backup_tool_spec - SAP Documentation

Syntax documentation backup_tool_spec

Syntax Syntax

  1. <backup_tool_spec> ::=
  BACKINT
| NETWORKER
| TSM
End of the code.


exclude_include - SAP Documentation

Syntax documentation exclude_include

Syntax Syntax

  1. <exclude_include> ::=
  EXCLUDE
| INCLUDe
End of the code.


column_id - SAP Documentation

Syntax documentation column_id

Syntax Syntax

  1. <column_id> ::=
  <unsigned_integer>
End of the code.


use_schema_map_command - SAP Documentation

Syntax documentation use_schema_map_command

Syntax Syntax

  1. <use_schema_map_command> ::=
  USE SCHEMAMAP <schema_map_name>
End of the code.


schema_map_name - SAP Documentation

Syntax documentation schema_map_name

Syntax Syntax

  1. <schema_map_name> ::=
  <identifier>
End of the code.


schema_to_schema - SAP Documentation

Syntax documentation schema_to_schema

Syntax Syntax

  1. <schema_to_schema> ::=
  <schema_name> TO <schema_name>
End of the code.


map_schema_spec - SAP Documentation

Syntax documentation map_schema_spec

Syntax Syntax

  1. <map_schema_spec> ::=
  MAP SCHEMA [<schema_map_name> | <schema_to_schema>,...]
End of the code.


Syntax Rules: Sorted Semantically - SAP Documentation

Syntax documentation Syntax Rules: Sorted Semantically

The syntax used for Loader commands is the Backus Naur Form (BNF). Each Loader command comprises one or more keywords, arguments and syntax rules. Blank characters are permitted in commands and are not interpreted by the Loader. The following conventions apply:

Syntax Notation

Explanation

KEYWORDS

Keywords are shown in uppercase letters for the sake of clarity. They can be entered in uppercase or lowercase letters.

If you use keywords as names of columns, tables, or database users, you must place them in double quotation marks.

<xyz>

Terms in angle brackets are placeholders for end symbols explained in this document. Do not use angle brackets when entering a Loader statement.

These are user inputs. Note that you might have to place these entries in single quotation marks, if the syntax rule requires this. End symbols are numbers, characters, literals, or keywords and are not expanded further.

<! text !>

Texts enclosed in angled brackets and exclamation points indicate that the syntactical unit is explained by means of a text. Do not enter the angled brackets or exclamation points when specifying a Loader command.

rule ::= rule section

Rules are the building blocks of Loader commands. Rule sections describe how these building blocks are put together to form more complex clauses and also dictate the notation that is used.

A rule section is any combination of rules and end symbols.

rule1 rule2

The two rules are written one after the other, separated by at least one blank.

[rule]

Optional rule. This rule can be omitted entirely. Do not enter the square brackets when specifying a command.

rule1 | rule2 | ... | rule<n>

Alternative rules. You can use exactly one of the rules.

rule,...

The rule can be repeated as often as required. The individual repetitions must be written one after the other and separated by a comma and any number of blanks.

rule ...

The rule can be repeated as often as required. The individual repetitions must be written one after the other and separated by spaces.

The following overview lists the syntax rules required for the Loader commands, sorted semantically. The syntax rules can also be displayed alphabetically: Syntax Rules: Sorted Alphabetically. You will find a detailed description of the Loader commands in the Loader documentation. For examples of using syntax, see the Loader Tutorial.

Syntax Syntax

  1. <set_command>    ::= SET
                   | SET CSV '/<separator>/<delimiter>/'
                   | SET <null_spec>
                   | SET <bool_spec>
                   | SET <number_spec>
                   | SET FORMAT <standard_date_mask>
                   | SET DATE <standard_date_mask>
                   | SET TIME <standard_time_mask>
                   | SET TIMESTAMP <standard_timestamp_mask>
                   | SET CODETYPE <standard_code_spec>
                   | SET <code_page_spec>
                   | SET <isolation_level_spec>
                   | SET TRANSACTION SIZE <unsigned_integer>
                   | SET CURRENT_SCHEMA = <schema_name>
                   | SET MAXERRORCOUNT <unsigned_integer>
                   | SET CONFIGURATION <exclude_include>
                   | SET BACKUPTOOL <backup_tool_spec>
                   | SET LOGFILEPATH '<loader_log_file_path>' [DELETELOGFILE]

<separator_spec> ::= SEPARATOR '<separator>'
<separator>      ::= <character>
<delimiter_spec> ::= DELIMITER '<delimiter>'
<delimiter>      ::= <character>
<null_spec>      ::= NULL '<literal>'
<bool_spec>      ::= BOOLEAN '<true_value>/<false_value>'
<true_value>     ::= <!  SET command  !>
<false_value>    ::= <!  SET command  !>

<date_spec>      ::= DATE <standard_date_mask> | DATE '<free_mask_date>'
<time_spec>      ::= TIME <standard_time_mask> | TIME '<free_mask_time>'
<timestamp_spec> ::= TIMESTAMP <standard_timestamp_mask> | TIMESTAMP '<free_mask_timestamp>'
<standard_date_mask>      ::= EUR | INTERNAL | ISO | JIS | USA
<standard_time_mask>      ::= EUR | INTERNAL | ISO | JIS | USA
<standard_timestamp_mask> ::= EUR | INTERNAL | ISO | JIS | USA
<free_mask_date>          ::= <!  Date specifications  !>
<free_mask_time>          ::= <!  Time specifications  !>
<free_mask_timestamp>     ::= <!  Time stamp specifications  !>

<number_spec>             ::= DECIMAL '/[<digit_grouping_symbol>]/<decimal_symbol>/'
<digit_grouping_symbol>   ::= <!  SET command  !>
<decimal_symbol>          ::= <!  SET command  !>

<int_spec>                ::= INTEGER HILO | INTEGER LOHI

<lob_code_spec>           ::= <code_spec> | BINARY
<code_spec>               ::= <standard_code_spec> | CODESET <literal>
<standard_code_spec>      ::= ASCII | UCS2 | UTF8
<code_page_spec>          ::= CODEPAGE [<literal>]

<exclude_include>         ::= EXCLUDE | INCLUDE
<backup_tool_spec>        ::= BACKINT | NETWORKER | TSM

<sql_mode_command>        ::= SQLMODE <sql_mode>
<sql_mode>                ::= INTERNAL | ORACLE
<isolation_level_spec>    ::= ISOLATION LEVEL <unsigned_integer>
<autocommit_command>      ::= AUTOCOMMIT ON | AUTOCOMMIT OFF

<remark_command>          ::= REMARK "<literal>"

<use_database_command>    ::= USE DB <database_spec>
<use_user_command>        ::= USE USER <user_spec> [SCHEMA <schema_name>]
                              [DB <database_spec>] [<isolation_level_spec>]
<use_schema_command>      ::= USE SCHEMA <schema_name>
<use_schema_map_command>  ::= USE SCHEMAMAP <schema_map_name>
<database_spec>           ::= <database_name> [ON <database_computer>
                              [ENCRYPTION <protocol_name>]]
<user_spec>               ::= <database_user> <password>
<database_computer>       ::= <!  USE DB command  !>
<database_name>           ::= <!  USE DB command  !>
<protocol_name>           ::= <!  USE DB command  !>
<database_user>           ::= <!  SQL Reference Manual  !>
<password>                ::= <!  SQL Reference Manual  !>

<schema_name>         ::= <identifier>
<schema_map_name>     ::= <identifier>
<table_name>          ::= [<schema_name>.]<identifier>

<column_spec>         ::= <column_name> | <column_id>
<column_name>         ::= <identifier>
<column_id>           ::= <unsigned_integer>
<column_function>     ::= TRUE | FALSE | DATE | TIME | TIMESTAMP | STAMP
                        | USER | USERGROUP | <sequence_number>
<sequence_number>     ::= SEQNO | SEQNO integer | SEQNO <integer> <integer>

<field_spec>          ::= <unsigned_integer> | <unsigned_integer> - <unsigned_integer>
<field_type>          ::= /* empty */ | CHAR | DECIMAL [<unsigned_integer>]
                        | INTEGER | REAL | ZONED [<unsigned_integer>]
<field_function>      ::= <field_type> [HEX] | <numerical_functions>
                        | <field_type> [HEX] <numerical_functions>
<numerical_functions> ::= <scale_spec> | <round_or_trunc_spec>
                        | <scale_spec> <round_or_trunc_spec>
<round_or_trunc_spec> ::= ROUND <unsigned_integer> | TRUNC <unsigned_integer>
<scale_spec>          ::= SCALE <unsigned_integer>

<map_column_field> ::= <column_name> <field_spec> <field_function> <null_assign>
<map_field_column> ::= <column_name> <field_spec> <field_function>
<map_schema_spec>  ::= MAP SCHEMA [<schema_map_name> | <schema_to_schema>,...]
<schema_to_schema> ::= <schema_name> TO <schema_name>

<null_assign>      ::= [IF] NULL SET '<literal>'
<null_condition>   ::= NULL [IF] <condition> | DEFAULT NULL
<if_condition>     ::= IF <condition>
<condition>        ::= (<condition>) | <condition> AND <condition>
                     | <condition> OR <condition> | NOT <condition>
                     | <simple_condition>
<simple_condition> ::= POS <field_spec> <field_type> [HEX] <compare_operator> '<literal>'
<compare_operator> ::= < | > | = | <= | >= | !=

<export_command>         ::= <export_db_command>
                           | <export_user_command>
                           | <export_schema_command>
                           | <export_table_command>
                           | <export_columns_command>
<import_command>         ::= <import_db_command>
                           | <import_user_command>
                           | <import_schema_command>
                           | <import_table_command>
                           | <import_columns_command>

<export_db_command>      ::= EXPORT DB
                             [<configuration_spec>]
                              <catalog_data_outstream_part_spec>
                             [<package_spec>]
                             [<restart_spec>]
<import_db_command>      ::= IMPORT DB
                             [<duplicates_clause>]
                             [<configuration_spec>]
                              <catalog_data_instream_part_spec>
                             [<package_spec>]
                             [<restart_spec>]

<export_user_command>    ::= EXPORT USER
                             [<configuration_spec>]
                              <catalog_data_outstream_part_spec>
                             [<package_spec>]
                             [<restart_spec>]
<import_user_command>    ::= IMPORT USER
                             [<duplicates_clause>]
                             [<configuration_spec>]
                              <catalog_data_instream_part_spec>
                             [<package_spec>]
                             [<restart_spec>]

<export_schema_command>  ::= EXPORT SCHEMA <schema_name>
                             [<configuration_spec>]
                              <catalog_data_outstream_part_spec>
                             [<package_spec>]
                             [<restart_spec>]
<import_schema_command>  ::= IMPORT SCHEMA <schema_name>
                             [<duplicates_clause>]
                             [<map_schema_spec>]
                             [<configuration_spec>]
                              <catalog_data_instream_part_spec>
                             [<package_spec>]
                             [<restart_spec>]

<export_table_command>   ::= EXPORT TABLE <table_name>
                             [<order_clause>]
                              <catalog_data_outstream_table_spec>
                             [<package_spec>]
<import_table_command>   ::= IMPORT TABLE <table_name>
                             [<if_condition>]
                             [<duplicates_clause>]
                              <catalog_data_instream_table_spec>
                             [<package_spec>]

<export_columns_command> ::= EXPORT COLUMNS <select_expression>
                             [MAP COLUMNS <export_column_spec> ...]
                              <data_outstream_column_spec>
<select_expression>      ::= <!  <select_statement> without key word SELECT  !>
<export_column_spec>     ::= <map_column_field> | <field_assignment>
<field_assignment>       ::= '<literal>' <field_spec>
<import_columns_command> ::= IMPORT COLUMNS TABLE <table_name>
                             [<if_condition>]
                             [<duplicates_clause>]
                              <import_column_spec> ...
                              <data_instream_column_spec>
<import_column_spec>     ::= <map_field_column> [<null_condition>] | <column_assignment>
<column_assignment>      ::= <column_name> '<literal>' | <column_name> <column_function>

<update_columns_command> ::= UPDATE COLUMNS TABLE <table_name>
                             [<if_condition>]
                              <update_column_spec> ... <set_column_spec> ...
                              <data_instream_column_spec>
<update_column_spec>     ::= <map_field_column> | <column_assignment>
<set_column_spec>        ::= SET <import_column_spec>

<order_clause>           ::= ORDER BY <column_name>,...
<duplicates_clause>      ::= REJECT DUPLICATES | IGNORE DUPLICATES
                           | UPDATE DUPLICATES
<start_spec>             ::= START <unsigned_integer> [MAXROWS]
                           | START <unsigned_integer> [MAXRECORDS]
                           | START <unsigned_integer> <unsigned_integer>
<restart_spec>           ::= RESTART <package_guid>
<package_guid>           ::= <unsigned_integer>

<catalog_data_outstream_part_spec>  ::= <catalog_outstream_spec>
                                      | <data_outstream_part_spec>
                                      | <catalog_outstream_spec> <data_outstream_part_spec>
<catalog_data_instream_part_spec>   ::= <catalog_instream_spec>
                                      | <data_instream_part_spec>
                                      | <catalog_instream_spec data_instream_part_spec>
<catalog_data_outstream_table_spec> ::= <catalog_outstream_spec>
                                      | <data_outstream_table_spec>
                                      | <catalog_outstream_spec> <data_outstream_table_spec>
<catalog_data_instream_table_spec>  ::= <catalog_instream_spec>
                                      | <data_instream_table_spec>
                                      | <catalog_instream_spec> <data_instream_table_spec>

<data_outstream_table_spec>         ::= <data_outstream_part_spec>
                                      | <data_outstream_column_spec>
<data_instream_table_spec>          ::= <data_instream_part_spec>
                                      | <data_instream_columns_spec>

<configuration_spec>          ::= CONFIGURATION <instream_csv_spec>
<catalog_outstream_spec>      ::= CATALOG <outstream_ddl_spec>
<catalog_instream_spec>       ::= CATALOG <instream_ddl_spec>
<data_outstream_part_spec>    ::= DATA <outstream_tableformat_spec>
<data_instream_part_spec>     ::= DATA <instream_tableformat_spec>
<data_instream_columns_spec>  ::= DATA <instream_columnformat_spec>
                                  [<import_column_spec> ... <import_lobcolumn_spec> ...]
                                  [<usage_spec>]
<data_outstream_column_spec>  ::= DATA <outstream_columnformat_spec>
                                  [<export_lobcolumn_spec> ...]
<data_instream_column_spec>   ::= DATA <instream_columnformat_spec>
                                  [<import_lobcolumn_spec> ...]
<export_lobcolumn_spec>       ::= LOB <outstream_lob_spec>
<import_lobcolumn_spec>       ::= LOB <instream_lob_spec>
<package_spec>                ::= PACKAGE <outstream_csv_spec>

<outstream_ddl_spec>          ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>' [DDL]
<instream_ddl_spec>           ::= INSTREAM [<mediumtype_spec>] '<stream_name>' [DDL]
<outstream_tableformat_spec>  ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [<table_dataformat_spec>]
<instream_tableformat_spec>   ::= INSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [<table_dataformat_spec>]
<outstream_columnformat_spec> ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [<column_dataformat_spec>] [<start_spec>]
<instream_columnformat_spec>  ::= INSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [<column_dataformat_spec>] [<start_spec>]
<outstream_csv_spec>          ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [CSV [<csv_format_spec> ...]] [<start_spec>]
<instream_csv_spec>           ::= INSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [CSV [<csv_format_spec> ...]] [<start_spec>]
<outstream_fwv_spec>          ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>'
                                  FWV [<fwv_format_spec> ...] [<start_spec>]
<instream_fwv_spec>           ::= INSTREAM [<mediumtype_spec>] '<stream_name>'
                                  FWV [<fwv_format_spec> ...] [<start_spec>]
<outstream_lob_spec>          ::= OUTSTREAM [FILE] <column_spec> '<stream_name>'
                                  [<lob_code_spec>]
<instream_lob_spec>           ::= INSTREAM [FILE] <column_spec> <lob_code_spec>
                                | INSTREAM [FILE] <column_spec> '<stream_name>'
                                  [<lob_code_spec>]
<outstream_records_spec>      ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>'
                                  RECORDS [<records_format_spec>]
<instream_records_spec>       ::= INSTREAM [<mediumtype_spec>] '<stream_name>'
                                  RECORDS [<records_format_spec>]
<outstream_pages_spec>        ::= OUTSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [PAGES]
<instream_pages_spec>         ::= INSTREAM [<mediumtype_spec>] '<stream_name>'
                                  [PAGES]

<mediumtype_spec>             ::= FILE | PIPE | TAPE [<ebid_spec>]
<ebid_spec>                   ::= EBID '<literal>'
<stream_name>                 ::= <!  Data stream  !>
<usage_spec>                  ::= RECORDS USAGE
                                | PAGE WITH <unsigned_integer> % USAGE
                                | PAGE WITH <unsigned_integer> RECORDS USAGE
<table_dataformat_spec>       ::= PAGES | RECORDS <records_format_spec>
<column_dataformat_spec>      ::= CSV <csv_format_spec> ...
                                | FWV [BINARY] <fwv_format_spec> ...
                                | FWV BINARY <fwv_format_spec> ... <noheader_spec>
<csv_format_spec>             ::= <separator_spec> | <delimiter_spec>
                                | <null_spec> | <field_format_spec>
<fwv_format_spec>             ::= <null_spec> | <int_spec> | <field_format_spec>
<records_format_spec>         ::= <field_format_spec> ...
<field_format_spec>           ::= <bool_spec> | <code_spec> | <date_spec>
                                | number_spec | time_spec | timestamp_spec
<noheader_spec>               ::= NOHEADER <unsigned_integer>

<character>                   ::= <!  SQL Reference Manual  !>
<identifier>                  ::= <!  SQL Reference Manual  !>
<literal>                     ::= <!  SQL Reference Manual  !>
<unsigned_integer>            ::= <!  SQL Reference Manual  !>
End of the code.


null_assign - SAP Documentation

Syntax documentation null_assign

Syntax Syntax

  1. <null_assign> ::=
  [IF] NULL SET '<literal>'
End of the code.


import_column_spec - SAP Documentation

Syntax documentation import_column_spec

Syntax Syntax

  1. <import_column_spec> ::=
  <map_field_column> [<null_condition>]
| <column_assignment>
End of the code.


import_schema_command - SAP Documentation

Syntax documentation import_schema_command

Syntax Syntax

  1. <import_schema_command> ::=
  IMPORT SCHEMA <schema_name>
    [<duplicates_clause>]
    [<map_schema_spec>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]
End of the code.


delimiter_spec - SAP Documentation

Syntax documentation delimiter_spec

Syntax Syntax

  1. <delimiter_spec> ::=
  DELIMITER '<character>'
End of the code.


standard_time_mask - SAP Documentation

Syntax documentation standard_time_mask

Syntax Syntax

  1. <standard_time_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.


export_user_command - SAP Documentation

Syntax documentation export_user_command

Syntax Syntax

  1. <export_user_command> ::=
  EXPORT USER
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]
End of the code.


import_columns_command - SAP Documentation

Syntax documentation import_columns_command

Syntax Syntax

  1. <import_columns_command> ::=
  IMPORT COLUMNS TABLE <table_name>
    [<if_condition>]
    [<duplicates_clause>]
    <import_column_spec> ...
    <data_instream_column_spec>
End of the code.


instream_csv_spec - SAP Documentation

Syntax documentation instream_csv_spec

Syntax Syntax

  1. <instream_csv_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [CSV [<csv_format_spec> ...]] [<start_spec>]
End of the code.


field_type - SAP Documentation

Syntax documentation field_type

Syntax Syntax

  1. <field_type> ::=
  /* empty */
| CHAR
| DECIMAL [<unsigned_integer>]
| INTENGER
| REAL
| ZONED [<unsigned_integer>]
End of the code.


separator_spec - SAP Documentation

Syntax documentation separator_spec

Syntax Syntax

  1. <separator_spec> ::=
  SEPARATOR '<separator>'
End of the code.


configuration_spec - SAP Documentation

Syntax documentation configuration_spec

Syntax Syntax

  1. <configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>
End of the code.


export_command - SAP Documentation

Syntax documentation export_command

Syntax Syntax

  1. <export_command> ::=
  <export_db_command>
| <export_user_command>
| <export_schema_command>
| <export_table_command>
| <export_columns_command>
End of the code.


if_condition - SAP Documentation

Syntax documentation if_condition

Syntax Syntax

  1. <if_condition> ::=
  IF <condition>
End of the code.


field_assignment - SAP Documentation

Syntax documentation field_assignment

Syntax Syntax

  1. <field_assignment> ::=
  '<literal>' <field_spec>
End of the code.


duplicates_clause - SAP Documentation

Syntax documentation duplicates_clause

Syntax Syntax

  1. <duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES
End of the code.


standard_timestamp_mask - SAP Documentation

Syntax documentation standard_timestamp_mask

Syntax Syntax

  1. <standard_timestamp_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.


order_clause - SAP Documentation

Syntax documentation order_clause

Syntax Syntax

  1. <order_clause> ::=
  ORDER BY <column_name>,...
End of the code.


time_spec - SAP Documentation

Syntax documentation time_spec

Syntax Syntax

  1. <time_spec> ::=
  TIME <standard_time_mask>
| TIME '<free_mask_time>'
End of the code.


sequence_number - SAP Documentation

Syntax documentation sequence_number

Syntax Syntax

  1. <sequence_number> ::=
  SEQNO
| SEQNO <integer>
| SEQNO <integer> <integer>
End of the code.


use_schema_command - SAP Documentation

Syntax documentation use_schema_command

Syntax Syntax

  1. <use_schema_command> ::=
  USE SCHEMA <schema_name>
End of the code.


update_columns_command - SAP Documentation

Syntax documentation update_columns_command

Syntax Syntax

  1. <update_columns_command> ::=
  UPDATE COLUMNS TABLE <table_name>
    [<if_condition>]
    <update_column_spec> ... <set_column_spec> ...
    <data_instream_column_spec>
End of the code.


null_condition - SAP Documentation

Syntax documentation null_condition

Syntax Syntax

  1. <null_condition> ::=
  NULL[IF] <condition>
| DEFAULT NULL
End of the code.


export_columns_command - SAP Documentation

Syntax documentation export_columns_command

Syntax Syntax

  1. <export_columns_command> ::=
  EXPORT COLUMNS <select_expression>
    [MAP COLUMNS <export_column_spec> ...]
                 <data_outstream_column_spec>
End of the code.


update_column_spec - SAP Documentation

Syntax documentation update_column_spec

Syntax Syntax

  1. <update_column_spec> ::=
  <map_field_column>
| <column_assignment>
End of the code.


restart_spec - SAP Documentation

Syntax documentation restart_spec

Syntax Syntax

  1. <restart_spec> ::=
  RESTART <package_guid>
End of the code.


start_spec - SAP Documentation

Syntax documentation start_spec

Syntax Syntax

  1. <start_spec> ::=
  START <unsigned_integer> [MAXROWS]
| START <unsigned_integer> [MAXRECORDS]
| START <unsigned_integer> <unsigned_integer>
End of the code.


simple_condition - SAP Documentation

Syntax documentation simple_condition

Syntax Syntax

  1. <simple_condition> ::=
  POS <field_spec> <field_type> [HEX] <compare_operator> '<literal>'
End of the code.


field_spec - SAP Documentation

Syntax documentation field_spec

Syntax Syntax

  1. <field_spec> ::=
  <unsigned_integer>
| <unsigned_integer> - <unsigned_integer>
End of the code.


catalog_data_instream_table_spec - SAP Documentation

Syntax documentation catalog_data_instream_table_spec

Syntax Syntax

  1. <catalog_data_instream_table_spec> ::=
  <catalog_instream_spec>
| <data_instream_table_spec>
| <catalog_instream_spec> <data_instream_table_spec>
End of the code.


mediumtype_spec - SAP Documentation

Syntax documentation mediumtype_spec

Syntax Syntax

  1. <mediumtype_spec> ::=
  FILE
| PIPE
| TAPE [<ebid_spec>]
End of the code.


scale_spec - SAP Documentation

Syntax documentation scale_spec

Syntax Syntax

  1. <scale_spec> ::=
  SCALE <unsigned_integer>
End of the code.


import_table_command - SAP Documentation

Syntax documentation import_table_command

Syntax Syntax

  1. <import_table_command> ::=
  IMPORT TABLE <table_name>
    [<if_condition>]
    [<duplicates_clause>]
    <catalog_data_instream_table_spec>
    [<package_spec>]
End of the code.


number_spec - SAP Documentation

Syntax documentation number_spec

Syntax Syntax

  1. <number_spec> ::=
  DECIMAL '/[<digit_grouping_symbol>]/<decimal_symbol>/'
End of the code.


null_spec - SAP Documentation

Syntax documentation null_spec

Syntax Syntax

  1. <null_spec> ::=
  NULL '<literal>'
End of the code.


date_spec - SAP Documentation

Syntax documentation date_spec

Syntax Syntax

  1. <date_spec> ::=
  DATE <standard_date_mask>
| DATE '<free_mask_date>'
End of the code.


field_function - SAP Documentation

Syntax documentation field_function

Syntax Syntax

  1. <field_function> ::=
  <field_type> [HEX]
| <numerical_functions>
| <field_type> [HEX] <numerical_functions>
End of the code.


ebid_spec - SAP Documentation

Syntax documentation ebid_spec

Syntax Syntax

  1. <ebid_spec> ::=
  EBID '<literal>'
End of the code.


export_column_spec - SAP Documentation

Syntax documentation export_column_spec

Syntax Syntax

  1. <export_column_spec> ::=
  <map_column_field>
| <field_assignment>
End of the code.


field_format_spec - SAP Documentation

Syntax documentation field_format_spec

Syntax Syntax

  1. <field_format_spec> ::=
  <bool_spec>
| <code_spec>
| <date_spec>
| <number_spec>
| <time_spec>
| <timestamp_spec>
End of the code.


standard_code_spec - SAP Documentation

Syntax documentation standard_code_spec

Syntax Syntax

  1. <standard_code_spec> ::=
  ASCII
| UC2
| UTF8
End of the code.


numerical_functions - SAP Documentation

Syntax documentation numerical_functions

Syntax Syntax

  1. <numerical_functions> ::=
  <scale_spec>
| <round_or_trunc_spec>
| <scale_spec> <round_or_trunc_spec>
End of the code.


outstream_csv_spec - SAP Documentation

Syntax documentation outstream_csv_spec

Syntax Syntax

  1. <outstream_csv_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [CSV [<csv_format_spec> ...]] [<start_spec>]
End of the code.


SapDB_ResultSet Class (sdb.sql Module) - SAP Documentation

Function documentation SapDB_ResultSet Class (sdb.sql Module)

SapDB_ResultSet is a class of the sdb.sql module. You can use the methods of this class to position the cursor within the result set and to read data from the result set.

Features

  • next Method (SapDB_ResultSet Class)

  • previous Method (SapDB_ResultSet Class)

  • relative Method (SapDB_ResultSet Class)

  • absolute Method (SapDB_ResultSet Class)

  • first Method (SapDB_ResultSet Class)

  • last Method (SapDB_ResultSet Class)

  • current Method (SapDB_ResultSet Class)

  • __getitem__ Method (SapDB_ResultSet Class)

  • getDescription Method (SapDB_ResultSet Class)

Restrictions

The following restrictions apply to the next, previous, relative, absolute, first and last methods:

  • Python 2.x: Unicode columns can be read and written.

  • Python 1.5.2: Unicode output values are converted to ASCII. If the conversion fails, an error is reported.

Example

Example: Executing an SQL Statement and Navigating in the Result Set


sqlX Method (SapDB_Session Class) - SAP Documentation

Function documentation sqlX Method (SapDB_Session Class)

sqlX is a method of the SapDB_Session class (sdb.sql module). With this method, you can execute SQL statements with parameters without first having to create an object of the SapDB_Prepared class (sdb.sql module).

Features

Syntax Syntax

  1. sqlX (cmd, parms = [])
End of the code.
sqlX Method: Attributes
Attribute | Description
cmd | SQL statement Can contain the following placeholders: ? | :<varname>
parms | Parameter list from which the system replaces the placeholders for parameters

Result:

  • Successful execution: See Possible SQL Results

  • if an error occurs: Exception of the SQLError class (sdb.sql module)

Example

  • You execute a SELECT statement that contains a parameter:

    Syntax Syntax

    1. cursor = session.sqlX ('SELECT firstname, name, cno FROM hotel.customer WHERE cno>?',[3000])
    End of the code.

    The cursor variable contains an object of the SapDB_ResultSet class (sdb.sql module). You can use this object to access the data records in the result set.

  • You execute a DELETE statement that contains a parameter:

    Syntax Syntax

    1. rowsDeleted = session.sqlX ('DELETE FROM hotel.person WHERE name = ?',['NY'])
    End of the code.

    The rowsDeleted variable contains the number of lines deleted by the DELETE statement.


previous Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation previous Method (SapDB_ResultSet Class)

previous is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to move the cursor to the previous data record in the result set.

Features

Syntax Syntax

  1. previous ()
End of the code.
Result

  • Previous data record

  • If the result set is empty or if the beginning of the result set has been reached: None

Example

  • Syntax Syntax

    1. row = cursor.previous ()
    End of the code.

    The row variable contains the previous data record.

  • Example: Executing an SQL Statement and Navigating in the Result Set


getDescription Method (SapDB_Prepared Class) - SAP Documentation

Function documentation getDescription Method (SapDB_Prepared Class)

getDescription is a method of the SapDB_Prepared class (sdb.sql module). You can use this method to display information about the parameters of SQL statements.

Features

Syntax Syntax

  1. getDescription ()
End of the code.
Result

This method returns the following properties of the parameters in the SQL statement:

  • Name (empty string as a placeholder)

  • Type (as a string)

  • Type (as an integer according to the ODBC specification)

  • Logical size (maximum number of characters in a string parameter, maximum number of numbers in a numeric parameter)

  • Number of decimal places

  • Indicator that specifies whether the parameter can be NULL

  • Type: 'IN' |'OUT' | 'IN/OUT'

Example

You create the avg_price database procedure:

Syntax Syntax

  1. session.sql ("""CREATE DBPROCEDURE avg_price (IN zip CHAR(5), OUT avg_price FIXED(6,2)) AS
    VAR sum FIXED(10,2); price FIXED(6,2); hotels INTEGER;
TRY
  SET sum = 0; SET hotels = 0;
  DECLARE dbproccursor CURSOR FOR
  SELECT price FROM hotel.room,hotel.hotel WHERE zip = :zip AND
  room.hno = hotel.hno AND type = 'single';
    WHILE $rc = 0 DO BEGIN
      FETCH dbproccursor INTO :price;
      SET sum = sum + price;
      SET hotels = hotels + 1;
    END;
CATCH
  IF $rc <> 100 THEN STOP ($rc, 'unexpected error');
CLOSE dbproccursor;
IF hotels > 0 THEN SET avg_price = sum / hotels
  ELSE STOP (100, 'no hotel found');""")
End of the code.

You create an object of the SapDB_Prepared class using the prepare method:

Syntax Syntax

  1. call = session.prepare ('call avg_price (?, ?)')
End of the code.

You display the information about the parameters in formatted form:

Syntax Syntax

  1. print "colname type code length frac null? in/out"
print "===================================================="
for parameterDescription in call.getDescription ():
  print "%-10s %-10s %4d %6d %2d %5s %s" % parameterDescription
End of the code.
Result

colname type code length frac null? in/out

====================================================

Unicode 1 5 0 1 IN

Fixed 3 6 2 1 OUT


CommunicationError Class (sdb.sql Module) - SAP Documentation

Function documentation CommunicationError Class (sdb.sql Module)

CommunicationError is a class of the sdb.sql module.

The methods of the sdb.sql module trigger exceptions of this class if it is not possible to connect to the database or an existing connection is terminated.

CommunicationError Class: Attributes of its Objects
Name | Description
errorCode | Error code
message | Error message text


Example: Executing an SQL Statement and Querying Information About the Result Set - SAP Documentation

Procedure documentation Example: Executing an SQL Statement and Querying Information About the Result Set

In this example, you use the sql method (SapDB_Session class) and the getDescription method (SapDB_ResultSet class) of the sdb.sql module. You execute a SELECT statement that returns an object of the SapDB_ResultSet class as a result (result set), and query information about the structure of the result set.

Procedure

  1. Create a Python script sample.py with the following contents:

    Syntax Syntax

    1. #
# Import Python modules
# -------------------------------------------
import sys
import sdb.sql
#
# Connect to the database
# -------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
session = sdb.sql.connect (database_user, database_user_password, database_name)
select = """
  SELECT title, name, cno FROM hotel.customer
  WHERE cno BETWEEN 3000 AND 8000"""
#
# Execute a SELECT statement
# Result: object of the SAPDB_ResultSet class
# ----------------------------------------------
cursor = session.sql (select)
#
# The getDescription method returns
# a list of the column descriptions.
# ----------------------------------------------
descriptions = cursor.getDescription ()
for description in descriptions:
  print '======================='
  # Column name
  print 'Name:', description [0]
  # Type of the column as a string
  print 'Type:', description [1]
  # Type of the column as an integer
  print 'Type:', description [2]
  # Column length
  print 'Len:', description [3]
  # Number of decimal places
  print 'Frac:', description [4]
  # Result set columns are always required columns.
  print 'Mandatory:', description [5]
  # Result set columns are always output.
  print 'in/out:', description [6]
#
# Close the session with the database
# --------------------------------------------
session.release ()
    End of the code.

  2. Call the Python script:

    python sample.py MONA RED DEMODB

Result

=======================

Name: TITLE

Type: Char

Type: 1

Len: 7

Frac: 0

Mandatory: 1

in/out: OUT

=======================

Name: NAME

Type: Char

Type: 1

Len: 20

Frac: 0

Mandatory: None

in/out: OUT

=======================

Name: CNO

Type: Fixed

Type: 3

Len: 4

Frac: 0

Mandatory: None

in/out: OUT


getDescription Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation getDescription Method (SapDB_ResultSet Class)

getDescription is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to display information about the columns in the result set.

Features

Syntax Syntax

  1. getDescription ()
End of the code.
Result

The following properties of the columns are returned:

  • Name

  • Type (as a string)

  • Type (as an integer according to the ODBC specification)

  • Logical size (maximum number of characters in string columns, maximum number of numbers in numerical columns)

  • Number of decimal places

  • Indicator that specifies whether the column can be NULL

  • The value in the in/out column is always OUT for this method (result set).

Example

With the sql method, you execute an SQL statement that returns a result set. With the getDescription method, you display information about the columns of this result set.

Syntax Syntax

  1. cursor = session.sql ("SELECT * FROM hotel.customer")
print "colname    type    code    length    frac    null?    in/out"
print "============================================================"
  for columnDescription in cursor.getDescription ():
print "%-10s %-10s %4d %6d %2d %5s %s" %
columnDescription
End of the code.
Result

colname type code length frac null? in/out

============================================================

CNO Fixed 3 4 0 None OUT

TITLE Char 1 7 0 1 OUT

FIRSTNAME Char 1 20 0 1 OUT

NAME Char 1 20 0 None OUT

ZIP Char 1 5 0 1 OUT

ADDRESS Char 1 40 0 None OUT

More Information

Example: Executing an SQL Statement and Querying Information About the Result Set


Installing the Python Modules - SAP Documentation

Procedure documentation Installing the Python Modules

Procedure

Install the software components Redist Python and Python Interface.

Note that there are dependencies with other software components that may require you to install additional software components.

More Information

Glossary, Software Component


Converting LOB Values - SAP Documentation

Function documentation Converting LOB Values

You can use the sdb.dbapi module to convert LOB values.

Features

Converting Python Values -> SAP MaxDB Values

You can transfer LOB values as input parameters as follows:

  • As strings

  • As callable objects that are defined similar to the read method of file objects (an integer parameter defines how many characters the system reads and the end of the input stream is indicated by an empty character string).

Converting SAP MaxDB Values -> Python Values

SAP MaxDB LOB values are returned as instances of the SapDB_LongReader class (sdb.sql module). This class implements the read method.

More Information

http://www.python.org


connect Method (sdb.dbapi Module) - SAP Documentation

Function documentation connect Method (sdb.dbapi Module)

connect is a method of the sdb.dbapi module for opening database sessions.

Prerequisites

The database is in the ONLINE operational state.

Features

Syntax Syntax

  1. connect (user, password, database, host ='', **config)
End of the code.
connect Method: Attributes

Attribute

Description

user

Name of the database user

password

Password of the database user

Note that the password is case-sensitive.

config

  • autocommit

    on | off

    AUTOCOMMIT mode

  • sqlmode

    internal | oracle

    SQL mode

  • isolation

    More information: Isolation Level

  • timeout

    <integer>

    Command timeout in seconds
Result

  • Successful execution: Object of class sdb.dbapi.Connection

  • If an error occurs: Exception of sdb.dbapi.Error class

For more information, see the Python Database API Specifications V2.0 at http://www.python.org

Example

Syntax Syntax

  1. session = sdb.dbapi.connect ('MONA', 'RED', 'DEMODB', '', autocommit = 'off', sqlmode= 'oracle', isolation = 1, timeout = 90)
End of the code.


Converting Date and Time Values - SAP Documentation

Function documentation Converting Date and Time Values

The sdb.dbapi module implements the functions that the Python Database API Specification v2.0 recommends for date and time conversions.

Features

Converting Python Values -> SAP MaxDB Values
Function | Return Value (SAP MaxDB Data Type)
Date (year, month, day) | DATE
Time (hour, minute, second) | TIME
Timestamp (year, month, day, hour, minute, second, micros = 0) | TIMESTAMP
DateFromTicks (ticks) | DATE
TimeFromTicks (ticks) | TIME
TimestampFromTicks (ticks) | TIMESTAMP
Converting SAP MaxDB Values -> Python Values
Function | Return Value (Python Data Type)
dateTuple | (year, month, day)
timeTuple | (hour, minute, second)
timestampTuple | Tuple in the same format as the return value for time.localtime ()
dateVal | Number of seconds since epoch
timeVal | Number of seconds since epoch
timestampVal | Number of seconds since epoch
DateFormat (formatString) | Date formatted according to time.strftime
TimeFormat (formatString) | Time formatted according to time.strftime
TimestampFormat (formatString) | Time stamp formatted according to time.strftime
Registering Conversion Functions Using Cursors or Connection Objects

Callable Object

Description

cursor.setTranslation ([None,sdb.dbapi.dateTuple,sdb.dbapi.DateFormat('%Y-%m-%d')])

You transfer a list in which you specify a function for data conversion for every column. If no data conversion is to be performed for a column, transfer the None object at the position of the column in question.

cursor.setTypeTranslation ({'Date': sdb.dbapi.dateTuple,'Time': sdb.dbapi.timeTuple,'Fixed':str})

You transfer a dictionary. Enter the same type name as a key, as is issued by the sdb.sql.SapDB_ResultSet.getDescription method.

As values, enter the functions for data conversion. The system uses these functions for all columns of a certain SQL data type.

connection.setTypeTranslation ({Date': sdb.dbapi.dateTuple,'Time': sdb.dbapi.timeTuple,'Fixed':str})

You transfer a dictionary that has the same structure as the parameter for cursor.setTypeTranslation. For each new cursor object, call the setTypeTranslation method with the dictionary as the parameter.

More Information

http://www.python.org


sdb.dbapi Module - SAP Documentation

Function documentation sdb.dbapi Module

sdb.dbapi is a Python module for SAP MaxDB databases. You can use this module to execute SQL statements in Python scripts.

Note Note

To use SAP MaxDB-specific functions in Python scripts, use the sdb.sql module.

End of the note.

Prerequisites

You have installed the Python modules.

More information: Installing the Python Modules

Features

sdb.dbapi implements the Python Database API Specification v2.0. This section describes only its differences to the Python Database API Specification v2.0. For more information, see http://www.python.org

  • connect Method (sdb.dbapi Module)

  • Converting Date and Time Values

  • Converting LOB Values


Examples for the sdb.sql Module - SAP Documentation

Background documentation Examples for the sdb.sql Module

The examples show how you can execute SQL statements in SAP MaxDB databases using the sdb.sql module in a Python script.

  • Example: Establishing and Closing the Connection to a Database

  • Example: Executing an SQL Statement and Reading the Result Set

  • Example: Executing an SQL Statement and Navigating in the Result Set

  • Example: Executing an SQL Statement and Reading the Result Set with a For Loop

  • Example: Executing an SQL Statement and Querying Information About the Result Set

  • Example: Executing an SQL Statement Multiple Times with Different Values

  • Example: Executing SQL Statements and Handling Errors

Demo Data for the sdb.sql Module
Demo Data | Description
DBADMIN | Database system administrator (as an example of a DBM operator)
SECRET | Password of the database system administrator
DEMODB | Demo database


SapDB_LongReader Class (sdb.sql Module) - SAP Documentation

Function documentation SapDB_LongReader Class (sdb.sql Module)

SapDB_LongReader is a class of the sdb.sql module.

With the read method of this class, you can sequentially read the contents of a LOB column.

Objects of the SapDB_LongReader class are generated by result sets that contain one or more LOB columns.

Features

read Method (SapDB_LongReader Class)


current Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation current Method (SapDB_ResultSet Class)

current is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to read the data record on which the cursor in the result set is currently positioned.

Features

Syntax Syntax

  1. current()
End of the code.
Result

  • Current data record

  • If the result set is empty or if the cursor is before the first or behind the last data record: None

Example

  • Syntax Syntax

    1. row = cursor.current ()
    End of the code.

  • Example: Executing an SQL Statement and Navigating in the Result Set


execute Method (SapDB_Prepared Class) - SAP Documentation

Function documentation execute Method (SapDB_Prepared Class)

execute is a method of the SapDB_Prepared class. You can use this method to execute SQL statements with parameters, for example database procedures.

Features

Syntax Syntax

  1. execute (sqlParms = [])
End of the code.
execute Method: Attributes
Attribute | Description
sqlParms | Parameter list with input parameters

Result:

  • Successful execution: See Possible SQL Results

    Output parameters, if any

  • If an error occurs: Exception of the SQLError Class (sdb.sql module)

Example

Executing a SELECT statement

Syntax Syntax

  1. select = session.prepare ('SELECT * FROM hotel.customer WHERE cno = ?')
select.execute ([3000])
End of the code.

Result

<SapDB_ResultSet object at ...>

Calling a Database Procedure (Stored Procedure)

You create the avg_price database procedure:

Syntax Syntax

  1. session.sql ("""CREATE DBPROCEDURE avg_price (IN zip CHAR(5), OUT avg_price FIXED(6,2)) AS
  VAR sum FIXED(10,2); price FIXED(6,2); hotels INTEGER;
TRY
  SET sum = 0; SET hotels = 0;
  DECLARE dbproccursor CURSOR FOR
  SELECT price FROM hotel.room,hotel.hotel WHERE zip = :zip AND
  room.hno = hotel.hno AND type = 'single';
    WHILE $rc = 0 DO BEGIN
      FETCH dbproccursor INTO :price;
      SET sum = sum + price;
      SET hotels = hotels + 1;
    END;
CATCH
  IF $rc <> 100 THEN STOP ($rc, 'unexpected error');
CLOSE dbproccursor;
IF hotels > 0 THEN SET avg_price = sum / hotels
  ELSE STOP (100, 'no hotel found');""")
End of the code.

You create an object of the SapDBPrepared class using the prepare method:

Syntax Syntax

  1. call = session.prepare ('call hotel.avg_price (?, ?)')
End of the code.

You specify a value for the input parameter:

Syntax Syntax

  1. in1 = 20005  # sets zip
End of the code.

You call the database procedure using the execute method.

Syntax Syntax

  1. out1 = call.execute ([in1])
End of the code.

You display the value of the output parameter:

Syntax Syntax

  1. print 'value avg_price:', out1
End of the code.
Result

value avg_price: (135.0)


Example: Executing an SQL Statement and Reading the Result Set - SAP Documentation

Procedure documentation Example: Executing an SQL Statement and Reading the Result Set

In this example, you use the sql method (SapDB_Session class) and the next method (SapDB_ResultSet class) of the sdb.sql module. You execute a SELECT statement that returns an object of the SapDB_ResultSet class as a result (result set), and read the data records of this result set.

Procedure

  1. Create a Python script sample.py with the following contents:

    Syntax Syntax

    1. #
# Import Python modules
# -------------------------------------------
import sys
import sdb.sql
# Connect to the database
# -------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
session = sdb.sql.connect (database_user, database_user_password, database_name)
select = """
  SELECT title, name, cno FROM hotel.customer
  WHERE cno BETWEEN 3000 AND 8000"""
#
# Execute a SELECT statement
# Result: An object of the SapDB_ResultSet class
# -----------------------------------------------
cursor = session.sql (select)
#
# The next method reads the next data record
# in the result set.
# When the last row of the result set is reached,
# the next method returns the value 'None'.
# -----------------------------------------------
row = cursor.next ()
while row:
  title, name, cno = row
  print "%s %s %d" % (title, name, cno)
  row = cursor.next ()
#
# Close connection to the database
# ---------------------------------------------
session.release ()
    End of the code.

  2. Call the Python script:

    python sample.py MONA RED DEMODB

Result

Mrs Porter 3000

Mr Brown 3100

Company Datasoft 3200

Mrs Brian 3300

Mrs Griffith 3400

Mr Randolph 3500

Mrs Smith 3600

Mr Jackson 3700

Mrs Doe 3800

Mr Howe 3900

Mr Miller 4000

Mrs Baker 4100

Mr Peters 4200

Company TOOLware 4300

Mr Jenkins 4400


Example: Executing an SQL Statement Multiple Times with Different Values - SAP Documentation

Procedure documentation Example: Executing an SQL Statement Multiple Times with Different Values

In this example, you use the sql method (SapDB_Session class) and the prepare method (SapDB_Session class) of the sdb.sql module. You execute an SQL statement multiple times with different values without the database system having to convert Python values.

Procedure

  1. Create a Python script sample.py with the following contents:

    Syntax Syntax

    1. #
# Import Python modules
# -------------------------------------------
import sys
import sdb.sql
#
# Connect to the database
# -------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
session = sdb.sql.connect (database_user, database_user_password, database_name)
#
# Create customer test table
# (to ensure that this table does not already exist,
# the SQL statement for deleting the table is executed
# first)
# ----------------------------------------------
try:
  session.sql ('DROP TABLE hotel.customer')
except sdb.sql.SQLError:
  pass
session.sql ("""CREATE TABLE customer (cno FIXED(4) PRIMARY KEY)""")
#
# Generate object of the class SapDB_Prepared
# ------------------------------------------------
insert = session.prepare ('INSERT INTO customer (cno) VALUES (?)')
for i in xrange (1,11):
  # The execute method executes the prepared
  # SQL statement with all parameters in the list
  insert.execute ([i])
cursor = session.sql ('SELECT cno FROM customer')
for row in cursor: print row
#
# Close connection to the database
# -----------------------------------------------
session.release ()
    End of the code.

  2. Call the Python script:

    python sample.py MONA RED DEMODB

Result

(1,)

(2,)

(3,)

(4,)

(5,)

(6,)

(7,)

(8,)

(9,)

(10,)


last Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation last Method (SapDB_ResultSet Class)

last is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to position the cursor on the last data record in the result set.

Features

Syntax Syntax

  1. last ()
End of the code.
Result

  • Last data record in the result set

  • If the result set is empty: None

Example

  • Syntax Syntax

    1. row = cursor.last ()
    End of the code.

  • Example: Executing an SQL Statement and Navigating in the Result Set


relative Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation relative Method (SapDB_ResultSet Class)

relative is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to position the cursor on a data record relative to the current one in the result set.

Features

Syntax Syntax

  1. relative (offset)
End of the code.
Attribute | Description
offset | Number of data records that the cursor should be moved back or forward, relative to the current position offset > 0: You move the cursor forward in the result set offset < 0: You move the cursor backward in the result set
Result

  • Data record at the specified position in the result set

  • If the result set is empty or if offset is greater than the number of data records after or before the current cursor position: None

Example

  • You move the cursor 5 data records forward:

    Syntax Syntax

    1. row = cursor.relative (5)
    End of the code.

  • You move the cursor 1 data record backward:

    Syntax Syntax

    1. row = cursor.relative (-1)
    End of the code.

    This expression is equivalent to

    Syntax Syntax

    1. row = cursor.previous ()
    End of the code.

  • Example: Executing an SQL Statement and Navigating in the Result Set


SQLError Class (sdb.sql Module) - SAP Documentation

Function documentation SQLError Class (sdb.sql Module)

SQLError is a class of the sdb.sql module.

The methods of the sdb.sql module trigger exceptions of this class when an SQL statement contains an error or an error occurs during execution of an SQL statement.

SQLError Class: Attributes of its Objects
Name | Description
errorCode | Message number See: Messages
sqlState | Standardized error code
message | Error message text
errorPos | For an error in the SQL statement: position of the error in the SQL statement For an error in the execution of the SQL statement: position number of the parameter with the error (first parameter = 0)


getLastSerial Method (SapDB_Result Class) - SAP Documentation

Function documentation getLastSerial Method (SapDB_Result Class)

getLastSerial is a method of the SapDB_Result class (sdb.sql module).

If the system has generated one or more values for a key column of the SERIAL type using an INSERT statement, you can use this method to display the last of these values. This is useful, for example, to maintain FOREIGN KEY dependencies in other SQL statements.

Features

Syntax Syntax

  1. getLastSerial ()
End of the code.
Result

  • Last value of the SERIAL type in the result set

  • If the SQL statement returned no values of the SERIAL type: None


release Method (SapDB_Session Class) - SAP Documentation

Function documentation release Method (SapDB_Session Class)

release is a method of the SapDB_Session class (sdb.sql module). You can use this method to close the current connection to the database. After closing the current connection, you can no longer access the corresponding object of the SapDB_Session class.

Features

Syntax Syntax

  1. release (with_commit = False)
End of the code.
release Method: Attributes
Attribute | Description
with_commit | Optional True: Transaction is ended with COMMIT False: Transaction is ended with ROLLBACK (default value)

Example

Example: Establishing and Closing the Connection to a Database


Possible SQL Results - SAP Documentation

Background documentation Possible SQL Results

When you execute SQL statements using the methods of the sdb.sql module, the system returns different results depending on the type of SQL statement executed.

SQL Statement

Result

SELECT

Object of the SapDB_ResultSet class (sdb.sql module)

UPDATE, DELETE

Number of changed or deleted data records

INSERT

  • If the table into which the data records are inserted contains a column of the SERIAL type: object of the SapDB_Result class (sdb.sql module)

  • If the table into which the data records are inserted does not contain a column of the SERIAL type: number of inserted records

CALL

  • If the database procedure (stored procedure) returns output parameters: output parameters

  • If the database procedure returns a result set: object of the SapDB_ResultSet class

  • If the database procedure returns both output parameters and a result set: object of the SapDB_Result class

DDL (Data Definition Language)

None


absolute Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation absolute Method (SapDB_ResultSet Class)

absolute is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to position the cursor at a specific position in the result set.

Features

Syntax Syntax

  1. absolute (pos)
End of the code.
absolute Method: Attributes
Attribute | Description
pos | Position of the data record you want to read in the result set pos ≥ 1: Position is calculated from the beginning of the result set pos = 1: First record in the result set pos ≤ -1: Position is calculated from the end of the result set pos = -1: Last record in the result set
Result

  • Data record at the specified position in the result set

  • If the result set is empty or if pos exceeds the number of data records in the result set: None

Example

  • You position the cursor on the third record in the result set:

    Syntax Syntax

    1. row = cursor.absolute (3)
    End of the code.

  • You position the cursor on the second-to-last record in the result set:

    Syntax Syntax

    1. row = cursor.absolute (-2)
    End of the code.

  • Example: Executing an SQL Statement and Navigating in the Result Set


SapDB_Result Class (sdb.sql Module) - SAP Documentation

Function documentation SapDB_Result Class (sdb.sql Module)

SapDB_Result is a class of the sdb.sql module.

SQL statements can return varying results (see also: Possible SQL Results). You can use the methods in this class to send targeted queries about the type of the results.

Features

  • getResultSet Method (SapDB_Result Class)

  • getOutputParameters Method (SapDB_Result Class)

  • getRowsAffected Method (SapDB_Result Class)

  • getLastSerial Method (SapDB_Result Class)

  • getFirstSerial Method (SapDB_Result Class)


next Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation next Method (SapDB_ResultSet Class)

next is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to move the cursor to the next data record in the result set.

Features

Syntax Syntax

  1. next ()
End of the code.
Result

  • Next data record in the result set

  • If the result set is empty or if the end of the result set has been reached: None

Example

  • Syntax Syntax

    1. row = cursor.next ()
    End of the code.

    The row variable contains the next result record.

  • Example: Executing an SQL Statement and Reading the Result Set


getOutputParameters Method (SapDB_Result Class) - SAP Documentation

Function documentation getOutputParameters Method (SapDB_Result Class)

getOutputParameters is a method of the SapDB_Result class (sdb.sql module). You can use this method to read the output parameters of SQL statements.

Features

Syntax Syntax

  1. getOutputParameters ()
End of the code.
Result

  • Output parameters of the SQL statement

  • If the SQL statement has no output parameters: None


Example: Executing SQL Statements and Handling Errors - SAP Documentation

Procedure documentation Example: Executing SQL Statements and Handling Errors

In this example, you use the SQLError class of the sdb.sql module. To generate exceptions of this class, you create the following error situations: Execute a SELECT statement with an incorrect column name, and execute an SQL statement with an incorrect parameter.

Procedure

  1. Create a Python script sample.py with the following contents:

    Syntax Syntax

    1. #
# Import Python modules
# ---------------------------------------------------
import sys
import sdb.sql
#
# Connect to the database
# ---------------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
session = sdb.sql.connect (database_user, database_user_password, database_name)
#
# Execute a SELECT statement with an incorrect column
# name unknown (error in the SQL statement)
#----------------------------------------------------
select = "SELECT unknown FROM hotel.customer"
try:
  cursor = session.sql (select)
except sdb.sql.SQLError, err:
  print "ERR [%d] %s" % (err.errorCode, err.message)
  print select
  print ("=" * (err.errorPos - 1)) + '^'
#
# Execute SQL statement with an incorrect parameter
# (error during execution of the SQL statement)
#-----------------------------------------------------
try:
  count = session.sqlX ("""INSERT INTO hotel.customer
  VALUES (?,?,?,?,?,?)""", ['wrong_data_type', 'Mrs', 'Jennifer', 'Parker', '10590', '0 N.Ash Street, #6'])
except sdb.sql.SQLError, err:
  print "ERR [%d] %s" % (err.errorCode, err.message)
#
# Close connection to the database
# ----------------------------------------------------
session.release ()
    End of the code.

  2. Call the Python script:

    python sample_6.py MONA RED DEMODB

    ERR [-4005] Unknown column name:UNKNOWN

    SELECT unknown FROM hotel.customer

    =======^

    ERR [-817] Incompatible data types


Error Handling for the sdb.sql Module - SAP Documentation

Function documentation Error Handling for the sdb.sql Module

When errors occur, the methods of the sdb.sql module trigger exceptions of the following classes:

  • CommunicationError Class (sdb.sql Module)

  • SQLError Class (sdb.sql Module)

Example

Example: Executing SQL Statements and Handling Errors


sql Method (SapDB_Session Class) - SAP Documentation

Function documentation sql Method (SapDB_Session Class)

sql is a method of the SapDB_Session class (sdb.sql module) for executing SQL statements.

Features

Syntax Syntax

  1. sql (cmd)
End of the code.
sql Method: Attributes
Attribute | Description
cmd | SQL statement
Result

  • Successful execution: See Possible SQL Results

  • If an error occurs: Exception of the SQLError Class (sdb.sql Module)

Example

  • You execute an SQL statement:

    Syntax Syntax

    1. cursor = session.sql ('SELECT * FROM hotel.room')
    End of the code.

    The cursor variable contains an object of the SapDB_ResultSet class (sdb.sql module). You can use this object to access the data records in the result set.

  • You execute a DELETE statement:

    Syntax Syntax

    1. rowsDeleted = session.sql ('DELETE FROM hotel.person WHERE name='NY'')
    End of the code.

    The rowsDeleted variable contains the number of lines deleted by the DELETE statement.

  • Example: Executing an SQL Statement and Reading the Result Set

  • Example: Executing an SQL Statement and Reading the Result Set with a For Loop

  • Example: Executing an SQL Statement and Querying Information About the Result Set

  • Example: Executing an SQL Statement Multiple Times with Different Values


commit Method (SapDB_Session Class) - SAP Documentation

Function documentation commit Method (SapDB_Session Class)

commit is a method of the SapDB_Session class (sdb.sql module). You can use this method to end the current transaction with a COMMIT and start a new transaction.

Features

Syntax Syntax

  1. commit ()
End of the code.


getFirstSerial Method (SapDB_Result Class) - SAP Documentation

Function documentation getFirstSerial Method (SapDB_Result Class)

getFirstSerial is a method of the SapDB_Result class (sdb.sql module).

If the system has generated one or more values for a key column of the SERIAL type using an INSERT statement, you can use this method to display the first of these values. This is useful, for example, to maintain FOREIGN KEY dependencies in other SQL statements.

Features

Syntax Syntax

  1. getFirstSerial ()
End of the code.
Result

  • First value of the SERIAL type in the result set

  • If the SQL statement returned no values of the SERIAL type: None


getRowsAffected Method (SapDB_Result Class) - SAP Documentation

Function documentation getRowsAffected Method (SapDB_Result Class)

getRowsAffected is a method of the SapDB_Result class (sdb.sql module). You can use this method to query how many data records (rows) were changed by an SQL statement.

Features

Syntax Syntax

  1. getRowsAffected ()
End of the code.
Result

Number of data records that were changed


Example: Establishing and Closing the Connection to a Database - SAP Documentation

Procedure documentation Example: Establishing and Closing the Connection to a Database

In this example, you use the connect method (sdb.sql module) and the release method (SapDB_Session class). You establish a connection to an SAP MaxDB database and close it again.

Procedure

  1. Create a Python script sample.py with the following contents:

    Syntax Syntax

    1. #
# Import Python modules
# -------------------------------------------
import sys
import sdb.sql
#
# Parse call arguments
# -------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
#
# Connect to the database
# -------------------------------------------
session = sdb.sql.connect (database_user, database_user_password, database_name)
#
# Close connection to the database
# --------------------------------------------
session.release ()
    End of the code.

  2. Call the Python script:

    python sample.py MONA RED DEMODB


Example: Executing an SQL Statement and Reading the Result Set with a For Loop - SAP Documentation

Procedure documentation Example: Executing an SQL Statement and Reading the Result Set with a For Loop

In this example, you use the sql method (SapDB_Session class). You execute a SELECT statement that returns an object of the SapDB_ResultSet class as a result (result set) and read the data records of the result set in a for loop.

Procedure

  1. Create a Python script sample.py with the following contents:

    Syntax Syntax

    1. #
# Import Python modules
# -------------------------------------------
import sys
import sdb.sql
#
# Connect to the database
# -------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
session = sdb.sql.connect (database_user, database_user_password, database_name)
select = """
  SELECT * FROM hotel.room"""
#
# Execute a SELECT statement
# Result: An object of the SapDB_ResultSet class
# -----------------------------------------------
cursor = session.sql (select)
#
# You can use an object of the class SapDB_ResultSet in a for loop
# in the same way as any other iterator.
# -----------------------------------------------
for row in cursor:
  hno, type, free, price = row
  print "%6d %s %d %6d" % (hno, type, free, price)
#
# You can use a for statement to
# execute an SQL statement and to group the result rows
# in columns.
# -------------------------------------------------
for hno, type, free, price in session.sql (select):
  print "%6d %s %d %6d" % (hno, type, free, price)
#
# Close connection to the database
# --------------------------------------------
session.release ()
    End of the code.

  2. Call the Python script:

    python sample.py MONA RED DEMODB

Result

10 double 45 200

10 single 20 135

20 double 13 100

20 single 10 70

30 double 15 80

30 single 12 45

[...]


first Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation first Method (SapDB_ResultSet Class)

first is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to position the cursor on the first data record in the result set.

Features

Syntax Syntax

  1. first ()
End of the code.
Result

  • First data record in the result set

  • If the result set is empty: None

Example

  • Syntax Syntax

    1. row = cursor.first ()
    End of the code.

  • Example: Executing an SQL Statement and Navigating in the Result Set


read Method (SapDB_LongReader Class) - SAP Documentation

Function documentation read Method (SapDB_LongReader Class)

read is a method of the SapDB_LongReader class (sdb.sql module) for reading LOB values.

Features

Syntax Syntax

  1. read (count = -1)
End of the code.
read Method: Attributes
Attribute | Description
count | Number of characters to be read
Result

  • If you called the method without parameters: Rest of the LOB value

  • If the end of the LOB value has been reached: Empty string

This allows you to use objects of the SapDB_LongReader class like objects of the file class.


connect Method (sdb.sql Module) - SAP Documentation

Function documentation connect Method (sdb.sql Module)

connect is a method of the sdb.sql module for opening database sessions.

Prerequisites

The database is in ONLINE operational state.

Features

Syntax Syntax

  1. connect (database_user, password, database_name , host = '' config = '')
End of the code.
connect Method: Attributes
Attribute | Description
database_user | Name of the database user
password | Password of the database user Note that the password is case-sensitive.
database_name | Database name
host | Name or IP address of the database computer
config | Connection options (see below) Format: keyword=value[&keyword=value]...
connect Method: Connection Options
Keyword | Values | Default Value | Description
autocommit | on | off | off | AUTOCOMMIT mode on: After each SQL statement, the transaction is ended with a COMMIT. off: You control the transaction using the commit method (SapDB_Session class) and the rollback method (SapDB_Session class).
cachelimit | <value in kB> | Database default value | The cache limit of the database session in KB
component | odbc | cpc | cpc | odbc: The database chooses the SQL variant that is valid for ODBC for processing. cpc: The database chooses the SQL variant that is valid for the C++ precompiler for processing.
genericResults | on | off | off | on: The sql method (SapDB_Session class), sqlX method (SapDB_Session class), and the execute method (SapDB_Prepared class) return an object of the SapDB_Result class (sdb.sql module) as a result. This can be useful, for example, for applications for which the SQL mode is unknown. off: The SQL results can differ according to the SQL statement that is executed.
isolation | 0 | 1 | 2 | 3 | 10 | 15 | 20 | 30 | Database default value | Isolation level
sqlmode | internal | oracle | internal | SQL mode
timeout | 0 | <value in seconds> | Database default value | Maximum inactivity time for a database session (in seconds)

Result:

  • Successful execution: Object of the SapDB_Session class (sdb.sql module)

  • If an error occurs: Exception of the CommunicationError class (sdb.sql module)

Example

  • Database user MONA with password RED connects to the DEMODB database on the local computer:

    session=sdb.sql.connect ('MONA', 'RED', 'DEMODB')

  • Database user MONA with password RED connects to the DEMODB database on the computer PARMA:

    session=sdb.sql.connect ('MONA', 'RED', 'DEMODB','PARMA')

  • Database user MONA with password RED connects to the DEMODB database on the local computer using the connection options SQL mode=ORACLE and command timeout = 60 seconds:

    session=sdb.sql.connect ('MONA', 'RED', 'DEMODB','', 'sqlmode=oracle&timeout=60')

  • Example: Establishing and Closing the Connection to a Database


rollback Method (SapDB_Session Class) - SAP Documentation

Function documentation rollback Method (SapDB_Session Class)

rollback is a method of the SapDB_Session class (sdb.sql module). You can use this to end the current transaction with a ROLLBACK and start a new transaction.

Features

Syntax Syntax

  1. rollback ()
End of the code.


__getitem__ Method (SapDB_ResultSet Class) - SAP Documentation

Function documentation __getitem__ Method (SapDB_ResultSet Class)

__getitem__ is a method of the SapDB_ResultSet class (sdb.sql module). You can use this method to position the cursor on a data record in the result set and to iterate through all the data records in the result set in a for loop.

Features

Syntax Syntax

  1. __getitem__ (pos)
End of the code.
__getitem___ Method: Attributes
Attribute | Description
pos | Position of the data record pos=0: First data record in the result set
Result

  • Data record at the specified position in the result set

  • If the result set is empty or if pos exceeds the number of data records in the result set: None

Example

You iterate through the entire result set using for. The system implicitly calls the __getitem__ method and raises the value of the pos parameter in increments of 1 until the method triggers an exception.

Syntax Syntax

  1. for zip, name, state in session.sql ('SELECT * FROM hotel.city'):
  print zip, name, state
End of the code.


getResultSet Method (SapDB_Result Class) - SAP Documentation

Function documentation getResultSet Method (SapDB_Result Class)

getResultSet is a method of the SapDB_Result class (sdb.sql module). You can use this method to read the result set of SQL statements.

Features

Syntax Syntax

  1. getResultSet ()
End of the code.
Result

  • Object of the SapDB_ResultSet class (sdb.sql module)

  • If the result set is empty: None


Example: Executing an SQL Statement and Navigating in the Result Set - SAP Documentation

Procedure documentation Example: Executing an SQL Statement and Navigating in the Result Set

In this example, you use methods of the SapDB_ResultSet class from the sdb.sql module. You create a table, fill it with values, execute an SQL statement, and position the cursor at different places in the result set.

Procedure

  1. Create a new table customer1 and fill it with data:

    Syntax Syntax

    1. session.sql ('CREATE TABLE customer1 (cno FIXED(4) PRIMARY KEY)')
insert = session.prepare ('INSERT INTO customer1 (cno) VALUES (?)')
for i in xrange (1, 11):
  insert.execute ([i])
    End of the code.

  2. Execute the following SQL statement:

    Syntax Syntax

    1. cursor = session.sql ('SELECT cno FROM customer1 ORDER BY cno')
    End of the code.

    The SQL statement returns a result set. The cursor is positioned before the first data record of the result set.

  3. Position the cursor at various places in the result set and display the respective data record:

    1. Next data record (first data record in the result set):

      Syntax Syntax

      1. print cursor.next ()
      2. (1,)
      End of the code.

    2. Next data record:

      Syntax Syntax

      1. print cursor.next ()
      2. (2,)
      End of the code.

    3. Previous data record:

      Syntax Syntax

      1. print cursor.previous ()
      2. (1,)
      End of the code.

    4. Five data records forwards:

      Syntax Syntax

      1. print cursor.relative (5)
      2. (6,)
      End of the code.

    5. One data record back:

      Syntax Syntax

      1. print cursor.relative (-1)
      2. (5,)
      End of the code.

    6. Third data record:

      Syntax Syntax

      1. print cursor.absolute (3)
      2. (3,)
      End of the code.

    7. Third-to-last data record:

      Syntax Syntax

      1. print cursor.absolute (-3)
      2. (8,)
      End of the code.

    8. First data record:

      Syntax Syntax

      1. print cursor.first ()
      2. (1,)
      End of the code.

    9. Last data record:

      Syntax Syntax

      1. print cursor.last ()
      2. (10,)
      End of the code.

    10. Current data record:

      Syntax Syntax

      1. print cursor.current ()
      2. (10,)
      End of the code.

  4. Iterate through the entire result set and display all data records:

    Syntax Syntax

    1. for row in cursor: print row
    2. (1,)
(2,)
(3,)
(4,)
(5,)
(6,)
(7,)
(8,)
(9,)
(10,)
    End of the code.


SapDB_Session Class (sdb.sql Module) - SAP Documentation

Function documentation SapDB_Session Class (sdb.sql Module)

SapDB_Session is a class of the sdb.sql module. You can use the methods of this class to execute SQL statements.

An object of this class corresponds to a database session. To generate an object of this class, use the connect method (sdb.sql module). After the last reference to an object of this class has been deleted, the system closes the database session with a ROLLBACK of the transaction.

Features

  • sql Method (SapDB_Session Class)

  • sqlX Method (SapDB_Session Class)

  • prepare Method (SapDB_Session Class)

  • release Method (SapDB_Session Class)

  • commit Method (SapDB_Session Class)

  • rollback Method (SapDB_Session Class)

Restrictions

The following restriction applies to the sql, sqlX and prepare methods: You cannot use Unicode character strings in SQL statements.


Python Manual - SAP Documentation

Background documentation Python Manual

You can use the SAP MaxDB Python modules to access SAP MaxDB databases from Python scripts.

SAP MaxDB Python Modules
Name | Programming Interface | Use
sdb.dbapi Module | SQL | Executing SQL statements (implements the Python Database API Specification v2.0)
sdb.sql Module | SQL | Executing SQL statements (SAP MaxDB-specific)

The SAP MaxDB Python modules can be used on all operating systems supported by the database system. They are part of the SAP MaxDB software.

Procedure

Installing the Python Modules

Constraints

For Unicode-compatible databases only: In SQL statements, you can only use Unicode values in input and output parameters.


sdb.sql Module - SAP Documentation

Function documentation sdb.sql Module

sdb.sql is a Python module for SAP MaxDB databases. You can use this module to execute SQL statements in Python scripts.

Note Note

To access an SAP MaxDB database as per the Python Database API Specification v2.0, use the sdb.dbapi module.

End of the note.

Prerequisites

You have installed the Python modules.

More information: Installing the Python Modules

Features

  • connect Method (sdb.sql Module)

  • SapDB_Session Class (sdb.sql Module)

  • SapDB_ResultSet Class (sdb.sql Module)

  • SapDB_Prepared Class (sdb.sql Module)

  • SapDB_Result Class (sdb.sql Module)

  • Error Handling for the sdb.sql Module

Example

Examples for the sdb.sql Module

More Information

For information about the SAP MaxDB SQL syntax, see the SQL Reference Manual.


prepare Method (SapDB_Session Class) - SAP Documentation

Function documentation prepare Method (SapDB_Session Class)

prepare is a method of the SapDB_Session class (sdb.sql module). You can use this method to send SQL statements to the database in order for them to be checked.

Features

Syntax Syntax

  1. prepare (cmd)
End of the code.
prepare Method: Attributes
Attribute | Description
cmd | SQL statement

Result:

  • Successful execution: Object of the SapDB_Prepared class (sdb.sql module)

    You can use this object to execute the same SQL statement multiple times with different parameters (execute method (SapDB_Prepared class)). That way the database does not need to recheck the syntax and privileges each time.

  • If an error occurs: Exception of the SQLError class (sdb.sql module)

Example

  • You send an INSERT statement to the database:

    insert = session.prepare ('INSERT INTO hotel.city VALUES (?,?,?)')

    The insert variable contains an object of the SapDB_Prepared class (sdb.sql module). You can use this object to execute the INSERT statement with different parameters.

  • Example: Executing an SQL Statement Multiple Times with Different Values


SapDB_Prepared Class (sdb.sql Module) - SAP Documentation

Function documentation SapDB_Prepared Class (sdb.sql Module)

SapDB_Prepared is a class of the sdb.sql module. You can use the methods of this class to execute the same SQL statement multiple times with different parameters. This has the following advantages:

  • The database system only needs to check the syntax and privileges once.

  • The Python application does not have to convert parameters into an SQL syntax-appropriate format, so special characters do not require special treatment.

To generate an object of this class, use the prepare method (SapDB_Session class).

Features

  • execute Method (SapDB_Prepared Class)

  • getDescription Method (SapDB_Prepared Class)


Perl Manual - SAP Documentation

Background documentation Perl Manual

You can use the SAP MaxDB Perl module to access SAP MaxDB databases from Perl scripts.

SAP MaxDB Perl Module
Name | Programming Interface | Use
DBD::MaxDB | SQL | Executing SQL queries and processing the results

The Perl module can be used on all operating systems supported by the database system.

For more information and to download the Perl module, go to http://search.cpan.org/~maxdb/

More Information

Configuring the Perl Module


Configuring the Perl Module - SAP Documentation

Procedure documentation Configuring the Perl Module

Prerequisites

You have downloaded and installed the Perl module in the <perl_dir> directory.

Procedure

Add <perl_dir> to the environment variable PERL5LIB:

  • Microsoft Windows:

    set PERL5LIB=%PERL5LIB%;<perl_dir>

  • Unix and Linux (sh or bash):

    PERL5LIB=$PERL5LIB:<perl_dir> export PERL5LIB


Troubleshooting Using the SAP MaxDB ODBC Trace - SAP Documentation

Procedure documentation Troubleshooting Using the SAP MaxDB ODBC Trace

The SAP MaxDB ODBC trace logs SQL statements, communication packages, and method calls that the database receives and sends via the SAP MaxDB ODBC interface. To configure and control the SAP MaxDB ODBC Trace, you use the odbc_cons command line program.

Caution Caution

Traces compromise performance. Use traces only for troubleshooting and problem analysis.

End of the caution.

odbc_cons is a component of the SAP MaxDB software..

Procedure

Enter the following command on the command line:

<installation_path>/bin/odbc_cons [<command>] [<option>]

Note Note

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.
SQLDBC Trace and ODBC Trace: Commands
<command> | Description
CONFIG TRACE FILENAME <trace_file_name> | Specifies the name <trace_file_name> of the trace file If you enter %p in the name, it is replaced by the process ID of the application for which the trace is written.
PROFILE FILENAME <profile_file_name> | Specifies the name <profile_file_name> of the profile file
PROFILE [COLLECT ON | COLLECT OFF | RESET] | Activates or deactivates profiling (collecting statistical information) or resets all statistics counters
SHOW ALL | Displays the configuration of the traces and current information about the traces
SHOW CONFIG | Displays the configuration of the traces
SHOW PROFILE | Displays the collected statistical information in aggregated form
SHOW TRACESETTINGS | Displays current information about the traces
TRACE API ON | OFF | Applies only to the ODBC interface: Activates or deactivates the API trace The API trace is similar to the Microsoft Driver Manager trace, but logs more actions.
TRACE LONG ON | OFF | Activates/deactivates the detailed LONG trace The LONG trace logs method calls with their call parameters.
TRACE OFF | Deactivates all SQLDBC traces
TRACE PACKET ON | OFF | <size> | Activates or deactivates the PACKET trace The PACKET trace logs communication packages. You use the <size> option to configure the size of the logged communication packages in bytes (default value: 1000 bytes).
TRACE SHORT ON | OFF | Activates or deactivates the SHORT trace The SHORT trace logs method calls.
TRACE SIZE <size> | Defines the size <size> of the trace file (in bytes) The system requires at least 8192 bytes for the trace file.
TRACE SQL ON | OFF | Activates or deactivates the SQL trace The SQL trace logs SQL statements (the most simple trace is sufficient for most analyses).
TRACE STOP ON ERROR <error_number> | OFF [COUNT <number>] | Deactivates the trace after the error with error number <error_number> has occurred the number of times configured by the <number> option
TRACE TIMESTAMP ON | OFF | Activates or deactivates the time stamp for each logged action
SQLDBC Trace and ODBC Trace: Options

<option>

Description

Note that you can enter only one trace option at a time. They cannot be combined.

-f

Forces the execution of the command

-h

Displays help

-p <pid>

Executes the command only for the process with process ID <pid>.

-u <domain>\<os_user>

For Microsoft Windows only

To use this option, you need administration privileges on your computer.

With this option, you write the trace for the operating system user <os_user> of the <domain>. If you do not specify this option, the trace is written for the operating system user who is logged on.

You need this option, for example, to activate the trace in an SAP system where you cannot logon with the user SAPservice<SID>.

-v

Displays detailed information (verbose)

Result

The SAP MaxDB ODBC trace writes its results in chronological order into the odbctrace-<pid>.prt trace file in the <data_path>\wrk (Microsoft Windows) or <user_home>\.sdb\<computer_name> (Unix/Linux) directory.

If profiling has been activated, the ODBC trace writes aggregated statistical information to the odbcprofile-<pid>.prt file.

<pid> = process ID

The trace file is overwritten cyclically.

More Information

Glossary, Directory


Core API - SAP Documentation

Background documentation Core API

SAP MaxDB ODBC Driver for the Core API: Function Overview

Function

Comments

SQLAllocConnect

-

SQLAllocEnv

-

SQLAllocStmt

-

SQLBindCol

If the length specification pcbValueMax is smaller than the length of a bound LOB column, the SAP MaxDB ODBC driver returns the value SQL_NO_TOTAL as the pcbValue. In all other cases, pcbValue specifies the length of the copied bytes.

You can then get other parts of this LOB column using the SQLGetData function.

SQLCancel

-

SQLColAttributes

-

SQLConnect

-

SQLDescribeCol

-

SQLDisconnect

-

SQLError

-

SQLExecDirect

-

SQLExecute

-

SQLFetch

-

SQLFreeConnect

-

SQLFreeEnv

-

SQLFreeStmt

-

SQLGetCursorName

Case-sensitive, maximum length 18 characters

Take this into account, for example, with the statement SELECT FOR UPDATE, as identifiers that are not enclosed in quotation marks are automatically converted into uppercase letters.

The SAP MaxDB ODBC driver constructs default values for cursor names in accordance with the following schema: SQL_CURSOR_nnnn, where nnnn is an internal counter.

SQL_CUR_nnnnnnn (if n >= 10000)

SQLNumResultCols

-

SQLPrepare

-

SQLRowCount

Specifies the number of affected rows for all SELECT, INSERT, DELETE statements, and so on.

If no result set was created, the value -1 is displayed for the undeterminable number of affected rows.

SQLSetCursorName

-

SQLTransact

-


Supported Data Types - SAP Documentation

Background documentation Supported Data Types

The ODBC interface distinguishes between the following data types:

  • SQL data types (data types provided by the database system)

  • C data types (data types used in the application)

The SAP MaxDB ODBC driver enables the conversion of all data types supported by ODBC.

SAP MaxDB Data Types Supported by the SAP MaxDB ODBC Driver (SQL Data Types)
Group | Data Type
Character | CHAR, VARCHAR, CLOB, CHAR BYTE, VARCHAR BYTE, BLOB
Numeric | DECIMAL, FIXED, INTEGER, SMALLINT, FLOAT, REAL, DOUBLE PRECISION
Time/date | DATE, TIME, TIMESTAMP
Other | BOOLEAN

More Information

SQL Reference Manual, Data Type (data_type)


ODBC Manual - SAP Documentation

Background documentation ODBC Manual

You can use the SAP MaxDB ODBC driver to access SAP MaxDB databases via the ODBC interface.

The ODBC driver can be used on all operating systems supported by the database system. It is a component of the SAP MaxDB software.

SAP MaxDB ODBC Driver
Operating System | ODBC Driver (ASCII) | ODBC Driver (Unicode)
Microsoft Windows | sdbodbc.dll | sdbodbcw.dll
Unix and Linux | libsdbodbc.a|so | libsdbodbcw.a|so
Content

Installing the SAP MaxDB ODBC Driver

Accessing SAP MaxDB Databases Via ODBC

SAP MaxDB ODBC Driver Reference

More Information

Concepts of the Database System, Interfaces

Database Administration, Developing Database Applications

For more information about ODBC, see the Microsoft Developer Network at http://msdn.microsoft.com


Level 1 API - SAP Documentation

Background documentation Level 1 API

SAP MaxDB ODBC Driver for the Level 1 API: Function Overview
Function | Note
SQLBindParameter | -
SQLColumns | -
SQLDriverConnect | Keyword for the name of the database computer: SERVERNODE Keyword for the name of the database: SERVERDB
SQLGetConnectAttr | See below
SQLGetData | -
SQLGetFunctions | See below
SQLGetInfo | See below
SQLGetStmtAttr | -
SQLGetTypeInfo | You can determine the data types supported by the SAP MaxDB database system using the function SQLGetTypeInfo. More information: Supported Data Types
SQLParamData | -
SQLPutData | -
SQLSetConnectAttr | See SQLGetConnectAttr
SQLSetParam | -
SQLSetStmtAttr | -
SQLSpecialColumns | -
SQLStatistics | -
SQLTables | The SAP MaxDB ODBC driver supports the following table types (szTableType): ALIAS, RESULT, SNAPSHOT, SYSTEM, SYSTEM TABLE, TABLE, UNLOADED, VIEW
Remarks for SQLGetConnectAtt
SAP MaxDB ODBC Driver: Supported Attributes and Return Codes for SQLGetConnectAtt
Attribute | Return Values
SQL_ ATTR_ACCESS_MODE | pvParam = SQL_MODE_READ_WRITE
SQL_ ATTR_AUTOCOMMIT | pvParam = SQL_AUTOCOMMIT_ON
SQL_ATTR_CONNECTION_DEAD | -
SQL_ATTR_CURRENT_CATALOG | -
SQL_ ATTR_LOGIN_TIMEOUT | pvParam = 15
SQL_ATTR_ODBC_CURSORS | -
SQL_ATTR_QUIET_MODE | -
SQL_ ATTR_OPT_TRACE | pvParam = SQL_OPT_TRACE_OFF =0
SQL_ ATTR_OPT_TRACEFILE | The file name set with SQLSetConnectAttr, default value: \SQL.LOG
SQL_ ATTR_TRANSLATE_LIB | -
SQL_ ATTR_TRANSLATE_OPTION | pvParam = 0
SQL_ ATTR_TXN_ISOLATION | pvParam = SQL_TXN_REPEATABLE_READ
SQL_ MODE = SQL_CONNECT_OPT_START + 2 | pvParam = (1 = INTERNAL, 2 = DB2, 3 = ANSI, 4 = ORACLE)
Remarks for SQLGetFunctions

If the function ID SQL_API_ODBC3_ALL_FUNCTION is specified, the macro SQL_FUNC_EXISTS returns the result TRUE for the following values:

SQL_API_SQLALLOCCONNECT

SQL_API_SQLALLOCENV

SQL_API_SQLALLOCHANDLE

SQL_API_SQLALLOCHANDLESTD

SQL_API_SQLALLOCSTMT

SQL_API_SQLBINDCOL

SQL_API_SQLBINDPARAM

SQL_API_SQLBINDPARAMETER

SQL_API_SQLBROWSECONNECT

SQL_API_SQLBULKOPERATIONS

SQL_API_SQLCANCEL

SQL_API_SQLCLOSECURSOR

SQL_API_SQLCOLATTRIBUTES

SQL_API_SQLCOLUMNPRIVILEGES

SQL_API_SQLCOLUMNS

SQL_API_SQLCONNECT

SQL_API_SQLCOPYDESC

SQL_API_SQLDATASOURCES

SQL_API_SQLDESCRIBECOL

SQL_API_SQLDESCRIBEPARAM

SQL_API_SQLDISCONNECT

SQL_API_SQLDRIVERCONNECT

SQL_API_SQLDRIVERS

SQL_API_SQLENDTRAN

SQL_API_SQLERROR

SQL_API_SQLEXECDIRECT

SQL_API_SQLEXECUTE

SQL_API_SQLEXTENDEDFETCH

SQL_API_SQLFETCH

SQL_API_SQLFETCHSCROLL

SQL_API_SQLFOREIGNKEYS

SQL_API_SQLFREECONNECT

SQL_API_SQLFREEENV

SQL_API_SQLFREEHANDLE

SQL_API_SQLFREESTMT

SQL_API_SQLGETCONNECTATTR

SQL_API_SQLGETCONNECTOPTION

SQL_API_SQLGETCURSORNAME

SQL_API_SQLGETDATA

SQL_API_SQLGETDESCFIELD

SQL_API_SQLGETDESCREC

SQL_API_SQLGETDIAGFIELD

SQL_API_SQLGETDIAGREC

SQL_API_SQLGETENVATTR

SQL_API_SQLGETFUNCTIONS

SQL_API_SQLGETINFO

SQL_API_SQLGETSTMTATTR

SQL_API_SQLGETSTMTOPTION

SQL_API_SQLGETTYPEINFO

SQL_API_SQLMORERESULTS

SQL_API_SQLNATIVESQL

SQL_API_SQLNUMPARAMS

SQL_API_SQLNUMRESULTCOLS

SQL_API_SQLPARAMDATA

SQL_API_SQLPARAMOPTIONS

SQL_API_SQLPREPARE

SQL_API_SQLPRIMARYKEYS

SQL_API_SQLPROCEDURECOLUMNS

SQL_API_SQLPROCEDURES

SQL_API_SQLPUTDATA

SQL_API_SQLROWCOUNT

SQL_API_SQLSETCONNECTATTR

SQL_API_SQLSETCONNECTOPTION

SQL_API_SQLSETCURSORNAME

SQL_API_SQLSETDESCFIELD

SQL_API_SQLSETDESCREC

SQL_API_SQLSETENVATTR

SQL_API_SQLSETPARAM

SQL_API_SQLSETPOS

SQL_API_SQLSETSCROLLOPTIONS

SQL_API_SQLSETSTMTATTR

SQL_API_SQLSETSTMTOPTION

SQL_API_SQLSPECIALCOLUMNS

SQL_API_SQLSTATISTICS

SQL_API_SQLTABLEPRIVILEGES

SQL_API_SQLTABLES

SQL_API_SQLTRANSACT

Remarks for SQLGetInfo
SAP MaxDB ODBC Driver: Supported Attributes and Return Values for SQLGetInfo
Attribute | Return Values
SQL_ACCESSIBLE_PROCEDURES | rgbInfoValue = "N"
SQL_ACCESSIBLE_TABLES | rgbInfoValue = "N"
SQL_ACTIVE_CONNECTIONS | rgbInfoValue = 0
SQL_ACTIVE_STATEMENTS | rgbInfoValue = 32767
SQL_ALTER_TABLE | rgbInfoValue = SQL_AT_ADD_COLUMN | SQL_AT_DROP_COLUMN | SQL_AT_ADD_COLUMN_DEFAULT | SQL_AT_ADD_CONSTRAINT | SQL_AT_ADD_TABLE_CONSTRAINT | SQL_AT_DROP_COLUMN_CASCADE | SQL_AT_DROP_COLUMN_DEAFAULT | SQL_AT_SET_COLUMN_DEFAULT
SQL_BOOKMARK_PERSISTENCE | rgbInfoValue = SQL_BP_SCROLL | SQL_BP_UPDATE
SQL_CATALOG_LOCATION | rgbInfoValue = 1 (SQL_CL_START)
SQL_CATALOG_NAME_SEPARATOR | rgbInfoValue = "."
SQL_CATALOG_TERM | rgbInfoValue = "Qualifier"
SQL_CATALOG_USAGE | rgbInfoValue = 0x00000000
SQL_COLUMN_ALIAS | rgbInfoValue = "Y"
SQL_CONCAT_NULL_BEHAVIOR | rgbInfoValue = 0 (SQL_CB_NULL)
SQL_CONVERT_BIGINT | -
SQL_CONVERT_BINARY | -
SQL_CONVERT_BIT | -
SQL_CONVERT_CHAR | -
SQL_CONVERT_DATE | -
SQL_CONVERT_DECIMAL | -
SQL_CONVERT_DOUBLE | -
SQL_CONVERT_FLOAT | -
SQL_CONVERT_FUNCTIONS | rgbInfoValue = 0x00000000L
SQL_CONVERT_INTEGER | -
SQL_CONVERT_LONGVARBINARY | rgbInfoValue = 0x00000000L
SQL_CONVERT_LONGVARCHAR | -
SQL_CONVERT_NUMERIC | -
SQL_CONVERT_REAL | -
SQL_CONVERT_SMALLINT | -
SQL_CONVERT_TIME | -
SQL_CONVERT_TIMESTAMP | -
SQL_CONVERT_TINYINT | -
SQL_CONVERT_VARBINARY | -
SQL_CONVERT_VARCHAR | -
SQL_CORRELATION_NAME | rgbInfoValue = 2 (SQL_CN_ANY)
SQL_CURSOR_COMMIT_BEHAVIOR | rgbInfoValue = SQL_CB_PRESERVE | SQL_CB_DELETED (SQLMode = ANSI)
SQL_CURSOR_ROLLBACK_BEHAVIOR | rgbInfoValue = SQL_CB_PRESERVE | SQL_CB_DELETED (SQLMode = ANSI)
SQL_DATA_SOURCE_NAME | rgbInfoValue = (Name of the opened data source)
SQL_DATA_SOURCE_READ_ONLY | rgbInfoValue = "N"
SQL_DBMS_NAME | rgbInfoValue = "MaxDB"
SQL_DBMS_VER | rgbInfoValue = "07.06.nnn"
SQL_DEFAULT_TXN_ISOLATION | rgbInfoValue = SQL_TXN_READ_COMMITTED
SQL_DRIVER_HDBC | rgbInfoValue = (Handle of the driver logon)
SQL_DRIVER_HENV | rgbInfoValue = (Handle of the driver environment)
SQL_DRIVER_HLIB | rgbInfoValue = (Handle of the library)
SQL_DRIVER_HSTMT | rgbInfoValue = (Handle of the driver statement)
SQL_DRIVER_NAME | rgbInfoValue = "sdbodbc.dll", "libsdbodbc.so" (Unix)
SQL_DRIVER_ODBC_VER | rgbInfoValue = "03.51"
SQL_DRIVER_ODBC_VER | rgbInfoValue = (Version of the driver manager > 3.51)
SQL_DRIVER_VER | rgbInfoValue = "7.<minor_version>.<correction_level>b<build_number>"
SQL_EXPRESSIONS_IN_ORDERBY | rgbInfoValue = "N"
SQL_FETCH_DIRECTION | rgbInfoValue = SQL_FD_FETCH_NEXT | SQL_FD_FETCH_FIRST | SQL_FD_FETCH_LAST | SQL_FD_FETCH_PRIOR | SQL_FD_FETCH_ABSOLUTE | SQL_FD_FETCH_RELATIVE | SQL_FD_FETCH_BOOKMARK
SQL_FILE_USAGE | rgbInfoValue = 0 (SQL_FILE_NOT_SUPPORTED)
SQL_GETDATA_EXTENSIONS | rgbInfoValue = SQL_GD_ANY_COLUMN | SQL_GD_ANY_ORDER | SQL_GD_ANY_BOUND | SQL_GD_ANY_BLOCK
SQL_GROUP_BY | rgbInfoValue = SQL_GB_GROUP_BY_CONTAINS_SELECT
SQL_IDENTIFIER_CASE | rgbInfoValue = 1 (SQL_IC_UPPER)
SQL_IDENTIFIER_QUOTE_CHAR | rgbInfoValue = "\""
SQL_INTEGRITY | rgbInfoValue = "N"
SQL_KEYWORDS | rgbInfoValue = (List of key words, depends on SQLMode)
SQL_LIKE_ESCAPE_CLAUSE | rgbInfoValue = "Y"
SQL_LOCK_TYPES | rgbInfoValue = 1 SQL_LCK_NO_CHANGE
SQL_MAX_BINARY_LITERAL_LEN | rgbInfoValue = 0
SQL_MAX_CATALOG_NAME_LEN | rgbInfoValue = 0
SQL_MAX_CHAR_LITERAL_LEN | rgbInfoValue = 0
SQL_MAX_COLUMN_NAME_LEN | rgbInfoValue = 32
SQL_MAX_COLUMNS_IN_GROUP_BY | rgbInfoValue = 128
SQL_MAX_COLUMNS_IN_INDEX | rgbInfoValue = 16
SQL_MAX_COLUMNS_IN_ORDER_BY | rgbInfoValue = 128
SQL_MAX_COLUMNS_IN_SELECT | rgbInfoValue = 1023
SQL_MAX_COLUMNS_IN_TABLE | rgbInfoValue = 1023
SQL_MAX_CONCURRENT_ACTIVITIES | rgbInfoValue = 32767
SQL_MAX_CURSOR_NAME_LEN | rgbInfoValue = 32
SQL_MAX_DRIVER_CONNECTIONS | rgbInfoValue = 0
SQL_MAX_INDEX_SIZE | rgbInfoValue = 1024
SQL_MAX_OWNER_NAME_LEN | rgbInfoValue = 32
SQL_MAX_PROCEDURE_NAME_LEN | rgbInfoValue = 32
SQL_MAX_QUALIFIER_NAME_LEN | rgbInfoValue = 0
SQL_MAX_ROW_SIZE | rgbInfoValue = 0
SQL_MAX_ROW_SIZE_INCLUDES_LONG | rgbInfoValue = "N"
SQL_MAX_SCHEMA_NAME_LEN | rgbInfoValue = 32
SQL_MAX_STATEMENT_LEN | rgbInfoValue = 0
SQL_MAX_TABLE_NAME_LEN | rgbInfoValue = 32
SQL_MAX_TABLES_IN_SELECT | rgbInfoValue = 64
SQL_MAX_USER_NAME_LEN | rgbInfoValue = 32
SQL_MULT_RESULT_SETS | rgbInfoValue = "N"
SQL_MULTIPLE_ACTIVE_TXN | rgbInfoValue = "Y"
SQL_NEED_LONG_DATA_LEN | rgbInfoValue = "N"
SQL_NON_NULLABLE_COLUMN | rgbInfoValue = 1 (SQL_NNC_NON_NULL)
SQL_NULL_COLLATION | rgbInfoValue = 1 (SQL_NC_LOW)
SQL_NUMERIC_FUNCTIONS | rgbInfoValue = SQL_FN_NUM_ABS | SQL_FN_NUM_ACOS | SQL_FN_NUM_ASIN | SQL_FN_NUM_ATAN | SQL_FN_NUM_ATAN2 | SQL_FN_NUM_CEILING | SQL_FN_NUM_COS | SQL_FN_NUM_COT | SQL_FN_NUM_EXP | SQL_FN_NUM_FLOOR | SQL_FN_NUM_LOG | SQL_FN_NUM_MOD | SQL_FN_NUM_SIGN | SQL_FN_NUM_SIN | SQL_FN_NUM_SQRT | SQL_FN_NUM_TAN | SQL_FN_NUM_PI | SQL_FN_NUM_DEGREES | SQL_FN_NUM_RADIANS | SQL_FN_NUM_ROUND
SQL_ODBC_API_CONFORMANCE | rgbInfoValue = 2 (SQL_OAC_LEVEL2)
SQL_ODBC_SAG_CLI_CONFORMANCE | rgbInfoValue = 1 (SQL_OSCC_COMPLIANT)
SQL_ODBC_SQL_CONFORMANCE | rgbInfoValue = 2 (SQL_OSC_EXTENDED)
SQL_ODBC_SQL_OPT_IEF | rgbInfoValue = "N"
SQL_ODBC_VER | rgbInfoValue = "03.520000"
SQL_ORDER_BY_COLUMNS_IN_SELECT | rgbInfoValue = "N"
SQL_OUTER_JOINS | rgbInfoValue = "Y"
SQL_OWNER_TERM | rgbInfoValue = "Schema"
SQL_OWNER_USAGE | rgbInfoValue = SQL_OU_DML_STATEMENTS | SQL_OU_PROCEDURE_INVOCATION | SQL_OU_TABLE_DEFINITION | SQL_OU_INDEX_DEFINITION | SQL_OU_PRIVILEGE_DEFINITION
SQL_POS_OPERATIONS | rgbInfoValue = SQL_POS_UPDATE | SQL_POS_DELETE | SQL_POS_ADD (permitted with dynamic cursors only) | SQL_POS_POSITION | SQL_POS_REFRESH
SQL_POSITIONED_STATEMENTS | rgbInfoValue = rgbInfoValue = SQL_PS_POSITIONED_DELETE | SQL_PS_POSITIONED_UPDATE | SQL_PS_SELECT_FOR_UPDATE
SQL_PROCEDURE_TERM | rgbInfoValue = "stored procedure"
SQL_PROCEDURES | rgbInfoValue = "Y"
SQL_QUALIFIER_LOCATION | rgbInfoValue = 1 (SQL_CL_START)
SQL_QUALIFIER_NAME_SEPARATOR | rgbInfoValue = "."
SQL_QUALIFIER_TERM | rgbInfoValue = "Qualifier"
SQL_QUALIFIER_USAGE | rgbInfoValue = 0x00000000
SQL_QUOTED_IDENTIFIER_CASE | rgbInfoValue = 3 (SQL_IC_SENSITIVE)
SQL_ROW_UPDATES | rgbInfoValue = "Y"
SQL_SCHEMA_TERM | rgbInfoValue = "Schema"
SQL_SCHEMA_USAGE | rgbInfoValue = SQL_OU_DML_STATEMENTS | SQL_OU_PROCEDURE_INVOCATION | SQL_OU_TABLE_DEFINITION | SQL_OU_INDEX_DEFINITION | SQL_OU_PRIVILEGE_DEFINITION
SQL_SCROLL_CONCURRENCY | rgbInfoValue = SQL_SCCO_READ_ONLY | SQL_SCCO_LOCK | SQL_SCCO_OPT_ROWVER | SQL_SCCO_OPT_VALUES
SQL_SCROLL_OPTIONS | rgbInfoValue = SQL_SO_FORWARD_ONLY | SQL_SO_KEYSET_DRIVEN | SQL_SO_DYNAMIC | SQL_SO_STATIC
SQL_SEARCH_PATTERN_ESCAPE | rgbInfoValue = "\"
SQL_SERVER_NAME | rgbInfoValue = (Name of the database computer)
SQL_SPECIAL_CHARACTERS | rgbInfoValue = "#@$"
SQL_STATIC_SENSITIVITY | rgbInfoValue = 0x00000000
SQL_STRING_FUNCTIONS | rgbInfoValue = SQL_FN_STR_LEFT | SQL_FN_STR_LTRIM | SQL_FN_STR_LENGTH | SQL_FN_STR_LCASE | SQL_FN_STR_REPLACE | SQL_FN_STR_RIGHT | SQL_FN_STR_RTRIM | SQL_FN_STR_SUBSTRING | SQL_FN_STR_UCASE | SQL_FN_STR_SOUNDEX
SQL_SUBQUERIES | rgbInfoValue = SQL_SQ_COMPARISON | SQL_SQ_EXISTS | SQL_SQ_IN | SQL_SQ_CORRELATED_SUBQUERIES
SQL_SYSTEM_FUNCTIONS | rgbInfoValue = SQL_FN_SYS_USERNAME | SQL_FN_SYS_DBNAME | SQL_FN_SYS_IFNULL
SQL_TABLE_TERM | rgbInfoValue = "Table"
SQL_TIMEDATE_ADD_INTERVALS | rgbInfoValue = 0x00000000
SQL_TIMEDATE_DIFF_INTERVALS | rgbInfoValue = 0x00000000
SQL_TIMEDATE_FUNCTIONS | rgbInfoValue = SQL_FN_TD_NOW | SQL_FN_TD_CURDATE | SQL_FN_TD_DAYOFMONTH | SQL_FN_TD_DAYOFWEEK | SQL_FN_TD_DAYOFYEAR | SQL_FN_TD_MONTH | SQL_FN_TD_WEEK | SQL_FN_TD_YEAR | SQL_FN_TD_CURTIME | SQL_FN_TD_HOUR | SQL_FN_TD_MINUTE | SQL_FN_TD_SECOND | SQL_FN_TD_DAYNAME | SQL_FN_TD_MONTHNAME
SQL_TXN_CAPABLE | rgbInfoValue = 2 (SQL_TC_ALL)
SQL_TXN_ISOLATION_OPTION | rgbInfoValue = SQL_TXN_READ_UNCOMMITTED | SQL_TXN_READ_COMMITTED | SQL_TXN_REPEATABLE_READ | SQL_TXN_SERIALIZABLE
SQL_UNION | rgbInfoValue = SQL_U_UNION | SQL_U_UNION_ALL
SQL_USER_NAME | rgbInfoValue = (Name of the active user)


Level 2 API - SAP Documentation

Background documentation Level 2 API

SAP MaxDB ODBC Driver: Function Overview for the Level 2 API

Function

Comments

SQLBrowseConnect

-

SQLColumnPrivileges

-

(*)SQLDataSources

-

SQLDescribeParam

-

SQLExtendedFetch

You can only insert rows using the function SQLSetPos with the dynamic cursor model (SQL_CURSOR_DYNAMIC). This is not possible with any other cursor models.

UPDATE and DELETE statements are possible both with the static (SQL_CURSOR_STATIC) and with the keyset-driven cursor (SQL_CURSOR_KEYSETDRIVEN) models.

SQLFetchScroll

-

SQLForeignKeys

-

SQLMoreResults

The function calls SQLFreeStmt with the attribute SQL_CLOSE to close the previous result set and then returns SQL_NO_DATA_FOUND.

SQLNativeSql

-

SQLNumParams

-

SQLParamOptions

-

SQLPrimaryKeys

-

SQLProcedureColumns

-

SQLProcedures

-

SQLSetPos

All attributes are valid. The attribute SQL_ADD is only possible in the dynamic cursor model (SQL_CURSOR_DYNAMIC). Only the attribute SQL_LOCK_NO_CHANGE is permissible for the fLock argument.

SQLSetScrollOptions

-

SQLTablePrivileges

-


Accessing SAP MaxDB Databases Via ODBC - SAP Documentation

Procedure documentation Accessing SAP MaxDB Databases Via ODBC

Prerequisites

Installing the SAP MaxDB ODBC Driver

Procedure

  1. Set up the ODBC driver.

    More information: Setting up the SAP MaxDB ODBC Driver

  2. Create a data source.

    More information: Creating or Changing Data Sources

  3. In your application, enable ODBC access to the database.

    More information: Application or programming language documentation

    If the application with which you want to access the database using the ODBC driver is not located on the database computer, an SAP MaxDB X server (communication server) needs to be running on the database computer.

    More information:

    • Concepts of the Database System, Architecture of the Interfaces

    • Global Listener and X Servers

Result

You can now access data in the database via the ODBC interface.

If problems occur, use the SAP MaxDB ODBC trace for troubleshooting. More information: Troubleshooting Using the SAP MaxDB ODBC Trace


Unicode Support - SAP Documentation

Background documentation Unicode Support

The SAP MaxDB ODBC driver supports Unicode. As of versions 7.4.03.32 and 7.5.00.11 respectively, two ODBC drivers are available per version.

SAP MaxDB ODBC Driver
Operating System | ODBC Driver (ASCII) | ODBC Driver (Unicode)
Microsoft Windows | sdbodbc.dll | sdbodbcw.dll
Unix and Linux | libsdbodbc.a|so | libsdbodbcw.a|so

The ASCII version of the ODBC driver always connects to the database kernel via ASCII.

The Unicode version of the ODBC driver connects to ASCII database kernels via ASCII and with Unicode database kernels via UCS2.

To process Unicode data, the ODBC driver internally uses UCS-2 (2 bytes). On platforms that use 4 bytes for WCHAR_T data, when you compile with the GNU C compiler, you can use an option to force processing of WCHAR_T data with 2 bytes.

Example Example

gcc -fshort-wchar [...]

End of the example.

Applications that do not require the functions of a driver manager can be linked statically with the ODBC driver.

SAP MaxDB ODBC Driver: Functions for Accessing Unicode Data

SQLBrowseConnectW

SQLColAttributesW

SQLColAttributeW

SQLColumnPrivilegesW

SQLColumnsW

SQLConnectW

SQLDataSourcesW

SQLDescribeColW

SQLDriverConnectW

SQLDriversW

SQLErrorW

SQLExecDirectW

SQLForeignKeysW

SQLGetConnectAttrW

SQLGetConnectOptionW

SQLGetCursorNameW

SQLGetDescFieldW

SQLGetDescRecW

SQLGetDiagFieldW

SQLGetDiagRecW

SQLGetInfoW

SQLGetStmtAttrW

SQLGetTypeInfoW

SQLNativeSqlW

SQLPrepareW

SQLPrimaryKeysW

SQLProcedureColumnsW

SQLProceduresW

SQLSetConnectAttrW

SQLSetConnectOptionW

SQLSetCursorNameW

SQLSetDescFieldW

SQLSetStmtAttrW

SQLSpecialColumnsW

SQLStatisticsW

SQLTablePrivilegesW

SQLTablesW


Loading the JDBC Driver - SAP Documentation

Procedure documentation Loading the JDBC Driver

Prerequisites

You have installed the SAP MaxDB JDBC driver.

More information: Installing the SAP MaxDB JDBC Driver and Java Classes

Procedure

Use the forName method of the Java platform's Class class.

Syntax Syntax

  1. Class.forName ("com.sap.dbtech.jdbc.DriverSapDB");
End of the code.

Result

When executing the Java application, the Java platform loads the SAP MaxDB JDBC driver and automatically registers it in the JDBC driver manager.

If an exception of the java.lang.ClassNotFoundException class is triggered, the Java platform could not find the SAP MaxDB JDBC driver.

More Information

Documentation for the Java platform at http://java.sun.com


Error Handling (JDBC Driver) - SAP Documentation

Function documentation Error Handling (JDBC Driver)

When errors occur, the SAP MaxDB JDBC driver triggers exceptions of the following classes. All classes are subclasses of the java.sql.SQLException class of the Java platform.

SAP MaxDB JDBC Driver: Exceptions
Class | Description
com.sap.dbtech.jdbc.exceptions.DatabaseException | Error when executing an SQL statement
com.sap.dbtech.jdbc.exceptions.InternalJDBCError | Internal error of the JDBC driver
com.sap.dbtech.jdbc.exceptions.InvalidArgumentValue | An invalid parameter value has been transferred to a method
com.sap.dbtech.jdbc.exceptions.InvalidColumnException | An invalid column of an object in the class ResultSet was accessed
com.sap.dbtech.jdbc.exceptions.JDBCDriverException | Internal error of the JDBC driver
com.sap.dbtech.jdbc.exceptions.NotSupportedException | A property has been used that the JDBC driver does not support
com.sap.dbtech.jdbc.exceptions.ObjectIsClosedException | Object in the class Connection, Statement, or ResultSet accessed after close method called for this object.
com.sap.dbtech.jdbc.exceptions.PrepareExecution | Error when preparing an SQL statement
com.sap.dbtech.jdbc.translators.ConversionExceptionSapDB | Error when converting between Java and SQL data types

To write a Java application that is independent of the database product, do not explicitly query the above-mentioned exceptions in catch statements, but only exceptions of the java.sql.SQLException class.


Error Handling (DBM Java Classes) - SAP Documentation

Function documentation Error Handling (DBM Java Classes)

If errors occur while using the DBM Java classes, the system triggers the following exceptions:

Exceptions
Class | When Is This Exception Triggered?
com.sap.dbtech.powertoys.DBMException | When the Database Manager program registers an error
com.sap.dbtech.rte.comm.RTEException | When the Java platform cannot set up a connection to the Database Manager program When an existing connection is interrupted

Features

com.sap.dbtech.powertoys.DBMException Class: Methods
Method | Description
public int getErrorCode() | Returns the DBM error code
public String getErrorID() | Returns the DBM error number
public String toString() | Returns an exception as a string object

More Information

Example: Displaying the Operational State of a Database


com.sap.dbtech.powertoys.DBM.dbDBM Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.DBM.dbDBM Method

This method of the com.sap.dbtech.powertoys.DBM class is used for connecting your Java application via the Database Manager program to the database.

Note Note

To create a new database, connect to the database using the com.sap.dbtech.powertoys.DBM.dbrootDBM method.

End of the note.

Features

Syntax Syntax

  1. public static DBM dbDBM (String database_computer, String database_name)
    throws
        com.sap.dbtech.rte.comm.RTEException
End of the code.
com.sap.dbtech.powertoys.DBM.dbDBM Method: Parameters
Name | Description
database_computer | Name of the database computer To connect to a database on the local computer, enter the value null.
database_name | Database name
Exceptions
Class | Description
com.sap.dbtech.rte.comm.RTEException | See Error Handling (DBM Java Classes)

More Information

com.sap.dbtech.powertoys.DBM Class


com.sap.dbtech.powertoys.DBM.cmd Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.DBM.cmd Method

This method of the com.sap.dbtech.powertoys.DBM class is used for executing DBM commands for managing databases in your Java application.

Prerequisites

  • You are connected to the database.

    More information: com.sap.dbtech.powertoys.DBM.dbDBM Method.

  • Most DBM commands require that you are logged on to the database. To log on to the database, use the user_logon DBM command.

    More information: Database Manager CLI, user_logon

Features

Syntax Syntax

  1. public String cmd(String dbm_command)
    throws
        com.sap.dbtech.rte.comm.RTEException,
        com.sap.dbtech.powertoys.DBMException;
End of the code.
com.sap.dbtech.powertoys.DBM.cmd Method: Parameters
Parameter | Description
dbm_command | DBM Command More information: Database Manager CLI, Overview of all DBM Commands
Return value

The return code of the method contains the return code of the DBM command.

Exceptions
Classes | Description
com.sap.dbtech.rte.comm.RTEException com.sap.dbtech.powertoys.DBMException | See Error Handling (DBM Java Classes)

Example

In the cmd method, you use the user_logon DBM command to log DBM operator OLEG with password MONDAY on to the database:

Syntax Syntax

  1. String result = session.cmd ("user_logon OLEG,MONDAY");
End of the code.

More Information

Example: Displaying the Operational State of a Database

com.sap.dbtech.powertoys.DBM Class


Connection URL - SAP Documentation

Object documentation Connection URL

In the connection URL, url you define the properties of the connection to the database. You can find more detailed information in the documentation on the Java platform, see http://java.sun.com

Syntax Syntax

  1. jdbc:sapdb://<database_computer>[:<port>]/<database_name>[?<option1>[&<option2>]...]
End of the code.

<database_computer>

Name of the database computer

<port>

Port of the installation-specific X server on the database computer.

See Global Listener and X Servers

<database_name>

Database Name

<option1>,<option2>,...

Properties of the connection

See

  • java.sql.DriverManager.getConnection method

  • com.sap.dbtech.jdbcext.DataSourceSapDB class

Example

Syntax Syntax

  1. jdbc:sapdb://PARMA:9876/DEMODB?sqlmode=ORACLE&timeout=120
End of the code.

Using this connection URL, you set up a connection to the DEMODB database on the remote computer PARMA. The X server on the PARMA computer uses port 9876. As connection options, you have selected the SQL mode ORACLE and a timeout for the database session of 120 seconds.

More Information

Example: Connecting to the Database


Java Manual - SAP Documentation

Background documentation Java Manual

You can use the SAP MaxDB JDBC driver and Java classes to access SAP MaxDB databases from Java applications.

SAP MaxDB: JDBC Driver and Java Classes
Name | Functions | Java Classes
JDBC Driver | Executing SQL Statements | com.sap.dbtech.jdbc.DriverSapDB com.sap.dbtech.jdbc.exceptions.* com.sap.dbtech.jdbcext.*
DBM Java Classes | Managing databases (executing DBM commands) | com.sap.dbtech.powertoys.DBM com.sap.dbtech.powertoys.DBMException
Loader Java Classes | Importing and exporting data (executing Loader commands and SQL statements) | com.sap.dbtech.powertoys.Loader com.sap.dbtech.powertoys.LoaderException

The SAP MaxDB JDBC driver and Java classes can be used on all operating systems supported by the database system.

More information: Installing the SAP MaxDB JDBC Driver and Java Classes and Troubleshooting for the SAP MaxDB JDBC Driver and Java Classes

Note Note

This documentation does not describe the Sun Java platform. You can find information on Java at http://java.sun.com

End of the note.

To use this documentation effectively, you need a thorough working knowledge of the Java programming language and the JDBC specification (see http://java.sun.com/products/jdbc).

More Information

Concepts of the Database System,

  • Interfaces

  • Architecture of the Interfaces


Connecting to a Database - SAP Documentation

Procedure documentation Connecting to a Database

You connect a Java application to an SAP MaxDB database using JDBC.

Prerequisites

  • You have loaded the SAP MaxDB JDBC driver.

    More information: Loading the JDBC Driver

  • You have started the SAP MaxDB X Server (communication server).

    More information: Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers

    Note that you must start X Server even if the Java application and the database are located on the same computer.

Procedure

To connect to a database, use one of the following two options:

  • The java.sql.DriverManager.getConnection method (part of the Java platform)

  • The com.sap.dbtech.jdbcext.DataSourceSapDB class (contained in sapdbc.jar)

SAP customers can set up an SSL connection between the Java application and the database. More information: Setting Up an SSL Connection

Example

Example: Connecting to a Database


Example: HelloMaxDB - SAP Documentation

Background documentation Example: HelloMaxDB

The following example shows the source code of the HelloMaxDB Java class.

The individual steps are listed in the comments in the example.

HelloMaxDB.java

Syntax Syntax

  1. import java.sql.*;
public class HelloMaxDB
{
    public static void main(String[] args)
    throws ClassNotFoundException, SQLException
    {
        String username = "MONA";
        String password = "RED";
        String host = "";
        String dbname = "DEMODB";

        /*
   * Load JDBC Driver
   */
        Class.forName ("com.sap.dbtech.jdbc.DriverSapDB");

        /*
   * Define Connection URL
   */
        String url = "jdbc:sapdb://" + host + "/" + dbname;

        /*
   * Connect to the Database
   */
        Connection connection = DriverManager.getConnection (url, username, password);

        /*
   * Execute SQL Statements
   */
        Statement stmt = connection.createStatement ();
        ResultSet resultSet = stmt.executeQuery ("SELECT * FROM HOTEL.CUSTOMER");
        resultSet.next ();
        String hello = resultSet.getString (1);
        System.out.println (hello);

        /*
        * close all objects
   */
        resultSet.close ();
        stmt.close();
        connection.close ();
        }
}
End of the code.


Example: Displaying the Operational State of a Database - SAP Documentation

Background documentation Example: Displaying the Operational State of a Database

This example shows how you display the operational state of a database in your Java application.

The individual steps are listed in the comments in the example.

Syntax Syntax

  1. import com.sap.dbtech.powertoys.*;
import com.sap.dbtech.rte.comm.RTEException;

public class DBMDemo
{
    public
    DBMDemo ()
    {
    }
    public static void main(String[] args)
    {

        DBM session;
        try {
            // You connect to the DEMODB database.
            // See com.sap.dbtech.powertoys.DBM.dbDBM Method
            session = DBM.dbDBM(null, "DEMODB");
        }
        catch (RTEException rteExc) {
            System.out.println ("connect failed: " + rteExc.toString ());
            return;
        }
        try {
            // You log on as DBM operator OLEG with password MONDAY.
            // See com.sap.dbtech.powertoys.DBM.cmd Method
            session.cmd ("user_logon OLEG,MONDAY");
            //You display the operational state of the database.
            String result = session.cmd ("db_state");
            System.out.println(result);
        }
        catch (RTEException rteExc) {
            System.out.println ("connection broken: " + rteExc.toString ());
        }
        catch (DBMException dbmExc) {
            System.out.println ("command failed: " + dbmExc.toString ());
        }
        finally {
            try {
                // You then end the connection to the Database Manager program.
                // See com.sap.dbtech.powertoys.DBM.release Method
                session.release();
            }
            catch (RTEException rteExc) {
                // ignore
            }
        }
    }
}
End of the code.


Examples: Connecting to a Database - SAP Documentation

Background documentation Examples: Connecting to a Database

The following examples show different procedures for connecting your Java application to a database. The following example data is used:

Description | Property | Example
Name of the database user | user | MONA
Password of the database user | password | RED
Database name | - | DEMODB
Name of the database computer | servername | PARMA
SQL mode | sqlmode | ORACLE
Creating a Connection Using the java.sql.DriverManager.getConnection Method

There are several ways for transferring the connection options.

Connection Options as Part of the Connection URL

You transfer the connection options as part of the Connection URL.

Syntax Syntax

  1. "jdbc:sapdb://PARMA/DEMODB?sqlmode=ORACLE"
End of the code.

To connect to the database, call the getConnection method as follows:

Syntax Syntax

  1. java.sql.Connection conn = java.sql.DriverManager.getConnection(url, "MONA", "RED");
End of the code.
Connection Options and Logon Data As Part of the Connection URL

You transfer the connection options as well as the database user’s name and the password as part of the connection URL.

Syntax Syntax

  1. "jdbc:sapdb://PARMA/DEMODB?sqlmode=ORACLE&user=MONA&password=RED"
End of the code.

To connect to the database, call the getConnection method as follows:

Syntax Syntax

  1. java.sql.Connection conn = java.sql.DriverManager.getConnection (url);
End of the code.
Using the java.util.Properties Class

The connection options, name, and password of the database user are transferred in an object of the java.util.Properties class.

The connection URL, url has the following content:

Syntax Syntax

  1. "jdbc:sapdb://PARMA/DEMODB"
End of the code.

  1. Create an object of the class java.util.Properties:

    Syntax Syntax

    1. java.util.Properties properties = new java.util.Properties ();
    End of the code.

  2. Define the connection options:

    Syntax Syntax

    1. properties.setProperty ("user", "MONA");
properties.setProperty ("password", "RED");
properties.setProperty ("sqlmode", "ORACLE");
    End of the code.

  3. To connect to the database, call the getConnection method as follows:

    Syntax Syntax

    1. java.sql.Connection conn = java.sql.DriverManager.getConnection (url, properties);
    End of the code.
Connecting Using the com.sap.dbtech.jdbcext.DataSourceSapDB Class

Syntax Syntax

  1. import java.sql.Connection;
import java.sql.Statement;
import java.sql.SQLException;
import javax.sql.DataSource;
import java.sql.ResultSet;
import com.sap.dbtech.jdbcext.DataSourceSapDB;

public final class HelloDataSource
{
    public static void main (String[] args) throws SQLException
         {
                String dbUser = "MONA";
                String password = "RED";
                String  dbName = "DEMODB";
                String  dbServer = "PARMA";
                DataSourceSapDB ds = zero;

                ds = new DataSourceSapDB();
                ds.setUser(dbUser);
                ds.setPassword(password);
                ds.setDatabaseName(dbName);
                ds.setServerName(dbServer);

                Connection c = ds.getConnection();
                Statement s = c.createStatement();
                ResultSet rs = s.executeQuery("SELECT * FROM HOTEL.CITY");
                rs.next();
                System.out.println(rs.getString(1));
                return;
        }
}
End of the code.

More Information

Connecting to a Database

java.sql.DriverManager.getConnection Method

com.sap.dbtech.jdbcext.DataSourceSapDB Class


Example: Exporting a Table - SAP Documentation

Background documentation Example: Exporting a Table

This example shows how to export a table in your Java application using Loader commands.

You proceed as follows:

  1. You call the Loader from your Java application.

  2. You connect to the Loader.

  3. You log on to the database.

  4. You export the table using a Loader command.

  5. You end the connection to the Loader.

The individual steps are listed in the comments in the example.

Syntax Syntax

  1. import com.sap.dbtech.powertoys.*;
import com.sap.dbtech.rte.comm.RTEException;
import java.util.Properties;

public class LoaderDemo
{
    public
    LoaderDemo ()
    {
    }

    public static void main(String[] args)
    {

        // Loader mLoaderSession = null;
        Loader mLoaderSession;
        try {
            // You connect to the Loader.
            mLoaderSession = Loader.dbLoader(zero,zero);
        }
        catch (RTEException rteExc) {
            System.out.println ("connect failed: " + rteExc.toString ());
            return;
        }
        try {
            // You log on as the database user MONA
            // with the password RED
            // to the database DEMODB.
            // see com.sap.dbtech.powertoys.Loader.cmd Method
            mLoaderSession.cmd ("use serverdb DEMODB");
            mLoaderSession.cmd ("use user MONA RED");
            // You export the LOADERTEST table
            // using the cmd method
            // and the Loader command EXPORT TABLE
            // see EXPORT TABLE command
            String result = mLoaderSession.cmd ("EXPORT TABLE HOTEL.CITY DATA OUTSTREAM FILE 'CITY.data'");
            System.out.println(result);
        }
        catch (RTEException rteExc) {
            System.out.println ("connection broken: " + rteExc.toString ());
        }
        catch (LoaderException LoaderExc) {
            System.out.println ("command failed: " + LoaderExc.toString ());
        }
        finally {
            try {
                // You end the connection to the Loader.
                // see com.sap.dbtech.powertoys.Loader.release Method
                mLoaderSession.release ();
            }
            catch (RTEException rteExc) {
                // ignore
            }
        }
    }
}
End of the code.


Setting Up an SSL Connection - SAP Documentation

Procedure documentation Setting Up an SSL Connection

You can use SSL to encrypt communication between your Java application and the database.

Prerequisites

  • You use SAP MaxDB in an SAP System.

  • You have installed SAP MaxDB 7.6 or above.

  • You have configured your SAP MaxDB installation for SSL. For more information, see your Installation Guide.

  • You have installed Sun Java JDK 1.4.0 or above (see http://java.sun.com).

Procedure

If you have received the server certificate from a Certification Authority included on the list of trusted Certification Authorities of the Java platform, you can begin with step 2.

  1. To add the server certificate to the list of trusted certificates, import it to a trust store file using the keytool program of the Java platform. You require the following information to do this:

    • Name of trust store file

    • Password for the trust store file

    • Name of the file that the certificate for SAP MaxDB is saved in.

    For more information, see the documentation for the keytool program (see http://java.sun.com).

  2. Select the following connection property:

    transport=secure

    See

    • java.sql.DriverManager.getConnection Method

    • com.sap.dbtech.jdbcext.DataSourceSapDB Class

More Information

Connecting to the Database


SAP MaxDB JDBC Driver - SAP Documentation

Function documentation SAP MaxDB JDBC Driver

With the SAP MaxDB JDBC driver, you can execute SQL statements in SAP MaxDB databases from within Java applications.

Properties of the SAP MaxDB JDBC driver:

  • 100 percent pure Java

  • Supports the JDBC 2.0 Standard Extension API (DataSource, XADataSource, and ConnectionPoolDataSource)

  • Type 4 driver (connection to the database is established using the SAP MaxDB-specific network protocol)

SAP MaxDB JDBC Driver: Java Classes
Class | Description
com.sap.dbtech.jdbc.DriverSapDB | JDBC Driver
com.sap.dbtech.powertoys.jdbc.exception.* | Error handling
com.sap.dbtech.jdbcext.DataSourceSapDB | Classes for the JDBC 2.0 Standard Extension

The SAP MaxDB JDBC driver Java classes are contained in the <installation_path>\runtime\jar\sapdbc.jar file.

Note Note

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.

Example Example

C:\Program Files\sdb\Installation_2009-07-21\runtime\jar\sapdbc.jar

End of the example.

Prerequisites

  • You have installed a Java platform:

    • For JDBC 2.0: JRE 1.2 or JDK 1.2 (for application development)

    • For JDBC 3.0: JRE 1.4, 1.5 or JDK 1.4, 1.5 (for application development)

  • You have installed the SAP MaxDB JDBC Driver.

    More information: Installing the SAP MaxDB JDBC Driver and Java Classes

Features

  • Loading the JDBC Driver

  • Connecting to a Database

  • Executing SQL Statements

  • Error Handling (JDBC Driver)

  • SAP MaxDB JDBC Trace

Example

Example: HelloMaxDB


Executing SQL Statements - SAP Documentation

Procedure documentation Executing SQL Statements

Prerequisites

You have established a connection to the database.

More information: Connecting to a Database

Procedure

Proceed as described in the JDBC specification.

More information: http://java.sun.com/products/jdbc


DBM Java Classes - SAP Documentation

Function documentation DBM Java Classes

Using the DBM Java classes, you can manage SAP MaxDB databases from within Java applications.

Prerequisites

You have installed the DBM Java classes.

More information: Installing the SAP MaxDB JDBC Driver and Java Classes

Features

The DBM Java classes are located in the file <installation_path>\runtime\jar\sapdbc.jar.

Note Note

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.

Example Example

C:\Program Files\sdb\Installation_2009-07-21\runtime\jar\sapdbc.jar

End of the example.
DBM Java Classes
Class | Task
com.sap.dbtech.powertoys.DBM | Establishing and closing connections to the database Executing DBM commands (administration commands)
com.sap.dbtech.powertoys.DBMException | Error handling More information: Error Handling (DBM Java Classes)

Example

Example: Displaying the Operational State of a Database

More Information

Database Manager CLI, Overview of all DBM Commands


com.sap.dbtech.powertoys.DBM.dbrootDBM Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.DBM.dbrootDBM Method

This method of the com.sap.dbtech.powertoys.DBM class is used for connecting your Java application to the DBM server of a specific SAP MaxDB software version.

Caution Caution

Only use this method if you want to create a new database with your Java application.

To execute other DBM commands, use the com.sap.dbtech.powertoys.DBM.dbDBM method to connect to the database.

End of the caution.

Prerequisites

  • You have access to the computer on which you want to create the new database.

  • On Microsoft Windows, you additionally need administration rights and the Log on as batch job right on that computer.

Features

Syntax Syntax

  1. public static DBM dbrootDBM(String database_computer, String dependent_path)
    throws
        com.sap.dbtech.rte.comm.RTEException
End of the code.
com.sap.dbtech.powertoys.DBM.dbrootDBM Method: Parameters
Name | Description
database_computer | Name of the database computer To connect to a DBM server on the local computer, enter the value null.
dependent_path | Path of the database software in the desired version To connect to the DBM server with the highest software version, enter the value null. To display the paths and versions of software installed on your computer, enter the following command in the command line: dbmcli db_enum
Exceptions
Class | Description
com.sap.dbtech.rte.comm.RTEException | See Error Handling (DBM Java Classes)

More Information

com.sap.dbtech.powertoys.DBM Class


com.sap.dbtech.jdbcext.DataSourceSapDB Class - SAP Documentation

Function documentation com.sap.dbtech.jdbcext.DataSourceSapDB Class

To connect your Java application to a database and to open a database session, you can use the com.sap.dbtech.jdbcext.DataSourceSapDB class (part of sapdbc.jar). This class implements the javax.sql.DataSource interface of the Java platform. More information: http://java.sun.com

Note Note

Alternatively, you can use the java.sql.DriverManager.getConnection method of the Java platform.

End of the note.

Prerequisites

  • You have started the SAP MaxDB X server (communication server) of the installation to which the database belongs.

    More information: Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers

    Note that you must start X Server even if the Java application and the database are located on the same computer.

  • You have loaded the JDBC driver.

    More information: Loading the JDBC Driver

Features

Methods of the com.sap.dbtech.jdbcext.DataSourceSapDB Class
Method | Description
<type> get<property_name>() | Querying the value of a property
void set<property_name>(<type> <value>) | Setting the value of a property

<property_name> = Name of the property (see below), the first letter of the name is written in upper case

Example Example

String getCache()

String getDatabaseName()

End of the example.
Properties of DataSourceSapDB Objects

<property_name>

Default value

Description

cache

-

Specifies for which SQL statements in prepared statements the JDBC driver saves information (for example, on the used parameters) in a dedicated cache

Possible values:

  • all: all SQL statements

  • Combination of the following letters

    s (SELECT statements)

    i (INSERT statements)

    u (UPDATE statements)

    d (DELETE statements)

    Example Example

    cache=iud

    The database system saves information on INSERT, UPDATE, and DELETE statements in the cache.

    End of the example.

databaseName

-

Database name

description

-

Description

loginTimeout

30

Timeout for the logon (in seconds)

password

-

Password

port

7210

Port of the X Server on the database computer

More information: Global Listener and X Servers

reconnect

on

RECONNECT mode

Possible values:

on: The system automatically reconnects to the database after a command timeout.

off: There is no automatic new connection.

serverName

localhost

Database computer

sqlMode

INTERNAL

SQL mode

ORACLE | INTERNAL

timeout

-

Timeout for the database session (in seconds)

If you specify this connection option, you override the timeout that has been configured for the database with the special database parameter SessionTimeout (see Database Administration, Special Database Parameters).

trace

-

<directory>/<jdbc_trace_file>

If you specify this connection option, then the database system writes a JDBC trace in the <jdbc_trace_file> file in the directory <directory>.

traceSize

-

Maximum number of lines in the JDBC trace file.

If this number of lines is exceeded, the database system begins to overwrite the content of the JDBC trace file

transport

socket

Communication method for communicating with the DBM server

Possible values:

socket: TCP/IP connection

secure: SSL connection, see Setting Up an SSL Connection

unicode

false

Unicode Support

true: the JDBC driver sends the user name, password, and SQL statements in Unicode to the database

false: the JDBC driver uses ASCII

url

-

Connection URL

user

-

Name of the database user

You can also transfer most properties as connection options within the connection URL url. The following properties are exceptions: description, databasename, servername, url, port, loginTimeout.

Example

Example: Connecting to a Database


java.sql.DriverManager.getConnection Method - SAP Documentation

Function documentation java.sql.DriverManager.getConnection Method

To connect your Java application to a database and to open a database session, you can use thejava.sql.DriverManager.getConnection method of the Java platform. This method supplies a Connection object that is connected to the database.

Note Note

Alternatively, you can use the com.sap.dbtech.jdbcext.DataSourceSapDB class.

End of the note.

You can find more detailed information in the documentation for the Java platform at http://java.sun.com

Prerequisites

  • You have started the SAP MaxDB X server (communication server) of the installation to which the database belongs.

    More information: Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers

    Note that you must start an X server even if the Java application and the database are located on the same computer.

  • You have loaded the JDBC driver.

    More information: Loading the JDBC Driver

Features

The java.sql.DriverManager.getConnection method has the mandatory parameter url (Connection URL) with the following connection options.

Connection Options

Option

Default Value

Description

acceptServerCertificateAlways

off

Only for SSL connections

Determines whether the database system checks if the SSL certificate of the database computer is contained in the list of the trusted certificates and whether it is still valid

Possible values:

off: The database system checks the SSL certificate.

on: The database system does not check the SSL certificate.

autocommit

on

AUTOCOMMIT mode

on: The database system ends every SQL statement automatically with a COMMIT.

off: You must end transactions explicitly with the commit () and rollback () methods.

cache

-

Specifies for which SQL statements in Prepared Statements the JDBC driver saves information (for example, on the used parameters) in a dedicated cache

Possible values:

all: all SQL statements

Combination of the following letters

s (SELECT statements)

i (INSERT statements)

u (UPDATE statements)

d (DELETE statements)

Example Example

cache=iud

The database system saves information on INSERT, UPDATE, and DELETE statements in the cache.

End of the example.

connectiontimeout

0

Timeout for the connection (in milliseconds)

The value 0 means that there is no timeout.

connectiontrace

-

<file_name>

Enables a connection trace for the current connection only. The trace is written to the file specified.

currentschema

-

<schema_name>

Sets the default schema for the database session

If you do not specify this connection property, the current user's schema is used as default schema.

defaultresultsettype

-

Default result set type

ignoreHostNameInServerCert

off

Only for SSL connections

Determines whether the database system compares the name of the database computer with the name specified in the SSL certificate

Possible values:

off: The database system compares the names.

on: The database system does not compare the names.

isolation

-

Isolation level for the connection

You can specify the isolation level either as a character string or as an integer (depending how you have declared it in the java.sql.Connection class).

You can enter the following character strings:

TRANSACTION_READ_UNCOMMITTED | TRANSACTION_READ_COMMITTED | TRANSACTION_REPEATABLE_READ | TRANSACTION_SERIALIZABLE

You can enter the following integer values: Concepts of the Database System, Isolation Level

password

-

Password of the database user

Caution Caution

Observe the use of upper and lower case, see Database Administration, Conventions for User Names and Passwords.

End of the caution.

reconnect

on

RECONNECT mode

Possible values:

on: The system automatically reconnects to the database instance after a command timeout.

off: There is no automatic new connection.

sqlmode

INTERNAL

SQL mode

ORACLE | INTERNAL

timeout

-

Timeout for the database session (in seconds)

If you specify this connection option, you override the timeout that has been configured for the database with the special database parameter SessionTimeout (see Database Administration, Special Database Parameters).

trace

-

<directory>/<jdbc_trace_file>

If you specify this connection option, then the database system writes a JDBC trace in the <jdbc_trace_file> file in the directory <directory>.

tracesize

-

Maximum number of lines in the JDBC trace file.

If this number of lines is exceeded, the database system begins to overwrite the content of the JDBC trace file

transport

socket

Communication method for communicating with the DBM server

Possible values:

socket: TCP/IP connection

secure: SSL connection, see Setting Up an SSL Connection

unicode

false

When you specify this connection option, the JDBC driver sends the user name, password, and SQL statements in Unicode to the database.

user

-

Name of the database user

Example

Example: Connecting to a Database


com.sap.dbtech.powertoys.Loader.cancel Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.Loader.cancel Method

This method of the com.sap.dbtech.powertoys.Loader class is used for canceling Loader command or an SQL statement that is currently being executed.

Features

Syntax Syntax

  1. public void cancel()
    throws
        java.sql.SQLException
End of the code.

More Information

com.sap.dbtech.powertoys.Loader Class


com.sap.dbtech.powertoys.DBM.cancel Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.DBM.cancel Method

This method of the com.sap.dbtech.powertoys.DBM class is used for canceling a DBM command that is currently being executed in your Java application.

Features

Syntax Syntax

  1. public void cancel()
    throws
        java.sql.SQLException
End of the code.

More Information

com.sap.dbtech.powertoys.DBM Class


Testing the Connection to the Database - SAP Documentation

Procedure documentation Testing the Connection to the Database

Procedure

Enter the following command on the command line:

java -jar <installation_path>\runtime\jar\sapdbc.jar -d <database_name> -u <database_user_name>,<database_user_password> [-n <database_computer>]

Note Note

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.

You can also enter further connection options or test if an SQL statement or a DBM command can be executed (limited reply memory):

java -jar <installation_path>\runtime\jar\sapdbc.jar -d <database_name> -u <database_user_name>,<database_user_password> [-n <database_computer>] [-o <connection_option>] [-c <sql_statement> | -a <dbm_command>]

Result

  • If the system can establish a connection to the database:

    | connect test |

    --------------------------

    | successfully connected |

  • If the system cannot establish a connection to the database:

    <error_message>


JDBC Trace - SAP Documentation

Function documentation JDBC Trace

You can activate the SAP MaxDB JDBC trace to find errors while your application is connected to a database via JDBC.

Features

When the JDBC trace is activated, the system logs the following information:

  • JDBC API calls called by the JDBC application

  • JDBC API call parameters

  • Executed SQL statements and their results

Activities

  • Activating the JDBC Trace

  • Deactivating the JDBC Trace

More Information

SAP MaxDB JDBC Driver


Activating the JDBC Trace - SAP Documentation

Procedure documentation Activating the JDBC Trace

Prerequisites

You are logged on as the operating system user who started (or will start) the JDBC application.

Note Note

You always activate the JDBC trace for all JDBC applications that the current operating system user has started.

Configuration changes have an effect on all JDBC applications that the current operating system user has started.

End of the note.

Procedure

Variant 1

  1. Enter the following command on the command line:

    java -jar <installation_path>\runtime\jar\sapdbc.jar

    Note Note

    You can display the installation path using the dbm_getpath DBM command:

    dbmcli dbm_getpath InstallationPath

    For more information, see Database Manager CLI, dbm_getpath.

    End of the note.

  2. Select Trace enabled.

  3. Choose your trace options.

    SAP MaxDB JDBC Trace: Options

    Option

    Command Line Option

    Description

    Trace File Folder

    -

    Directory where the system writes the trace file

    When you do not configure a directory, the system writes the trace files to the temporary operating system directory (Microsoft Windows: %TEMP%, Unix and Linux: $TMP)

    Trace File Name

    TRACE FILENAME [<path>]<file_name>

    Sets the name of the trace file

    The system assigns each trace file an additional unique ID <id>: <file_name>_<id>.prt

    Default value for <file_name>: jdbctrace

    Limit File Size

    TRACE SIZE <size> [KB|MB|GB]

    Limits the size of the trace data to <size>

    -

    TRACE SIZE UNLIMITED

    Removes all size limitations for the trace file

    Stop on Error

    TRACE STOP ON ERROR <error_code>

    TRACE STOP ON ERROR OFF

    Stops writing the JDBC trace when the error <error_code> appears or the first error occurs

  4. Choose OK.

Variant 2

  1. To display the current configuration, enter

    java –jar <installation_path>\runtime\jar\sapdbc.jar SHOW

  2. Enter your trace options:

    java -jar <installation_path>\runtime\jar\sapdbc.jar <command_line_option>

  3. Enter

    java -jar <installation_path>\runtime\jar\sapdbc.jar TRACE ON

Variant 3

Specify the following option in the connection URL:

trace=<file_name>

More information: Connection URL

Result

The system writes the results of the JDBC trace to files in the trace directory.


Deactivating the JDBC Trace - SAP Documentation

Procedure documentation Deactivating the JDBC Trace

Prerequisites

You are logged on as the operating system user who started the JDBC application.

Note Note

You always deactivate the JDBC trace for all JDBC applications that the current operating system user has started.

End of the note.

Procedure

Variant 1

  1. Enter the following command on the command line:

    java -jar <installation_path>\runtime\jar\sapdbc.jar

  2. Deselect Trace Enabled.

  3. Choose OK.

Variant 2

Enter the following command on the command line:

java -jar <installation_path>\runtime\jar\sapdbc.jar TRACE OFF


com.sap.dbtech.powertoys.Loader.dbLoader Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.Loader.dbLoader Method

This method of the com.sap.dbtech.powertoys.Loader class is used for connecting your Java application using the Loader to a database. The system automatically uses the newest Loader version that is available on the computer on which it is running. The Loader usually runs on the same computer as the Java application.

Features

Syntax Syntax

  1. public static Loader dbLoader (String database_computer, String database_name)
    throws
        com.sap.dbtech.rte.comm.RTEException
End of the code.
com.sap.dbtech.powertoys.Loader.dbLoader Method: Parameters
Name | Description
database_computer | Name of the database computer
database_name | Database name
Exceptions
Class | Description
com.sap.dbtech.rte.comm.RTEException | See Error Handling (Loader Java Classes)

To log on to the database, execute the Loader command USE USER; see com.sap.dbtech.powertoys.Loader.cmd Method.

More Information

Example: Exporting a Table

com.sap.dbtech.powertoys.Loader Class


com.sap.dbtech.powertoys.Loader.release Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.Loader.release Method

This method of the com.sap.dbtech.powertoys.Loader class is used for closing the connection to the Loader.

The system calls this method implicitly when the garbage collector deletes an object of the Loader class.

Features

Syntax Syntax

  1. public void release()
    throws
        com.sap.dbtech.rte.comm.RTEException
End of the code.
Exceptions
Class | Description
com.sap.dbtech.rte.comm.RTEException | Error Handling (Loader Java Classes)

Example

Syntax Syntax

  1. session.release();
End of the code.

More Information

Example: Exporting a Table

com.sap.dbtech.powertoys.Loader Class


Error Handling (Loader Java Classes) - SAP Documentation

Function documentation Error Handling (Loader Java Classes)

If errors occur while using the Loader Java classes, the system triggers the following exceptions:

Exceptions
Class | When Is This Exception Triggered?
com.sap.dbtech.powertoys.LoaderException | If the Loader registers an error.
com.sap.dbtech.rte.comm.RTEException | If the Java platform cannot set up a connection to the Loader. If an existing connection is interrupted

Features

com.sap.dbtech.powertoys.DBMException Class: Methods
Method | Description
public int getErrorCode() | Returns the Loader error code.
public String getErrorID() | Returns the Loader error number.
public String toString() | Returns the exception as a string object.

More Information

Example: Exporting a Table


Loader Java Classes - SAP Documentation

Function documentation Loader Java Classes

The Loader Java classes provide functions for exporting data from/importing data to a database for your Java application.

Prerequisites

You have installed the Loader Java classes.

More information: Installing the SAP MaxDB JDBC Driver and Java Classes

Features

The Loader Java classes are located in the file <installation_path>\runtime\jar\sapdbc.jar.

Note Note

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.

Example Example

C:\Program Files\sdb\Installation_2009-07-21\runtime\jar\sapdbc.jar

End of the example.
Loader Java Classes
Class | Task
com.sap.dbtech.powertoys.Loader | Establishing and closing the connection to a database Executing Loader commands for import and export and executing SQL statements
com.sap.dbtech.powertoys.LoaderException | Error handling More information: Error Handling (Loader Java Classes)

Example

Example: Exporting a Table

More Information

Loader, Loader Commands and SQL Statements


com.sap.dbtech.powertoys.Loader.cmd Method - SAP Documentation

Function documentation com.sap.dbtech.powertoys.Loader.cmd Method

This method of the com.sap.dbtech.powertoys.Loader class is used for executing Loader commands and SQL statements.

Prerequisites

  • You have connected the Loader to the database.

    More information: com.sap.dbtech.powertoys.Loader.dbLoader Method .

  • There are additional prerequisites for some Loader commands and SQL commands. You can find more information under Loader, Loader Commands and SQL Statements.

Features

Syntax Syntax

  1. public String cmd(String loader_command)
    throws
        com.sap.dbtech.rte.comm.RTEException,
        com.sap.dbtech.powertoys.LoaderException
End of the code.
com.sap.dbtech.powertoys.Loader.cmd Method: Parameters
Name | Description
loader_command | Loader command or SQL statement
Return value

The return code of the method contains the return code of the Loader command or SQL statement.

Exceptions
Class | Description
com.sap.dbtech.rte.comm.RTEException com.sap.dbtech.powertoys.LoaderException | Error Handling (Loader Java Classes)

More Information

Example: Exporting a Table

com.sap.dbtech.powertoys.Loader Class


com.sap.dbtech.powertoys.DBM.release Method - SAP Documentation

Background documentation com.sap.dbtech.powertoys.DBM.release Method

This method of the com.sap.dbtech.powertoys.DBM class is used for ending the connection between the Database Manager program and the database.

The JDBC driver calls this method implicitly when the garbage collector deletes an object of the DBM class.

Features

Syntax Syntax

  1. public void release()
    throws
        com.sap.dbtech.rte.comm.RTEException
End of the code.
Exceptions
Class | Description
com.sap.dbtech.rte.comm.RTEException | See Error Handling (DBM Java Classes)

Example

Syntax Syntax

  1. session.release();
End of the code.

More Information

Example: Displaying the Operational State of a Database

com.sap.dbtech.powertoys.DBM Class


-10322: Could not insert LOB. Parameter/column (<number>) has a NULL/DEFAULT value - SAP Documentation

Background documentation -10322: Could not insert LOB. Parameter/column (<number>) has a NULL/DEFAULT value

Explanation

The SQLDBC_LOB::putData or SQLDBC_LOB::getData method that was called could not be executed, because the LOB object belonging to parameter/column <number> contains the NULL or DEFAULT value.

User Response

With these methods, you cannot use an LOB object that contains the NULL or DEFAULT value.


Setting the Environment Variables ADINT and ADA_OPT - SAP Documentation

Background documentation Setting the Environment Variables ADINT and ADA_OPT

To enable the Database Manager and Loader on the database computer to access the required environment variables ADINT and ADA_OPT, you must define these variables using Database Manager CLI.

Environment Variable | Description
ADINT | Specifies the directory in which the program adint2 (Unix) or adint2.exe (Microsoft Windows) is stored. Specify this directory as an absolute path without a closing slash (/) or backslash (\).
ADA_OPT | Absolute name of the adint2 configuration file. An example configuration file initSID.utl is located in the directory of the adint2 program.

Structure

>dbmcli -d <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset -raw <variable> <value>

Options
Option | Description
<variable> | Environment variable Possible values are: ADINT | ADA_OPT
<value> | Value of the environment variable

More Information

Database Manager CLI, dbm_configset


SQLDBC Manual - SAP Documentation

Background documentation SQLDBC Manual

SQL Database Connectivity (SQLDBC) is an SAP MaxDB-specific runtime environment for developing database applications and database interfaces for SAP MaxDB. Using SQLDBC, applications can access SAP MaxDB databases, execute SQL statements and change data. SQLDBC was developed in a similar way to the ODBC and JDBC interfaces and also shares the same object-oriented architecture.

SQLDBC consists of the runtime library libSQLDBC, the software development kit SQLDBC SDK and the tool sqldbc_cons. SQLDBC can be used on all operating systems supported by the database system. It is a component of the SAP MaxDB software.

SQLDBC replaces the old C/C++ Precompiler. More information: SAP Notes 649814 and 822239.

Features

  • Unlimited number of database connections and SQL statements

  • Complete Unicode support (UCS2 and UTF-8)

  • Flexible result sets (navigation within the result set, changing the result set)

  • Piece-wise writing of characters and binary data (LOB interface)

  • Support of the following SQL and C data types:

    • CHAR, VARCHAR, SHORT, INT, LOB, FIXED, FLOAT, DOUBLE

    • BLOB, CLOB

    • ODBC (NUMERIC, DATE, TIME)

    • STREAMS (BLOB, CLOB, ABAP, and liveCache)

  • Internal temporary storage of SQL statements in the parse info cache

  • Optimization of SELECT and FETCH statements

  • Optimization of the packages (use of multiple segments, use of unoccupied space in packages for administration tasks, use of a mixed Unicode/ASCII mode, alternating buffer technology for INSERT statements)

  • Extensive trace options

  • Multi-threading (parallel execution of SQL statements, ending long-running SQL statements, synchronization in a multi-threading environment, independence of parallel database connections)

Activities

  • Installing SQLDBC

  • SQLDBC Classes

  • Using the SQLDBC Trace

More Information

You can find a detailed programming reference for SQLDBC on the MaxDB website at http://maxdb.sap.com/documentation/sqldbc/SQLDBC_API/index.html


SQLDBC Classes - SAP Documentation

Function documentation SQLDBC Classes

SQLDBC Classes

Name

Description

SQLDBC::SQLDBC_Environment

Base class of the SQLDBC library

You can use the methods of this class to:

  • Create and release SQLDBC_Connection objects

  • Control SQLDBC traces

  • Control runtime behavior (single- and multi-threading, memory management)

  • Query SQLDBC properties such as the SQLDBC version

SQLDBC::SQLDBC_Connection

Management of database connections

You can use the methods of this class to:

  • Open database sessions

  • Control transactions

  • Change date and time formats of database sessions

  • Information about a database session, such as the database version

  • Create objects with which SQL statements can be executed

SQLDBC::SQLDBC_ConnectProperties

Using the methods of this class, together with a SQLDBC_Connection object, you can assign the following special properties, among others, to a database session or query these properties:

  • Session: SQL mode, timeout, isolation level

  • Performance: select-fetch optimization, SQL statement cache

  • Compatibility: cursor prefix, filling procedure for columns with alphanumeric values (blank padding)

  • Rounding behavior: setting defining whether numbers are truncated or rounded

  • Handling of superfluous spaces

SQLDBC::SQLDBC_Statement

You can use the methods of this class to execute SQL statements without parameters, such as DDL statements.

Recommendation Recommendation

Execute all SQL statements without parameters using the methods of this class.

End of the recommendation.

You can use the methods of this class to:

  • Generate results sets (write-protected or changeable)

  • Combine SQL statements into group requests

  • Query information about result sets such as the number of changed table rows

  • Query sequence numbers (serials) of INSERT statements

SQLDBC::SQLDBC_PreparedStatement

This class is derived from the SQLDBC_Statement class. You can use the methods of this class to execute SQL statements with parameters. You enter parameters in SQL statements with ? or :<identifier> (see the SQL Reference Manual, Parameter Name (parameter_name)).

You can use the methods of this class to:

  • Bind parameters to program variables (necessary before executing SQL statements with parameters)

  • Parse SQL statements

  • Query information about parameters

  • Execute mass requests (batch or array statements)

SQLDBC::SQLDBC_ParameterMetaData

You can use the methods of this class to query data type and length information for parameters in SQL statements.

SQLDBC::SQLDBC_ResultSetMetaData

You can use the methods of this class to query data type and length information for columns in result sets of SQL statements.

SQLDBC::SQLDBC_ResultSet

Processing of result sets that were generated by executing SQL statements with the methods of the class SQLDBC_Statement or the class SQLDBC_PreparedStatement

You can use the methods of this class to:

  • Navigate result sets

  • Generate excerpts (row sets) from result sets

  • Bind program variables for reading the column values of result sets

  • Execute block operations for reading part (see SQLDBC_RowSet class) or all of the result set

SQLDBC::SQLDBC_RowSet

Reading of data from result sets

Row sets are excerpts from result sets that were generated with methods of the SQLDBC_ResultSet class.

You can use the methods of this class to:

  • Address individual rows within the row set

  • Transfer individual column contents into program variables

  • Use block operations to transfer column contents into arrays of program variables

SQLDBC::SQLDBC_UpdatableRowSet

This class is derived from the SQLDBC_RowSet class and contains methods for changeable result sets.

You can use the methods of this class to:

  • Change the contents of columns (UPDATE)

  • Delete table rows (DELETE)

  • Add new table rows (INSERT)

SQLDBC::SQLDBC_LOB

Processing of column values from LOB columns

You can use the methods of this class to read and write LOB values piece-wise.

SQLDBC::SQLDBC_ErrorHndl

You can use the methods of this class to query the error messages of previous operations.

SQLDBC::SQLDBC_SQLWarning

You can use the methods of this class to query the warnings of previous operations.

More Information

SQL Reference Manual

SQL Tutorial


Using the SQLDBC Trace - SAP Documentation

Procedure documentation Using the SQLDBC Trace

The SQLDBC trace records the SQL statements that are sent by the application to the database via the SAP MaxDB SQLDBC interface, as well as their parameters and results.

Use the command line program sqldbc_cons to configure and control the SQLDBC trace.

Caution Caution

Traces compromise performance. Use traces only for troubleshooting and problem analysis.

End of the caution.

sqldbc_cons is a component of the SAP MaxDB SQLDBC software.

Procedure

Enter the following command on the command line:

<installation_path>\bin\sqldbc_cons [<command>] [<option>]

Note Note

You can display the installation path using the dbm_getpath DBM command:

dbmcli dbm_getpath InstallationPath

For more information, see Database Manager CLI, dbm_getpath.

End of the note.
SQLDBC Trace and ODBC Trace: Commands
<command> | Description
CONFIG TRACE FILENAME <trace_file_name> | Specifies the name <trace_file_name> of the trace file If you enter %p in the name, it is replaced by the process ID of the application for which the trace is written.
PROFILE FILENAME <profile_file_name> | Specifies the name <profile_file_name> of the profile file
PROFILE [COLLECT ON | COLLECT OFF | RESET] | Activates or deactivates profiling (collecting statistical information) or resets all statistics counters
SHOW ALL | Displays the configuration of the traces and current information about the traces
SHOW CONFIG | Displays the configuration of the traces
SHOW PROFILE | Displays the collected statistical information in aggregated form
SHOW TRACESETTINGS | Displays current information about the traces
TRACE API ON | OFF | Applies only to the ODBC interface: Activates or deactivates the API trace The API trace is similar to the Microsoft Driver Manager trace, but logs more actions.
TRACE LONG ON | OFF | Activates/deactivates the detailed LONG trace The LONG trace logs method calls with their call parameters.
TRACE OFF | Deactivates all SQLDBC traces
TRACE PACKET ON | OFF | <size> | Activates or deactivates the PACKET trace The PACKET trace logs communication packages. You use the <size> option to configure the size of the logged communication packages in bytes (default value: 1000 bytes).
TRACE SHORT ON | OFF | Activates or deactivates the SHORT trace The SHORT trace logs method calls.
TRACE SIZE <size> | Defines the size <size> of the trace file (in bytes) The system requires at least 8192 bytes for the trace file.
TRACE SQL ON | OFF | Activates or deactivates the SQL trace The SQL trace logs SQL statements (the most simple trace is sufficient for most analyses).
TRACE STOP ON ERROR <error_number> | OFF [COUNT <number>] | Deactivates the trace after the error with error number <error_number> has occurred the number of times configured by the <number> option
TRACE TIMESTAMP ON | OFF | Activates or deactivates the time stamp for each logged action
SQLDBC Trace and ODBC Trace: Options

<option>

Description

Note that you can enter only one trace option at a time. They cannot be combined.

-f

Forces the execution of the command

-h

Displays help

-p <pid>

Executes the command only for the process with process ID <pid>.

-u <domain>\<os_user>

For Microsoft Windows only

To use this option, you need administration privileges on your computer.

With this option, you write the trace for the operating system user <os_user> of the <domain>. If you do not specify this option, the trace is written for the operating system user who is logged on.

You need this option, for example, to activate the trace in an SAP system where you cannot logon with the user SAPservice<SID>.

-v

Displays detailed information (verbose)

Result

The SQLDBC trace writes its results in chronological order into the sqldbctrace-<pid>.prt trace file in the <data_path>\wrk (Microsoft Windows) or <user_home>\.sdb\<computer_name> (Unix/Linux) directory.

If profiling has been activated, the SQLDBC trace writes aggregated statistical information to the sqldbcprofile-<pid>.prt file.

<pid> = process ID

The trace file is overwritten cyclically.

More information: Glossary, Directory

Example

  1. To activate the SQLDBC trace for SQL statements, enter the following command:

    C:\Program Files\sdb\Installation_2009-07-21\bin\sqldbc_cons TRACE SQL ON

  2. You use SQLCLI to log on to the DEMODB database as database user MONA and query the data in the HOTEL.HOTEL table.

    C:\Program Files\sdb\Installation_2009-07-21\bin\sqlcli -d DEMODB -u MONA,RED select * from HOTEL.HOTEL

  3. The SQLDBC trace writes the information to the trace file C:/ProgramData/sdb/Installation_2009-07-21/wrk/sqldbctrace-1236.prt:

    <html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><PRE><PLAINTEXT>SQLDBC
7.8.2 BUILD 000-103-218-836 Aug 10 2009 20:11:18 System: Microsoft Windows / Intel x86 (32-bit) IFR_Environment::IFR_Environment >IFR_Environment::getConnection   >IFR_Environment::getConnection   <=&(conn -1 sess 00000000) <=&(conn -1 sess 00000000) >IFR_Connection::connect   p_servernode(-3)='
 '   p_serverdb(-3)='demodb'   p_username(-3)='MONA'[...]

More Information

SAP Note 822239 (FAQ: MaxDB Interfaces)


PHP Manual - SAP Documentation

Background documentation PHP Manual

With the SAP MaxDB PHP extension, you can access SAP MaxDB databases using PHP. The SAP MaxDB PHP extension is an interface between PHP and SAP MaxDB SQLDBC.

The SAP MaxDB PHP extension can be used on Linux (32 bit), Microsoft Windows 2000, and Microsoft Windows XP. You need PHP version 4.3.6 or higher.

Download

The SAP MaxDB PHP extension is not part of the SAP MaxDB standard installation package. You can download it from the PECL Repository for PHP extensions at http://pecl.php.net

Installation

Creating and Installing the SAP MaxDB PHP Extension on Linux

Installing the SAP MaxDB PHP Library on Microsoft Windows

More Information

You can find the SAP MaxDB PHP extension reference documentation at http://www.php.net/manual/en/ref.maxdb.php. This documentation is also available in docbookxml format at http://cvs.php.net/phpdoc/en/reference/maxdb.


-7077: Synonym not allowed - SAP Documentation

Background documentation -7077: Synonym not allowed

Explanation

You have used a synonym name within a CREATE TRIGGER or CREATE DBPROC statement. This is not allowed.

User Response

nstead of using the synonym name, use the full name for which the synonym was originally defined.


-7061: LOCK ROW for this table not allowed - SAP Documentation

Background documentation -7061: LOCK ROW for this table not allowed

Explanation

A LOCK statement with a ROW specification can only be executed for an updatable join view table. However, not even updatable join view tables allow a ROW specification with OPTIMISTIC.

User Response

The effect can be achieved using several ROW specifications issued on the underlying base tables.


Opening the Backup History - SAP Documentation

Procedure documentation Opening the Backup History

In the backup history, the database system chronologically logs information for all the actions it carried out when backing up and restoring data and log entries.

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups or displaying status information.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Backup tab page.

    Backup History

    Property

    Description

    Label

    Backup ID

    Backup Type

    Backup Type

    The HISTLOST entry means that the backup history was interrupted.

    Action

    Internal name of the executed function

    Start

    Time when the action began

    Medium

    Name of the backup template

    Size

    Size in pages

    Devices

    Number of parallel data carriers, if applicable

    Next Log Page

    Log Sequence Number

    From Page

    From log sequence number

    To Page

    To log sequence number

    To display information about backups that were executed using third-party backup tools, select Support for external backup tools.

  4. For more information about an entry in the backup history, open Details.

    Backup History: Details (Additional Information)

    Property

    Description

    Log Required

    Specifies whether log backups have to be imported after importing the data backup

    Last Save Point

    Only for data backups

    Time of the last savepoint

    First Commit

    Last Commit

    Only for log backups

    Time at which the youngest/oldest log page, which is included in the log backup, was written to the log volumes

    System Key

    For internal purposes only

    Unique identifier of the backup action

More Information

  • Defining Backup Templates

  • Backing Up Data

  • Backing Up Log Entries


-25339: Error during restart IMPORT; file <file_name> could not be opened/read - SAP Documentation

Background documentation -25339: Error during restart IMPORT; file <file_name> could not be opened/read

Explanation

Error restarting the import of data using an IMPORT command.The system was unable to open the restart file.

User Response

Analyze and correct the cause of the error. Execute the command again.


Setting the Environment Variable BSI_ENV - SAP Documentation

Background documentation Setting the Environment Variable BSI_ENV

To enable Database Manager or Loader on the database computer to access the configuration file for Backint for SAP MaxDB, you must explicitly define the absolute path of the file in the environment variable BSI_ENV using Database Manager CLI.

If you do not set the BSI_ENV variable, the system uses one of the following file as a configuration file, depending on the operating system:

Default Values for Configuration File
Operating System | File
Unix | <run_directory>/bsi.env
Microsoft Windows | <run_directory>\bsi.env

Structure

>dbmcli -d <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset -raw BSI_ENV <value>

Options
Option | Description
<value> | Value of the environment variable BSI_ENV

More Information

Database Manager CLI, dbm_configset


Starting or Stopping Database Analyzer - SAP Documentation

Procedure documentation Starting or Stopping Database Analyzer

Database Analyzer is a database tool for analyzing database performance.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for using Database Analyzer.

    More information: Glossary, Server Permission

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Overview tab page.

  4. Choose Database Analyzer.

  5. To start Database Analyzer, choose Activate Database Analyzer and specify the start options.

    Database Analyzer: Start Options

    Property

    Description

    Interval

    Time interval between two analyses

    Default value: 900 s

    Number

    Number of analyses to be performed

    Configuration file

    Name of the configuration file to be used

    If you do not specify a configuration file, Database Analyzer uses the dbanalyzer<version>.cfg file in the <installation_path>\env directory.

    You can display the installation path using the dbm_getpath DBM command: dbmcli dbm_getpath InstallationPath

    More information: Database Analyzer, Database Analyzer Configuration File

    Delete Logs

    Delete Database Analyzer log files

    To change options, specify the new options and choose Restart Database Analyzer.

    To stop Database Analyzer, choose Deactivate Database Analyzer.

Result

Database Analyzer writes its messages to the following log files.

Database Analyzer Log Files
File Name | Directory | Content
DBAN.prt | <run_directory>\analyzer\<date> For more information, see Run Directory. | Database Analyzer log files
DBAN.inf | <run_directory>\analyzer | Database Analyzer status
DBAN.err | <run_directory>\analyzer | Database Analyzer errors
Further Database Analyzer Log Files | - | -
Database Analyzer: Messages

Avg User cmd exec Time for Task

Avg User Suspend Time for Task

Avg User Wait Time For Task

Catalog Cache Hit Rate

Collision Rate

Data Cache Hit Rate

Data Volume Filling Level

Deletes/Updates

Free User Tasks

Index accesses

Index range accesses

Isolated index accesses

Isolated index range accesses

Isolated index scans

More information: Optimizer Strategies

Log Area Filling Level

Lock List Escalations

Log Queue Overflows

Log write time

Max Log Queue Filling

Number of Cached History Pages

Number of Physical Reads

Number of Physical Writes

Number of Physical Writes of Temporary Pages

OMS Cache Hit Rate

OMS Heap Collisions

OMS Heap Utilization

OMS History Cache Hit Rate

OMS Terminates

OMS Version is Old

OMS Version is Unloaded

Out of Memory Exceptions

Parse Activities

Physical Reads for User Task

Primary key accesses

Primary key range accesses

More information: Optimizer Strategies

Selects and Fetches

Table scans

User Task Blocked in State

User Task Physical Writes

More Information

Displaying Information About the Database Analyzer

Database Analyzer documentation


Installing the SAP MaxDB ODBC Driver - SAP Documentation

Procedure documentation Installing the SAP MaxDB ODBC Driver

Prerequisites

On Microsoft Windows, you need Microsoft Data Access Components (MDAC) Version 2.7 or higher.

Procedure

The ODBC driver is part of the SAP MaxDB software.

Result

SAP MaxDB ODBC Driver: Files
Operating System | File name | Description
Microsoft Windows | sdbodbc.dll sdbodbcw.dll | Library of the SAP MaxDB ODBC driver (ASCII) Library of the SAP MaxDB ODBC driver (Unicode)
- | odbcreg.exe | Program for entering the driver information in the registry
Unix and Linux | libsdbodbc.a, libsdbodbc.so libsdbodbcw.a, libsdbodbcw.so | Library of the SAP MaxDB ODBC driver (ASCII, static/dynamic) Library of the SAP MaxDB ODBC driver (Unicode, static/dynamic)
- | incl/sql.h | ODBC driver header file (core API)
- | incl/sqlext.h | ODBC driver header file (level 1 API and level 2 API)
- | incl/sqltypes.h | ODBC driver header file (data types)
- | incl/sqlucode.h | ODBC driver header file (Unicode)
- | incl/WINDOWS.H | Header file for Unix and Linux platforms

The ODBC driver files are located in the following directories:

SAP MaxDB ODBC Driver: Directories
Operating System | Directory | Comments
Microsoft Windows | <installation_path>\pgm Note Note You can display the installation path using the dbm_getpath DBM command: dbmcli dbm_getpath InstallationPath For more information, see Database Manager CLI, dbm_getpath. End of the note. Example: C:\Program Files\sdb\Installation_2009-07-21\pgm | The system stores information about all installed ODBC drivers in the registry in the key HKEY_LOCAL_MACHINE/SOFTWARE/ODBC/ODBCINST.INI and also creates a driver-specific key for each ODBC driver.
Unix and Linux | <installation_path>/lib or <installation_path>/lib/lib64 Example: /opt/sdb/Installation_5/lib | -


Selecting, Arranging and Renaming Columns - SAP Documentation

Background documentation Selecting, Arranging and Renaming Columns

You can select specific columns in the query and arrange and rename these columns in the results table.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Selecting Specific Columns

To select columns from a table, specify the desired column name after the keyword SELECT. Use commas to separate the column names in this list. Blank characters are optional.

SELECT firstname, name

  FROM hotel.customer

Displaying the first and last names of all customers

Result

FIRSTNAME | NAME
Jenny | Porter
Peter | Brown
? | Datasoft
Rose | Brian
Mary | Griffith
Martin | Randolph
Sally | Smith
Mike | Jackson
Rita | Doe
George | Howe
Frank | Miller
Susan | Baker
Joseph | Peters
? | TOOLware
Antony | Jankins
Selecting All Columns

Instead of the list of column names, you can also enter *.

SELECT *

  FROM hotel.customer

The system displays the contents of the entire customer table. The columns are displayed in the order you defined when you created the table.

Arranging Columns

You can arrange the columns to be displayed in any order you desire. To do so, enter the column names in the desired order after the keyword SELECT.

SELECT name, firstname

  FROM hotel.customer

Displaying the last and first names of all customers

Result

NAME | FIRSTNAME
Porter | Jenny
Brown | Peter
Datasoft | ?
Brian | Rose
Griffith | Mary
Randolph | Martin
Smith | Sally
Jackson | Mike
Doe | Rita
Howe | George
Miller | Frank
Baker | Susan
Peters | Joseph
TOOLware | ?
Jankins | Antony
Renaming Columns

You can rename the columns to be displayed.

SELECT zip, name city_name

  FROM hotel.city

    WHERE state = 'NY'

Displaying the zip code and city/place name of all cities/places in the state of NY

Result

ZIP | CITY_NAME
10019 | New York
10580 | New York
11788 | Long Island
12203 | Albany

More Information

SQL Reference Manual, QUERY Expression (query_expression), Selected Column (select_column), Table Expression (table_expression)

More examples for Data Query


-763: Variable not allowed as ARRAY - SAP Documentation

Background documentation -763: Variable not allowed as ARRAY

Explanation

Scalar host variables are used in an ARRAY statement.

User Response

Instead of scalar variables, use arrays only; otherwise do without the ARRAY statement.


-25206: USAGE value of '0 rows' not allowed - SAP Documentation

Background documentation -25206: USAGE value of '0 rows' not allowed

Explanation

A Loader command for importing data contains an error: IMPORT TABLE <table_spec>.The value that has been specified for USAGE (0 rows) is not valid.

User Response

Correct the number of rows you specified for USAGE and re-execute the command.


DOMAINCONSTRAINTS - SAP Documentation

Example documentation DOMAINCONSTRAINTS

Use of the system table DOMAIN.DOMAINCONSTRAINTS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create domains. Proceed as described in SQL Tutorial, Domains.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table DOMAINCONSTRAINTS to determine the following database information, among other things:

  • All domains for which a constraint on the permissible values was defined and the definition of this domain

    SELECT domainname, definition

    FROM DOMAIN.DOMAINCONSTRAINTS

  • All domains of the database user MONA for which a constraint on the permissible values was defined

    SELECT owner, domainname

    FROM DOMAIN.DOMAINCONSTRAINTS

    WHERE owner = 'MONA'

More Information

All domains: see DOMAINS


-28820: An (uncommited) object with the given key exists already - SAP Documentation

Background documentation -28820: An (uncommited) object with the given key exists already

Explanation

Attempting to create a new “keyed-object” or a new object with an unique index failed. The parallel session already created an object with the same key. The creation has not been committed yet.

User Response

Depending if the parallel session commits or rollbacks the object creation, it is possible to repeat the construction or to read from the existing object.


-7019: Feature not allowed in view definition - SAP Documentation

Background documentation -7019: Feature not allowed in view definition

Explanation

ROWNO specifications are not allowed in a view definition.

User Response

Remove the ROWNO specification from the SQL statement.


-914: New volume not accessible - SAP Documentation

Background documentation -914: New volume not accessible

Explanation

You tried to define an additional disk for the data devspace. This attempt failed because there is no disk with the specified name and size which could be accessed.

User Response

The error message contains an additional error description which must be interpreted according to the operating system being used.Check the name and size of the disk as well as the installation. Change the specifications, then repeat the command.


-902: I/O error - SAP Documentation

Background documentation -902: I/O error

Explanation

While an SQL statement was being processed, a read or write operation had to be performed on the data area or log area. This operation could not be executed successfully. Possible reasons:

  1. A SHUTDOWN was performed in the meantime.

  2. A disk is defective.

User Response

In some cases, the error message contains an additional description of the error which must be interpreted according to the operating system being used.

  1. Start the database instance.

  2. Once the disk error has been corrected, the database instance must be restored.


-3103: Invalid sequence definition - SAP Documentation

Background documentation -3103: Invalid sequence definition

Explanation

  1. In the CREATE SEQUENCE statement, the value 0 was specified for the interval between two numbers to be created by the sequence. This is not allowed.

  2. In the CREATE SEQUENCE statement, a starting value was specified which is not within the range defined by the minimum and maximum value; or a minimum value was specified that is greater than the maximum value.

User Response

  1. Repeat the command with a positive or negative integer.

  2. Change the starting value and/or the minimum and maximum values and repeat the command.


-730: Nested comment not closed - SAP Documentation

Background documentation -730: Nested comment not closed

Explanation

Nested comments are not regularly closed in the source program.

User Response

The number of opening commentary symbols must equal the number of closing commentary symbols.


-6013: Duplicate trigger definition - SAP Documentation

Background documentation -6013: Duplicate trigger definition

Explanation

There is already a trigger with the specified name.

User Response

Use a QUERY statement issued on the DOMAIN.TRIGGERS system table to find out which trigger names have already been assigned. Choose a different name. Use a QUERY statement issued on the DOMAIN.TRIGGERS system table to find out whether the existing trigger has the desired definition, in which case you do not need to define another trigger.


-75: Too many SQL statements (Work rolled back) - SAP Documentation

Background documentation -75: Too many SQL statements (Work rolled back)

Explanation

The user's transaction was implicitly canceled and reset by a ROLLBACK statement. The database session was implicitly terminated, because you had issued too many SQL statements or had performed too many transactions within a session.

User Response

After a new CONNECT statement you can repeat the transaction.


Database User Class - SAP Documentation

Background documentation Database User Class

Every database user belongs to a database user class. User classes are distinguished by the authorizations that their members have.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

More Information

Database Administration, Database Users

Database Studio, Creating Database Users, Changing the Properties of Database Users

SQL Tutorial, Database Users and Their Privileges

SQL Reference Manual, CREATE USER Statement


-10706: Statement too long - SAP Documentation

Background documentation -10706: Statement too long

Explanation

The SQL statement that you entered is too long

User Response

  • Shorten the SQL statement.

  • Check the value of the CommandBufferSize database parameter and increase it if necessary.


-3050: Invalid timestamp format - SAP Documentation

Background documentation -3050: Invalid timestamp format

Explanation

The specified value is not a valid timestamp value or does not correspond to the date and time format chosen during installation or the current session.

User Response

Correct the timestamp value.


CREATE USER Statement (create_user_statement) - SAP Documentation

Background documentation CREATE USER Statement (create_user_statement)

The CREATE USER statement (create_user_statement) defines a database user. The existence and properties of the database user are recorded in the database catalog in the form of metadata.

Structure

Syntax Syntax

  1. <create_user_statement> ::=
  CREATE USER <user_name> PASSWORD <password>
    [<user_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ascii_or_unicode>
    [<connect_mode>]
| CREATE USER <user_name> PASSWORD <password> LIKE <source_user>
| CREATE USER <user_name> PASSWORD <password> USERGROUP <usergroup_name>

<user_mode> ::=
  DBA
| RESOURCE
| STANDARD

<ascii_or_unicode> ::=
  ASCII
| UNICODE

<connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT

<source_user> ::=
  <user_name>
End of the code.
Examples

SQL Tutorial, Database Users and Their Privileges

Explanation

The current database user must be a database administrator (DBA user). He or she becomes the owner of the created database user. The specified user name must not be identical to the name of an existing database user of a user group, role or schema.

The password must be specified when a database session is started. It ensures that only authorized database users can access the database system. Any unsigned_integer specified must be greater than 0.

There is no restriction to the amount of disk space available to the database user for storing his or her private and temporary tables (in the context of sizes specified for the data volumes during installation).

user_mode DBA | RESOURCE | STANDARD

When a database user is created, the database user class DBA, RESOURCE or STANDARD is defined for this database user using user_mode. The database user class specifies the operations that the defined database user can execute. If no database user group class is specified when defining a database user, the STANDARD class is assumed implicitly.

Database User Classes

Database User Class

Properties

DBA

Database administrators

Users belonging to this class can:

  • Create RESOURCE and STANDARD database users

  • Create database objects

  • Grant all or part of the privileges for their database objects to other database users

RESOURCE

Users belonging to this class can:

  • Define data

  • Create database procedures

  • Grant privileges for their database objects to other database users

STANDARD

Users belonging to this class can:

  • Access data and database procedures for which they have been granted the necessary privileges

  • Define view tables, synonyms, and temporary tables

The database user classes are arranged in hierarchies as follows:

  • The database user class RESOURCE encompasses all the rights of a STANDARD database user.

  • The database user class DBA encompasses all the rights of a RESOURCE database user.

  • The database system administrator can generate database users of the database user classes DBA, RESOURCE and STANDARD. He or she has owner rights over all database users. The database system administrator has the same function and rights as a DBA user.

TIMEOUT

The timeout value is specified in seconds and must be between 30 and 32400. Only the database system administrator can define database users with the timeout value 0.

COSTLIMIT

This specification limits costs by preventing specified database users from executing QUERY statements or INSERT statements in the form of INSERT...SELECT... beyond a specified degree of complexity, which would otherwise be cost-intensive. COSTLIMIT specifies the estimated SELECT cost value beyond which the SQL statement is not executed.

Before these SQL statements are executed, the costs expected to result from this statement are estimated. This SELECT cost estimate can be output using the EXPLAIN statement. In interactive mode, the estimated SELECT cost value is compared with the COSTLIMIT value specified for the database user. The COSTLIMIT value is ignored with QUERY statements or INSERT statements of the form INSERT...SELECT... that are embedded in a programming language.

[NOT] EXCLUSIVE

If the EXCLUSIVE syntax rule is not specified, NOT EXCLUSIVE is assumed implicitly.

  • EXCLUSIVE: This prevents the specified database user from opening two different database sessions simultaneously.

  • NOT EXCLUSIVE: Allows the database user to open several database sessions simultaneously.

DEFAULTCODE

The value of the special database parameter DefaultCodePage is overridden with the code attribute ASCII or UNICODE specified in syntax rule DEFAULTCODE <ascii_or_unicode> for objects of the specified database user.

ENABLE CONNECT | DISABLE CONNECT

You can use connect_mode to define whether a database user can open database sessions. For CREATE USERGROUP statement this is only valid however if CONNECT mode (connect_mode) is not specified in the CREATE USER statement.

If CONNECT mode is not specified, ENABLE CONNECT is implicitly assumed. ENABLE and DISABLE cannot both be specified at the same time.

  • ENABLE CONNECT: The database user (members of the database user group) can open database sessions.

  • DISABLE CONNECT: The database user (members of the database user group) cannot open database sessions. ALTER USER|USERGROUP statement: The database sessions of the specified database user (members of the specified database user group) are terminated. You can enable the individual members of a database user group to open database sessions again using the ALTER USER statement.

LIKE

The current user must have owner authorization over the source_user.

If the source database user is not a member of a user group, the new database user receives the same user class and values for TIMEOUT, COSTWARNING, COSTLIMIT and EXCLUSIVE as the source database user. The new database user receives all privileges granted to the source database user by other database users.

If the source database user is a member of a user group, a new member is created in this user group with the new database user name.

USERGROUP

The database user issuing the SQL statement must be the owner of the specified user group. The new database user then becomes a member of this user group. For further explanations, see CREATE USERGROUP Statement (create_usergroup_statement).

More Information

ALTER USER Statement (alter_user_statement)

Database Administration, Managing Users, Database Users


From -1000 to -1999 - SAP Documentation

Background documentation From -1000 to -1999

Database Kernel Error Messages
-1000 | Too many lock requests
-1001 | Too many lock objects specified
-1002 | Too many columns
-1003 | Too many buffers requested
-1004 | Too many correlated columns
-1005 | Too many monadic operators
-1006 | Too many variables
-1007 | Parameter list too long
-1008 | Too many or too few host variables for output
-1009 | Too many named indexes for this table
-1010 | Too many volumes
-1011 | Too many correlated tables
-1012 | Too many referential constraint definitions for this table
-1013 | Too many order columns
-1014 | Too many source tables
-1015 | Too many values
-1017 | Too many joins
-1023 | Too many nested subtransactions
-1025 | Too many asynchron requests
-1026 | Too many differences between old and new view definition
-1101 | Too complicated SQL statement (Too many recursions)
-1102 | Too complicated SQL statement (Too many subqueries)
-1103 | Too complicated SQL statement
-1104 | Too complicated SQL statement (KB-stack overflow)
-1105 | Too complicated SQL statement (Too much data)
-1106 | Too complicated SQL statement (Too much strategy data)
-1107 | Too complicated SQL statement (Too many internal commands)
-1108 | Too complicated SQL statement (Correlated row too long)
-1110 | View definition too long
-1111 | Too many savepoints
-1112 | Constraint too complicated
-1113 | Too many nested function calls
-1114 | Communication packet too small
-1115 | Too many intern columns
-1116 | Too long trigger parameters
-1117 | Too complicated trigger qualification
-1119 | Too many constraints for this table
-1120 | Too many statements in definition
-1200 | Too few values
-1201 | Too few columns
-1402 | Integrity violation
-1452 | Duplicate secondary key
-1556 | Data space full
-1755 | SQL statement will drop further objects (use CASCADE)


Importing: Loader Commands - SAP Documentation

Function documentation Importing: Loader Commands

Loader can process a range of Loader commands and SQL statements, including Loader-specific commands for importing data.

Prerequisites

Calling the Loader

Opening a Session: Loader Commands

Exporting: Loader Commands

Features

Syntax Syntax

  1. <import_command> ::=
  <import_db_command>
| <import_user_command>
| <import_schema_command>
| <import_table_command>
| <import_columns_command>
End of the code.

The range of Loader commands enables you to import a complete database or part of a complete database, such as, database user objects, schema objects, data from a table, or a set of column values from a table.

Example

Loader Tutorial, Importing

More Information

  • UPDATE COLUMNS Command

  • Syntax Rules: Sorted Alphabetically

    Syntax Rules: Sorted Semantically

  • Loader Commands and SQL Statements

Database Studio, Importing Data and/or Information from the Database Catalog


-10811: Numeric overflow for parameter/column (<number>) - SAP Documentation

Background documentation -10811: Numeric overflow for parameter/column (<number>)

Explanation

The numeric value of parameter/column <number> could not be read or inserted, because it is too large.

User Response

Perform one of the following actions:

  • Alter the host variable data type that is bound to the parameter using the SQLDBC_PreparedStatement::bindParameter method or to the column using the SQLDBC_ResultSet::bindColumn method

  • Alter the SQL statement

  • Alter the table definition.


-1201: Too few columns - SAP Documentation

Background documentation -1201: Too few columns

Explanation

In a referential CONSTRAINT definition, fewer referencing columns were specified than referenced columns. The number of specified columns in the referencing table must correspond to the number of referenced columns of the references table specified implicitly or explicitly.

User Response

Use a QUERY statement issued on the system table DOMAIN.COLUMNS to find out the current definition of the key columns in the referenced table. Use a QUERY statement issued on the system table DOMAIN.IND_USES_COL to find out the indexes of the referenced table. The specification of the referencing table columns must be adapted accordingly.


-24910: ERR_PARAMVER - wrong version of param help file (cserv.pcf) <version> - SAP Documentation

Background documentation -24910: ERR_PARAMVER - wrong version of param help file (cserv.pcf) <version>

Explanation

The version of the DBM server does not match the version of the parameter description file (cserv.pcf).

User Response

Correct the files of your installation. Remember to close all programs in your database system before starting an installation or upgrade.


-28514: Unknown OMS Version - SAP Documentation

Background documentation -28514: Unknown OMS Version

When liveCache called omsOpenVersion, OmsCloseVersion, omsDropVersion or omsRenameVersion, it assumed that the specified OMS version does not exist.

User Response

Contact Support.


Analyzing Database Performance: Overview - SAP Documentation

Background documentation Analyzing Database Performance: Overview

  • Configuring and Starting SQL Performance Monitoring

  • Analyzing SQL Performance Bottlenecks

  • Analyzing SQL Statements (EXPLAIN)

  • Starting or Stopping Database Analyzer

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Analyzing Database Performance


Renaming Synonyms - SAP Documentation

Procedure documentation Renaming Synonyms

Prerequisites

  • You are logged on to the database as a database user.

  • The current database user created the synonym.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the synonym in the explorer tree.

  2. In the context menu of the synonym, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Change the name of the synonym.

  5. In the context menu of the editor window, choose Alter Synonym.

More Information

SQL Reference Manual, RENAME SYNONYM Statement (rename_synonym_statement)


-106: Table unloaded or content deleted - SAP Documentation

Background documentation -106: Table unloaded or content deleted

Explanation

The table is currently inaccessible. Possible reasons:

  1. The table was extracted from the database instance using an EXPORT TABLE command.

  2. Another user simultaneously performed a DELETE statement for either a large part of the table or for the whole table. As a result, the specified table was inaccessible for a short period of time. This error message can only occur if you work with Isolation Level 0.

User Response

  1. Reload the table into the database using the IMPORT TABLE command.

  2. Wait until the DELETE statement has been executed.

Then execute the SQL statement.


Restoring from a Group of Parallel Data Carriers - SAP Documentation

Background documentation Restoring from a Group of Parallel Data Carriers

To speed up the restore process, you can import data backups from several data carriers simultaneously (group of parallel data carriers). Each data backup that consists of several data carriers can be restored sequentially or in parallel. Note though that you cannot restore log backups in parallel.

Restoring from a group of parallel data carriers is not fundamentally different from a sequential restore: During a sequential restore, you specify the backup template at the start of the operation. When the data is imported from the data carrier, the system asks you to enter the next backup template or an operating system path (including the name) where the next data carrier can be accessed. A parallel restore runs similarly to this, but takes place on several data carriers simultaneously. The system requests a new data carrier for the first data carrier that is completely imported, and proceeds accordingly for each individual data carrier until the data is completely imported. Therefore, a parallel restore is normally a combination of parallel and sequential restore operations that takes place when the number of data carriers to be imported exceeds the number of parallel data carriers.

Example Example

You create a parallel backup on a group of 5 tape devices. This backup consists of 7 tapes. You can restore these 7 tapes in any order and parallelism.

End of the example.

If the system requests that you insert of a succeeding data carrier (message number -8020), then you must acknowledge this in order for the restore process to continue.

Note Note

Even when you import all backup data carriers simultaneously, you may be asked by the system to insert a succeeding data carrier. This is because the number of data carriers used for the backup is stored on the last data carrier to finish during the backup operation only. If the system first finishes the import of a data carrier that does not contain this information, the system asks you to enter the next data carrier.

End of the note.

You can acknowledge this as follows:

  • Enter the next data carrier.

  • Enter the command to only import data from the other data carriers.

  • If Database Manager CLI is used, then you can also enter the AUTOIGNORE option at the start of the restore procedure. This allows the system to import data from the other data carriers only. You can simplify background restore operations in this way.

    Caution Caution

    Only use this option when you are sure that the complete amount of data to be restored can be imported in parallel. This means that the technical specifications allow all backup data carriers to import data simultaneously.

    End of the caution.

Prerequisites

  • The data backup to be imported in parallel consists of several data carriers.

  • If you have created the backup using a third-party backup tool, the following prerequisites must also be met:

    • You must use the same backup tool for a restore that was used for the backup.

    • The number of group parallel data carriers for a restore must be exactly the same as the number of data carriers used for creating the backup.

      Note that if a deadlock occurs during the parallel recovery of the database using a backup tool, you have to import the data carriers in the group one after the other.

Procedure

Use the normal functions for restoring data.

More information: Restoring Databases

Result

Data backup/s successfully imported. If the database has to be restored due to a hardware defect or a logical error, you may have to import log backups to restore the database to a consistent state.

More Information

Backing Up to a Group of Parallel Data Carriers


-5016: Missing delimiter - SAP Documentation

Background documentation -5016: Missing delimiter

Explanation

The SQL statement contains an incorrect delimiter, or a delimiter is missing.

User Response

Correct the SQL statement according to the syntax description and the current SQL mode by using one of the specified delimiters.


Additional Log Functions (package_spec) - SAP Documentation

Background documentation Additional Log Functions (package_spec)

In addition to the entries in the log file of Loader (loader.prt), you can also find detailed information about the actions that occur when a command is executed in the SYSLOADER.TRANSFORMATIONMODEL system table. For many Loader commands, you can export the values belonging to a command from the SYSLOADER.TRANSFORMATIONMODEL system table to a data stream using the syntax element package_spec. This data stream contains all the specifications that completely describe the Loader command that was executed, including information about the design of the command and the runtime data of the executed command.

Structure

Syntax Syntax

  1. <package_spec> ::=
  PACKAGE <outstream_csv_spec>
End of the code.

The package_spec syntax element can be used in the following commands:

EXPORT DB | IMPORT DB
EXPORT USER | IMPORT USER
EXPORT SCHEMA | IMPORT SCHEMA
EXPORT TABLE | IMPORT TABLE

If you specify a data stream using PACKAGE <outstream_csv_spec>, the entries from the SYSLOADER.TRANSFORMATIONMODEL table that belong to the command are exported to this data stream. If a data stream is not specified using PACKAGE <outstream_csv_spec>, the entries from the SYSLOADER.TRANSFORMATIONMODEL system table are not exported.

The PACKAGE data stream outstream_csv_spec is generated in CSV format. The column values from the SYSLOADER.TRANSFORMATIONMODEL system table are stored in the PACKAGE data stream outstream_csv_spec in the following order:

OWNER SCHEMANAME TABLENAME DATASTREAMNAME DATASTREAMHEADERBLOCK DATASTREAMHEADERPOS DATASTREAMTRAILERBLOCK DATASTREAMTRAILERPOS DATASTREAMDATABLOCK DATASTREAMDATAPOS EXCLUDE PACKAGEGUID TASKID STEPID SERVERNODE SERVERDB USERNAME CODETYPE CODEPAGEID STORAGEDEVICE TRANSACTIONSIZE TRANSFORMATION PART TABLETYPE CATALOGSTREAMNAME CATALOGSTREAMTYPE CATALOGSTREAMEBID CATALOGSTREAMFORMAT DATASTREAMTYPE DATASTREAMEBID DATASTREAMFORMAT RESTART RESTORE PAGECOUNT ROWCOUNT STARTTIME ENDTIME REQUESTTIME RECEIVETIME IOTIME LOGTIME

The resulting values are deleted from the SYSLOADER.TRANSFORMATIONMODEL system table if all the values are in the required data stream.

Example

Example Example

EXPORT USER

DATA OUTSTREAM 'mona_pages.data' PAGES

PACKAGE OUTSTREAM 'mona_csv_package'

End of the example.

The application data for database user MONA is exported. In the mona_csv.package data stream you find all the specifications that completely describe the Loader command that was executed.

Content of the PACKAGE data stream mona_csv.package (excerpt):

"MONA","HOTEL","CITY","mona.data0001","0","1024","0","0","0","66560","FALSE","010000003A29DCF9200F0000B0450000A6B717DE7CE1BF84", ...

"MONA","HOTEL","CUSTOMER","mona.data0001","0","66560","0","0","0","132096","FALSE","010000003A29DCF9200F0000B0450000A6B717DE7CE1BF84", ...

"MONA","HOTEL","HOTEL","mona.data0001","0","132096","0","0","0","214016","FALSE","010000003A29DCF9200F0000B0450000A6B717DE7CE1BF84", ...

"MONA","HOTEL","ROOM","mona.data0001","0","214016","0","0","0","279552","FALSE","010000003A29DCF9200F0000B0450000A6B717DE7CE1BF84", ...

"MONA","HOTEL","EMPLOYEE","mona.data0001","0","279552","0","0","0","345088","FALSE","010000003A29DCF9200F0000B0450000A6B717DE7CE1BF84", ...

"MONA","HOTEL","RESERVATION","mona.data0001","0","345088","0","0","0","410624","FALSE","010000003A29DCF9200F0000B0450000A6B717DE7CE1BF84", ...

More Information

Loader Log Functions


-10318: Invalid LOB object - SAP Documentation

Background documentation -10318: Invalid LOB object

Explanation

  • An invalid class reference was used to call the LOB method

  • The SQLDBC_PreparedStatement that belongs to the LOB method no longer exists

  • The SQLDBC_PreparedStatement that belongs to the LOB method has no LOB objects.

User Response

Only use the LOB object method while the associated SQLDBC_PreparedStatment is valid.


-10501: Invalid position in result set: before first row - SAP Documentation

Background documentation -10501: Invalid position in result set: before first row

Explanation

The method that was called could not be executed, because the current cursor position of the result set is before the first row of the result set.

User Response

Position the cursor within the result set using one of the following SQLDBC_ResultSet methods (first, last, next, relative, absolute) or the SQLDBC_RowSet::setPos method.


-3069: Bad xparam page in backup - SAP Documentation

Background documentation -3069: Bad xparam page in backup

Explanation

The data backup includes a corrupt page that contains xparam parameters. As this page only occurs in the backup, this situation is not as critical as the case of a corrupt data or log page. This error does, however, terminate the data backup.

User Response

Contact Support.


Exporting Environment Variables for the Backup Tool - SAP Documentation

Background documentation Exporting Environment Variables for the Backup Tool

If the manufacturer of the third-party backup tool provides environment variables, you can export these variables into the environment by using Database Manager, before calling the third-party backup tool.

Structure

>dbmcli -d <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset -raw set_variable_<number> <variable>=<value>

Options
Option | Description
<number> | Number of the variable (0 <= <number> <= 100)
<variable> | Environment variable
<value> | Value of the environment variable


Catalog Migration to Unicode - SAP Documentation

Background documentation Catalog Migration to Unicode

Upgrade to Version 7.7.x

As of version 7.7, the catalog data of the database is stored in Unicode.

You can therefore upgrade to version 7.8 only if the catalog data of the database to be upgraded is defined as Unicode characters.

If your database version is lower than 7.7, display the value of the database parameter UNICODE to determine whether your database is a Unicode database (see: Database Manager CLI, param_getfull). Databases as of version 7.7 do not have this database parameter.

Note Note

If you want to upgrade a database from version 7.5 or 7.6 to version 7.8 and the database catalog has not been defined with the Unicode character set, you must migrate the database before the upgrade (see: Database Manager CLI, db_migratecatalog).

If you want to upgrade a database from a version below 7.5 to version 7.8. you must first upgrade to version 7.6 and then use Database Manager CLI (See: db_migratecatalog) to migrate the database catalog. You can then upgrade to version 7.8.

End of the note.


-7900: Different block sizes - SAP Documentation

Background documentation -7900: Different block sizes

Explanation

The block sizes specified for the restore and used for the backup differ from each other. The restore cannot be terminated successfully

User Response

The block size used for the corresponding save must also be used for the restore operation.


-3003: Invalid user name - SAP Documentation

Background documentation -3003: Invalid user name

Explanation

The specified user name does not comply with the syntax for the user.

User Response

Correct the user name specified in the SQL statement.


Creating Database Functions - SAP Documentation

Procedure documentation Creating Database Functions

A database function is a user-defined function. To create a database function, you define a database procedure with only one output parameter. You call a database function in the same way that you would call a predefined function.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the CREATEIN privilege for the schema in which you want to create the function.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Open the SQL editor.

    More information: Entering and Executing SQL Statements

  2. Create the database function using the CREATE FUNCTION statement.

    More information: SQL Reference Manual, CREATE FUNCTION Statement (create_function_statement)

Result

The database function is displayed in the Functions folder in the explorer window (read-only).

Example

The database function avgprice determines the average price for single rooms in hotels located within a specified zip code range.

CREATE FUNCTION hotel.avgprice (zip CHAR(5)) RETURNS FIXED(6,2) AS

VAR sum FIXED(10,2); price FIXED(6,2);

hotels INTEGER; avg_price FIXED(6,2);

TRY

SET sum = 0; SET hotels = 0;

DECLARE functionresult CURSOR FOR

SELECT price FROM hotel.room,hotel.hotel WHERE zip = :zip AND

room.hno = hotel.hno AND type = 'single';

WHILE $rc = 0 DO BEGIN

FETCH functionresult INTO :price;

SET sum = sum + price;

SET hotels = hotels + 1;

END;

CATCH

IF $rc <> 100 THEN STOP ($rc, 'unexpected error');

CLOSE functionresult;

IF hotels > 0 THEN RETURN sum/hotels

ELSE RETURN NULL;

More Information

SQL Tutorial, Database Functions


-855: SQL variable must be an array - SAP Documentation

Background documentation -855: SQL variable must be an array

Explanation

SQL variables must be array structures in an SQL array statement.

User Response

Define and specify the SQL variable correctly.


service_unregister - SAP Documentation

Background documentation service_unregister

Note Note

This DBM command is normally executed by the system. Only use this command if you are instructed to do so by technical support.

End of the note.

Use this command to unregister the service database in the system.

Prerequisites

You are logged on to the operating system (see user_system).

Structure

service_unregister [<installation_path>}

Option
Option | Description
<installation_path> | Installation path of the software installation whose service database is to be unregistered

Result

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, Services


-10907: Internal Error: LOB descriptor has error flag set - SAP Documentation

Background documentation -10907: Internal Error: LOB descriptor has error flag set

Explanation

The method that was called failed during the transfer of LOB values, because the database kernel reported an error.

User Response

Check the kernel log for more information about the error.


OMS Locks - SAP Documentation

Procedure documentation OMS Locks

The Performance user menu of the DBA Cockpit contains, among other things, a display of the OMS locks.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] OMS Locks [image] .

Result

The logical object locks are displayed.


backup_ext_ids_get - SAP Documentation

Background documentation backup_ext_ids_get

When you execute this command, the system accesses the information stored in the backup tool and writes it to a file. This information includes the external backup ID, the availability status, the backup type and the creation time of the backups of a database instance. In contrast to backup_ext_ids_getfromtool, here you enter the name of the backup template.

To subsequently display the file content, use the DBM command for displaying external backup IDs (see: backup_ext_ids_list).

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

backup_ext_ids_get <medium_name> [<database_name>] [<database_computer>]

Options
Option | Description
<medium_name> | Name of the backup template
<database_name> | Name of the database of which the backups were created
<database_computer> | Name of the database computer

Result

OK

...

In the event of errors, see Reply Format.

More Information

Glossary, Backup IDs


-10408: Character conversion failed - SAP Documentation

Background documentation -10408: Character conversion failed

Explanation

The LOB data that was transferred could not be converted, because the data contains invalid characters, or it does not match the data format of the column. UNICODE data (UCS2 and UTF8) can only be inserted in UNICODE database instances.

User Response

  • Check whether the database instance supports the specified data format.

  • Check whether the special database parameter _UNICODE has the value YES.


-24985: ERR_MENOTFOUND - medium not found - SAP Documentation

Background documentation -24985: ERR_MENOTFOUND - medium not found

Explanation

You specified a backup template that is not defined.

User Response

  • Check whether you entered the name of the backup template correctly.

  • Use a different backup template.

  • Create a new backup template with this name.

  • If you cannot resolve the error, contact Support.


Activating or Deactivating the Automatic SQL Optimizer Statistics Update - SAP Documentation

Procedure documentation Activating or Deactivating the Automatic SQL Optimizer Statistics Update

The database system needs the SQL Optimizer statistics to determine the optimal search strategy for accessing data when executing complex SQL statements.

When you activate the automatic statistics update, the system updates the SQL Optimizer statistics for all tables whenever necessary.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for accessing an SQL session.

    More information: Glossary, Server Permission

  • The database is in the ONLINE operational state.

Procedure

  1. In the context menu of the database, choose Administration.

  2. Open the Overview tab page.

  3. To activate the automatic update, choose Activate automatic statistics update.

    To deactivate the automatic update, choose Deactivate automatic statistics update.

More Information

  • Analyzing SQL Statements (EXPLAIN)

  • Database Administration, SQL Optimizer Statistics

  • SAP Note 927882


-759: Include file produced by user - SAP Documentation

Background documentation -759: Include file produced by user

Explanation

During the precompiler run, the declare section is newly created by a CONNECT of the user <user>.

User Response

Check whether the table of this user is the correct one.


-10326: No data found for stream (<number>) - SAP Documentation

Background documentation -10326: No data found for stream (<number>)

Explanation

No data was transferred for a liveCache stream (output).

User Response

Check the database procedure.


SAP Library - Python Manual

Start Level 1 Node: Python Manual Python Manual End Level 1 Node: Python Manual
Start Level 2 Node: Installing the Python Modules Installing the Python Modules End Level 2 Node: Installing the Python Modules
Start Level 2 Node: sdb.dbapi Module sdb.dbapi Module End Level 2 Node: sdb.dbapi Module
Start Level 3 Node: connect Method (sdb.dbapi Module) connect Method (sdb.dbapi Module) End Level 3 Node: connect Method (sdb.dbapi Module)
Start Level 3 Node: Converting Date and Time Values Converting Date and Time Values End Level 3 Node: Converting Date and Time Values
Start Level 3 Node: Converting LOB Values Converting LOB Values End Level 3 Node: Converting LOB Values
Start Level 2 Node: sdb.sql Module sdb.sql Module End Level 2 Node: sdb.sql Module
Start Level 3 Node: connect Method (sdb.sql Module) connect Method (sdb.sql Module) End Level 3 Node: connect Method (sdb.sql Module)
Start Level 3 Node: SapDB_Session Class (sdb.sql Module) SapDB_Session Class (sdb.sql Module) End Level 3 Node: SapDB_Session Class (sdb.sql Module)
Start Level 4 Node: sql Method (SapDB_Session Class) sql Method (SapDB_Session Class) End Level 4 Node: sql Method (SapDB_Session Class)
Start Level 4 Node: sqlX Method (SapDB_Session Class) sqlX Method (SapDB_Session Class) End Level 4 Node: sqlX Method (SapDB_Session Class)
Start Level 4 Node: prepare Method (SapDB_Session Class) prepare Method (SapDB_Session Class) End Level 4 Node: prepare Method (SapDB_Session Class)
Start Level 4 Node: release Method (SapDB_Session Class) release Method (SapDB_Session Class) End Level 4 Node: release Method (SapDB_Session Class)
Start Level 4 Node: commit Method (SapDB_Session Class) commit Method (SapDB_Session Class) End Level 4 Node: commit Method (SapDB_Session Class)
Start Level 4 Node: rollback Method (SapDB_Session Class) rollback Method (SapDB_Session Class) End Level 4 Node: rollback Method (SapDB_Session Class)
Start Level 3 Node: SapDB_ResultSet Class (sdb.sql Module) SapDB_ResultSet Class (sdb.sql Module) End Level 3 Node: SapDB_ResultSet Class (sdb.sql Module)
Start Level 4 Node: next Method (SapDB_ResultSet Class) next Method (SapDB_ResultSet Class) End Level 4 Node: next Method (SapDB_ResultSet Class)
Start Level 4 Node: previous Method (SapDB_ResultSet Class) previous Method (SapDB_ResultSet Class) End Level 4 Node: previous Method (SapDB_ResultSet Class)
Start Level 4 Node: relative Method (SapDB_ResultSet Class) relative Method (SapDB_ResultSet Class) End Level 4 Node: relative Method (SapDB_ResultSet Class)
Start Level 4 Node: absolute Method (SapDB_ResultSet Class) absolute Method (SapDB_ResultSet Class) End Level 4 Node: absolute Method (SapDB_ResultSet Class)
Start Level 4 Node: first Method (SapDB_ResultSet Class) first Method (SapDB_ResultSet Class) End Level 4 Node: first Method (SapDB_ResultSet Class)
Start Level 4 Node: last Method (SapDB_ResultSet Class) last Method (SapDB_ResultSet Class) End Level 4 Node: last Method (SapDB_ResultSet Class)
Start Level 4 Node: current Method (SapDB_ResultSet Class) current Method (SapDB_ResultSet Class) End Level 4 Node: current Method (SapDB_ResultSet Class)
Start Level 4 Node: __getitem__ Method (SapDB_ResultSet Class) __getitem__ Method (SapDB_ResultSet Class) End Level 4 Node: __getitem__ Method (SapDB_ResultSet Class)
Start Level 4 Node: getDescription Method (SapDB_ResultSet Class) getDescription Method (SapDB_ResultSet Class) End Level 4 Node: getDescription Method (SapDB_ResultSet Class)
Start Level 3 Node: SapDB_Prepared Class (sdb.sql Module) SapDB_Prepared Class (sdb.sql Module) End Level 3 Node: SapDB_Prepared Class (sdb.sql Module)
Start Level 4 Node: execute Method (SapDB_Prepared Class) execute Method (SapDB_Prepared Class) End Level 4 Node: execute Method (SapDB_Prepared Class)
Start Level 4 Node: getDescription Method (SapDB_Prepared Class) getDescription Method (SapDB_Prepared Class) End Level 4 Node: getDescription Method (SapDB_Prepared Class)
Start Level 3 Node: SapDB_Result Class (sdb.sql Module) SapDB_Result Class (sdb.sql Module) End Level 3 Node: SapDB_Result Class (sdb.sql Module)
Start Level 4 Node: getResultSet Method (SapDB_Result Class) getResultSet Method (SapDB_Result Class) End Level 4 Node: getResultSet Method (SapDB_Result Class)
Start Level 4 Node: getOutputParameters Method (SapDB_Result Class) getOutputParameters Method (SapDB_Result Class) End Level 4 Node: getOutputParameters Method (SapDB_Result Class)
Start Level 4 Node: getRowsAffected Method (SapDB_Result Class) getRowsAffected Method (SapDB_Result Class) End Level 4 Node: getRowsAffected Method (SapDB_Result Class)
Start Level 4 Node: getLastSerial Method (SapDB_Result Class) getLastSerial Method (SapDB_Result Class) End Level 4 Node: getLastSerial Method (SapDB_Result Class)
Start Level 4 Node: getFirstSerial Method (SapDB_Result Class) getFirstSerial Method (SapDB_Result Class) End Level 4 Node: getFirstSerial Method (SapDB_Result Class)
Start Level 3 Node: SapDB_LongReader Class (sdb.sql Module) SapDB_LongReader Class (sdb.sql Module) End Level 3 Node: SapDB_LongReader Class (sdb.sql Module)
Start Level 4 Node: read Method (SapDB_LongReader Class) read Method (SapDB_LongReader Class) End Level 4 Node: read Method (SapDB_LongReader Class)
Start Level 3 Node: Error Handling for the sdb.sql Module Error Handling for the sdb.sql Module End Level 3 Node: Error Handling for the sdb.sql Module
Start Level 4 Node: CommunicationError Class (sdb.sql Module) CommunicationError Class (sdb.sql Module) End Level 4 Node: CommunicationError Class (sdb.sql Module)
Start Level 4 Node: SQLError Class (sdb.sql Module) SQLError Class (sdb.sql Module) End Level 4 Node: SQLError Class (sdb.sql Module)
Start Level 3 Node: Possible SQL Results Possible SQL Results End Level 3 Node: Possible SQL Results
Start Level 3 Node: Examples for the sdb.sql Module Examples for the sdb.sql Module End Level 3 Node: Examples for the sdb.sql Module
Start Level 4 Node: Example: Establishing and Closing the Connection to a Database Example: Establishing and Closing the Connection to a Database End Level 4 Node: Example: Establishing and Closing the Connection to a Database
Start Level 4 Node: Example: Executing an SQL Statement and Reading the Result Set Example: Executing an SQL Statement and Reading the Result Set End Level 4 Node: Example: Executing an SQL Statement and Reading the Result Set
Start Level 4 Node: Example: Executing an SQL Statement and Navigating in the Result Example: Executing an SQL Statement and Navigating in the Result End Level 4 Node: Example: Executing an SQL Statement and Navigating in the Result
Start Level 4 Node: Example: Executing an SQL Statement and Reading the Result Set w Example: Executing an SQL Statement and Reading the Result Set w End Level 4 Node: Example: Executing an SQL Statement and Reading the Result Set w
Start Level 4 Node: Example: Executing an SQL Statement and Querying Information Abo Example: Executing an SQL Statement and Querying Information Abo End Level 4 Node: Example: Executing an SQL Statement and Querying Information Abo
Start Level 4 Node: Example: Executing an SQL Statement Multiple Times with Differen Example: Executing an SQL Statement Multiple Times with Differen End Level 4 Node: Example: Executing an SQL Statement Multiple Times with Differen
Start Level 4 Node: Example: Executing SQL Statements and Handling Errors Example: Executing SQL Statements and Handling Errors End Level 4 Node: Example: Executing SQL Statements and Handling Errors


Example of a Parameter File for the SAP MaxDB Adapter Program - SAP Documentation

Background documentation Example of a Parameter File for the SAP MaxDB Adapter Program

Using the following example and adjusting it to your needs, you can simplify the way you create the parameter file for the SAP MaxDB adapter program. If you do not want a certain parameter to be set by the parameter file, you must invalidate or delete the relevant keyword.

Note Note

The parameter file created in the following is named backintmaxdbconfig.par in the Example of a Configuration File for Backint for SAP MaxDB.

End of the note.
Contents of File

STAGING AREA: D:\TEMP\STAGE1 1 GB

STAGING AREA: E:\TEMP\STAGE2 1024 MB

STAGING AREA: F:\TEMP\STAGE3 1048576 KB

STAGING AREA: G:\TEMP\STAGE4 1073741824

FILES PER BACKINT CALL: 2

BACKINT: "C:\Program Files\BackupTool\BIN\backint.exe"

PARAMETERFILE OF BACKINT: C:\BackupTool\CONF\backintoraconfig.utl

HISTORY FILE: C:\SAPDB\BackintHistory

INPUTFILE FOR BACKINT: C:\TEMP\backint4Oracle.in

OUTPUTFILE FOR BACKINT: C:\TEMP\backint4Oracle.out

ERRORFILE FOR BACKINT: C:\TEMP\backint4Oracle.err

MAXIMAL DELAY OF BACKINT CALL: 30

Parameters
Keyword | Example value/s | Description
STAGING AREA: | D:\TEMP\STAGE1 1 GB E:\TEMP\STAGE2 1024 MB F:\TEMP\STAGE3 1048576 KB G:\TEMP\STAGE4 1073741824 | When configured in this way, the adapter program can write or read in or from a maximum number of four pipes concurrently. The temporary files created can be one gigabyte in size, providing that the end of the pipe is not reached.
FILES PER BACKINT CALL: | 2 | As soon as two of the four temporary files have been completely created, they are saved by calling the Backint for Oracle program.
BACKINT: | "C:\Program Files\BackupTool\BIN\backint.exe" | The absolute path of the Backint for Oracle program is: "C:\Program Files\BackupTool\BIN\backint.exe" If the path contains a space, place double quotation marks around the space.
PARAMETERFILE OF BACKINT: | C:\BackupTool\CONF\backint oraconfig.utl | The absolute path of the configuration file for the Backint for Oracle program is: C:\BackupTool\CONF\backintoraconfig.utl.
HISTORY FILE: | C:\SAPDB\BackintHistory | The adapter program stores the backup history at the completion of each backup under the path C:\SAPDB\BackintHistory and saves the history by calling the Backint for Oracle program again.
INPUTFILE FOR BACKINT: | C:\TEMP\backint4Oracle.in | Standard input for Backint for Oracle: C:\TEMP\backint4Oracle.in
OUTPUTFILE FOR BACKINT: | C:\TEMP\backint4Oracle.out | Standard output for Backint for Oracle: C:\TEMP\backint4Oracle.out
ERRORFILE FOR BACKINT: | C:\TEMP\backint4Oracle.err | Standard error output for Backint for Oracle: C:\TEMP\backint4Oracle.err
MAXIMAL DELAY OF BACKINT CALL: | 30 | If the temporary files are created at different speeds and one temporary file is already complete, the adapter program waits a maximum of 30 seconds for one of the temporary files to be fully created. If none of the other files is completed within 30 seconds, the existing temporary file is backed up using Backint for Oracle.

More Information

Creating the Parameter File for the SAP MaxDB Adapter Program


-1014: Too many source tables - SAP Documentation

Background documentation -1014: Too many source tables

Explanation

The number of underlying tables of the FROM clause of the SQL statement exceeds 16. If a join view table was specified in the FROM clause, the number of base tables underlying the join view table is considered for the calculation.

User Response

You can split the SQL statement into two successive SQL statements.It is also possible to bypass this restriction by using a QUERY expression in the FROM clause.


Operating (liveCache) - SAP Documentation

Procedure documentation Operating (liveCache)

In the Properties user menu of the DBA Cockpit you can, among other things, start, stop or initialize an SAP liveCache database, or register SAP liveCache applications.

Note Note

When a database user performs administration functions, administration is locked for all other database users.

End of the note.

The starting, stopping or initializing of an SAP liveCache database is performed using the Database Manager CLI.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose Properties

Result

You can choose the following functions in the Operating area using Display Operating Actions:

  • Starting liveCache

  • Stopping liveCache

  • Registering LCApps

You can initialize the liveCache.

More Information

Operating Logs

Note Note

The Start liveCache and Stop liveCache functions in the Operating (liveCache) menu are not available for an SAP liveCache OneDB.

End of the note.


-25401: Error reading system table SYSLOADER.CODEPAGE - SAP Documentation

Background documentation -25401: Error reading system table SYSLOADER.CODEPAGE

Explanation

You have executed the SET CODEPAGE command. The system table SYSLOADER.CODEPAGE could not be read.

User Response

The Loader reads the CODEPAGE information directly from the CODEPAGE file. For this reason no user action is required.


-25508: File <file_name> is not encoded as <encoding> - SAP Documentation

Background documentation -25508: File <file_name> is not encoded as <encoding>

Explanation

The encoding of the file specified in the Loader command and the actual encoding of the file are not the same.

User Response

Specify the correct/no file encoding in the Loader command.If you do not specify any encoding, the Loader determines the correct encoding based on the file content.


LOGQUEUESTATISTICS - SAP Documentation

Example documentation LOGQUEUESTATISTICS

Use of the system tableSYSINFO.LOGQUEUESTATISTICS

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table LOGQUEUESTATISTICS to determine the following database information, among other things:

  • ID of the log queue

    SELECT queueid

    FROM SYSINFO.LOGQUEUESTATISTICS

  • Number of wait situations due to log queue overflow

    SELECT queueoverflowcount

    FROM SYSINFO.LOGQUEUESTATISTICS


25607: Value for usage <value>% too less to fit one row into one database page. Ignoring value. - SAP Documentation

Background documentation 25607: Value for usage <value>% too less to fit one row into one database page. Ignoring value.

Explanation

A warning appears when you use the Loader command for importing data. The table to be imported has been defined in the database in such a way that a single data record is greater than the value specified for USAGE. For this reason, the Loader ignores the USAGE value. This warning does not cause the command to terminate.

User Response

No user action required.


-2008: Data area too small - SAP Documentation

Background documentation -2008: Data area too small

Explanation

  1. It was not possible to restore a database instance because the database instance that is to be restored is bigger than the target database instance specified for the restore operation.

  2. The installation of a database instance is not possible because not enough space was defined for the storage of the data.

User Response

  1. Increase the volume size of the target database instance.

  2. Increase it to a volume that is greater than 2000 pages.

More Information

Database Studio, Adding Data Volume


-28103: Too many index prefix fields - SAP Documentation

Background documentation -28103: Too many index prefix fields

Explanation

A prefix was specified for a prefix-partitioned index of a persistent object which is larger than the object.

User Response

Check if the prefix is not larger than the object.


Administration - SAP Documentation

Background documentation Administration

The following user menus are available in the DBA Cockpit:

  • Parameters

  • Parameter History

More Information

DBA Cockpit: SAP MaxDB


Changing Database Properties - SAP Documentation

Procedure documentation Changing Database Properties

You can change most database properties.

Procedure

Important Database Properties

Property

Restrictions

Modifiable

More Information

Database name

Conventions for Database Names

No

-

Database System Administrator: Name and password

Conventions for User Names and Passwords

Name: No

Password: Yes

Managing Users

Data area (data volumes): Size (=database size), directory, automatic extension

Log area (log volumes): Size and directory

General database parameters MaxDataVolumes and MaxLogVolumes

More information: Planning Databases

Yes

  • Changing the Database Size

  • Database Parameters

Working memory used by the database

General database parameter CacheMemorySize

Note that this parameter only roughly determines the size of the working memory used by the database. There are database functions which also need a certain amount of working memory, but whose memory consumption is not configured with this parameter.

Yes

  • General Database Parameters

  • Working Memory Areas

Number of CPUs

General database parameter MaxCPUs

Yes

General Database Parameters

Maximum number of parallel database sessions

General database parameter MaxUserTasks

Yes

General Database Parameters

Maximum number of locks

General database parameter MaxSQLLocks

Yes

Configuring Locks for Database Objects

Automatic update of the SQL optimizer statistics

For SAP systems, see SAP note 927882.

Yes

Automating Administration Tasks

Automatic log backup

-

Yes

Automating Administration Tasks

Automatic database start

Only available on Microsoft Windows

Yes

Activating Automatic Database Start

Log settings

-

Yes

Configuring Database Transaction Logging


-28811: Hash key not found - SAP Documentation

Background documentation -28811: Hash key not found

Explanation

During key-access no object was found with a suitable key.

User Response

Internal error code.


-10503: The operation is not allowed for result set type FORWARD_ONLY - SAP Documentation

Background documentation -10503: The operation is not allowed for result set type FORWARD_ONLY

Explanation

The method that was called cannot be executed, because the result table type is FORWARD_ONLY. Position specifications for result tables are only permitted for result tables whose type is SCROLL_SENSITIVE or SCROLL_INSENSITIVE.

User Response

Use the SQLDBC_PreparedStatement::setResultSetType method to change the result table type to SCROLL_SENSITIVE or SCROLL_INSENSITIVE.


Database Console - SAP Documentation

Procedure documentation Database Console

In the Tools user menu of the DBA Cockpit you can find, among other things, a display of the information for runtime analysis of database bottlenecks detected when using the XCONS database tool (database console).

Procedure

  1. Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Tools [image] Database Console [image] .

  2. Select the required command. There are commands available for obtaining information from a wide range of different areas, for example, disk accesses, process analysis or memory management.

  3. Choose [image] Database Console [image] Execute Command [image] .

Result

The required information is retrieved from the database console and immediately displayed on the screen. You can save the results as a local file.

SYSMON Tables

If the database is in the ONLINE operational state, you can display the SYSMON tables. To do so, choose [image] Goto [image] SYSMON Table Display [image] .

Example Example

Displaying information about critical sections:

To do this, choose [image] Goto [image] SYSMON Table Display [image] . Enter table name SYSMON_REGION.

End of the example.

More Information

XCONS documentation

Utilities, XCONS Options for Displaying Information about the Database


-719: Unknown LOCALSYSUSER.SYSPROFILE table - SAP Documentation

Background documentation -719: Unknown LOCALSYSUSER.SYSPROFILE table

Explanation

When enabling the PROFILE option, no SYSPROFILE table could be found.

User Response

The LOCALSYSUSER must create this table, or the application program must be started without the PROFILE option.


-10306: Negative buffer length for parameter (<number>) used - SAP Documentation

Background documentation -10306: Negative buffer length for parameter (<number>) used

Explanation

The method that was called could not copy any parameters to the database session, because the length specified (LengthIndicator) for the program variables, which was linked to parameter <numberY, contains a negative value

User Action

Enter a positive length value which corresponds to the length of the program variable value.


Backup I/O - SAP Documentation

Procedure documentation Backup I/O

In the I/O Operations user menu of the DBA Cockpit you can find, among other things, a display of read and write accesses during a backup.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] I/O Operations [image] Backup I/O [image] .

You can refresh the display. To do so, choose [image] Edit [image] Refresh [image] .

You can automate this function by choosing [image] Edit [image] Automatic Refresh On/Off [image] . The display for the function for the automatic refresh is above the header line of the table (green symbol: on, red symbol: off). In the field next to this, you can specify the time interval with which the automatic refresh should take place. The default value is 5 seconds.

Result

The system displays the number of read and write accesses on the individual volumes caused by a currently running backup action. An access corresponds to an I/O operation. This includes multiple pages, though the number can vary.

You can see the actual number of backed up pages in the column Saved Pages (Backup).

This means that you can use the Backup I/O display to monitor the asynchronous I/O operations caused by backups. You can refresh the display during a running backup, and in this way obtain a display of the progress of the backup run.

More Information

Executing Performance Analysis in CCMS


-25018: Error changing log file owner to current user '<user_name>' (Error: '<error_text>') - SAP Documentation

Background documentation -25018: Error changing log file owner to current user '<user_name>' (Error: '<error_text>')

Explanation

This error can only occur when you execute the SET LOGOWNER <user_name> command on UNIX or Linux operating systems.

User Response

Use the error text to determine why the modification failed. Fix the error and execute the statement again.


-857: Missing SERVERDB - SAP Documentation

Background documentation -857: Missing SERVERDB

Explanation

No SET SERVERDB statement was issued for the second or any following database connection.

User Response

Specify SET SERVERDB before the CONNECT statement or in the XUSER file.


-7065: SUBTRANS COMMIT/ROLLBACK not allowed without SUBTRANS BEGIN - SAP Documentation

Background documentation -7065: SUBTRANS COMMIT/ROLLBACK not allowed without SUBTRANS BEGIN

Explanation

A SUBTRANS BEGIN statement must have been called for each subtransaction that is to be closed.

User ReEsponse

Check the database application for the dynamic behavior of the SUBTRANS statements.


-28602: Packet size does not match object size - SAP Documentation

Background documentation -28602: Packet size does not match object size

Explanation

This error only occurs if you are using non-shared-memory communication. The specified object size does not match the size of the received package.

User response

Contact your local support.


-3002: Invalid datatype - SAP Documentation

Background documentation -3002: Invalid datatype

Explanation

The specified data type is unknown in the current SQL mode.

User Response

Use one of the permitted data types.


-5013: Missing update column - SAP Documentation

Background documentation -5013: Missing update column

Explanation

The attempt was made to update at least one column value of an updateable join view table column using an UPDATE statement. This column value can only be updated together with other column values. At least one of the required column values is missing in the UPDATE statement.

User Response

Insert the missing column values into the UPDATE statement or execute UPDATE statements for the underlying table(s) of the updateable join view table.


Database Studio Preferences: User Management - SAP Documentation

Background documentation Database Studio Preferences: User Management

This section contains information about the internal local user management, which was created when you first started Database Studio.

Do not change any settings in this section.


-879: Unknown precompiler statement - SAP Documentation

Background documentation -879: Unknown precompiler statement

Explanation

The precompiler statement is unknown or incorrect.

User Response

Ignore the precompiler statement or correct it.


Schemas - SAP Documentation

Procedure documentation Schemas

All objects (instance classes) that are created in an SAP liveCache database are assigned to a liveCache schema. A liveCache schema is a combination of classes for a namespace in the OMS intermediate layer.

The Performance user menu of the DBA Cockpit contains, among other things, a display of the liveCache schemas.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] Schemas [image] .

Result

You can specify additional details about the size of the liveCache schema in relationships to the application (plan version).

More Information

Class Container


-7016: Parameter spec not allowed in this context - SAP Documentation

Background documentation -7016: Parameter spec not allowed in this context

Explanation

  1. The attempt was made to specify a parameter in a selected column.

  2. Within the search condition, there was a comparison predicate of the form <parameter_spec> <comp_op> <parameter_spec>.

  3. A comparison predicate, IN predicate or quantified predicate specifies a comparison between a parameter and a subquery.

User Response

  1. Replace the parameter with a constant.

  2. Check such a condition in the application. If this is not possible, replace one of the two parameters with a constant, a column name, or an expression which does not solely contain parameters.

  3. Replace the parameter with a constant or integrate it into a function (such as SUBSTR) so that the data type of the parameter becomes clear.


-24946: ERR_TOMANYPARAM - too many parameters - SAP Documentation

Background documentation -24946: ERR_TOMANYPARAM - too many parameters

Explanation

The DBM command has too many parameters.

User Response

Correct your entry according to the documentation for DBM commands, and execute the statement again.


Tables/Views/Synonyms - SAP Documentation

Procedure documentation Tables/Views/Synonyms

The Space user menu in the DBA Cockpit shows you, among other things, information about a specified database table, view table, or their synonyms.

Procedure

  1. Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Tables/Views/Synonyms [image] .

  2. Enter the schema of the database object and the name of the database object.

    When you specify the schema or the name, you can also enter * as a wildcard for any character string (T0* for all table names that start with T0, for example).

    If you begin the name of a database object with a ", the subsequent letters are not changed into all caps, but instead are used for the query as you have entered them.

  3. Decide which database objects you want to display:

    Tables, Views and Synonyms

    Only Tables

    Only Tables with a Data Store Clustered on the Database Side

    Only Views

    Only Synonyms

  4. Choose [image] Database Object Information [image] Display [image] .

  5. If necessary, mark the required object in the list provided for any additional analysis.

  6. Choose Display Tables/View Info.

Result

You can choose from the following displays:

  • Properties: Type, access rights, date created and changed, date of the last run to determine table consistency (for tables only), default sample to update optimizer statistics (tables only), and specifications about cost saving by clustering of tables (only for tables)

    You can check the database structures (for a single table of the database or SAP liveCache system).

    You can change the default value for the sample size to update the SQL optimizer statistics of a table (in rows or percent). If this value is 0, a warning message appears stating that the update of optimizer statistics using the sample size is deactivated.

  • Definition: Definition of the object in the database instance (this is not the object definition from the ABAP Dictionary but the object definition according to the system tables of the database system).

    If the object has a virtual key, it is displayed here. You will find further information about the data store clustered on the database side in SAP Note 1040431.

  • Indexes: Display of all indexes (inactive, unused, bad indexes) that were defined for this object. Among other things, you can activate or deactivate indexes or restore or reset the usage counter.

  • CREATE statement (only for view tables): CREATE VIEW statement that was used to create the view table

  • Table key (only for view tables): Primary key for tables that form the basis for the View table.

  • Optimizer statistics: The latest values calculated for the SQL optimizer statistics, specifying the execution time and the sample size of the update run.

    You can have the system display whether the SQL optimizer statistics need to be updated (Requested Updates). You can update the statistics for this table (Update (Standard)) or selected columns from this table (Update (Selected Columns)) with any sample size (in rows or percent).

  • Exact Sizes: Exact size of tables and indexes

  • Data Store (only for data store clustered on the database side): Information about clustering of the object

    You will find further information about the data store clustered on the database side in SAP Note 1040431.

If you have opted to have a synonym displayed, you will receive a display where the synonym refers to the object (table or view table). You can jump to the display of the corresponding object.

Choose [image] Table/View [image] Optimizer-Relevant Information [image] for a summary of those displays mentioned above that are relevant to the SQL optimizer.

More Information

  • Indexes

  • DBA Planning Calendar,

    Scheduling Updates of the SQL Optimizer Statistics

    Scheduling a Database Structure Check

    Planning Concept

  • Database Studio, Updating SQL Optimizer Statistics

  • Database Administration

    SQL Optimizer Statistics

    Checking Database Structures


-25249: Invalid Isolation Level specification: possible values are: 0, 1, 10, 15, 2, 20, 3, 30 - SAP Documentation

Background documentation -25249: Invalid Isolation Level specification: possible values are: 0, 1, 10, 15, 2, 20, 3, 30

Explanation

In the command to log on a database user to the database, you have specified an isolation level that is not allowed. The logon was not executed.

User Response

Correct the entries for the isolation level in the command and re-execute the command.


-11100: Unknown error - SAP Documentation

Background documentation -11100: Unknown error

Explanation

An error has occurred that the system cannot more closely describe.

User Response

Send the PHP script that caused the error to the MaxDB mailing list.


-913: Lock request timeout - SAP Documentation

Background documentation -913: Lock request timeout

Explanation

The lock request or an implicit lock conflicts with the locks of another user. The maximum waiting time for being granted the lock has elapsed (special database parameter RequestTimeout).

User Response

In some cases, the error message contains a more detailed description of the error. The lock request can be reissued. To avoid possible deadlock situations, it is advisable to roll back the transaction using the ROLLBACK statement.


-25331: This is a restricted statement, user must be SYSDBA - SAP Documentation

Background documentation -25331: This is a restricted statement, user must be SYSDBA

Explanation

The Loader commands TABLEEXTRACT ALL, TABLELOAD ALL, CATALOGEXTRACT ALL, and CATALOGLOAD ALL affect the whole database catalog and can therefore only be executed by a data base system administrator.

User Response

Call the Loader using the correct user ID or execute a USE USER command with the correct user ID beforehand.


INTTORAW(a) - SAP Documentation

Function documentation INTTORAW(a)

INTTORAW(a) is a conversion function.

The argument a of the function must be an integer expression. The expression a is converted using the code attribute BYTE to a character string that represents the corresponding number. At the same time, the 8-byte representation of the integer is converted to a value of data type CHAR(8) BYTE.

INTTORAW(a)
a | Result of the INTTORAW(a) function
a is a NULL value | NULL value
a is a special NULL value | Error message

More Information

Integer (integer)

Data Type (data_type)


Displaying Information About the Data Area - SAP Documentation

Procedure documentation Displaying Information About the Data Area

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Data Area tab page.

    Data Area: Information

    Property

    Description

    General

    Current and maximum configurable number of data volumes

    More information: Adding Data Volumes

    Usage

    Used space and free space in the data area

    Parameters

    Database parameters relevant for data volumes

    More information: Database Administration, Database Parameters

    Data Volumes

    Configured data volumes

More Information

Database Administration, Monitoring Databases

Concepts of the Database System, Data Area


Deleting Indexes - SAP Documentation

Procedure documentation Deleting Indexes

Prerequisites

  • You are logged on to the database as a database user.

  • You are the table owner or have INDEX privilege for the table.

    More information: SQL Reference Manual, Privilege Specification (privilege_specification)

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the table to which the index belongs.

  2. In the context menu of the table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Open the Indexes tab page.

  5. In the context menu of the index, choose Remove Index.

More Information

SQL Reference Manual, DROP INDEX Statement (drop_index_statement)


Configuring Locks for Database Objects - SAP Documentation

Procedure documentation Configuring Locks for Database Objects

Multiple transactions can access the same database object, such as a table, at the same time. To isolate the transactions each one another, the database system sets locks for database objects.

Lock Types
Name | System Name | Description | Objects that Can Be Locked
Shared lock | SHARE LOCK | Other transactions retain read access to the database object and can continue to set shared locks for this database object. | Tables, rows, database catalog
Exclusive lock | EXCLUSIVE LOCK | Other transactions have neither read nor write access to the database object. All SQL statements that change data, such as INSERT, UPDATE and DELETE statements, always request an exclusive lock. | Tables, rows, database catalog
Optimistic lock | - | Keeps track of changes to a database object Other transactions can continue to set shared, exclusive or optimistic locks for the database object. | Rows

More information: Concepts of the Database System, Locks

Procedure

Configuring the Isolation Level

The isolation level defines in what situations the database system uses which lock type. This determines the degree to which transactions can run in parallel and the phenomena that may occur. Depending on the isolation level, the database system then requests the necessary locks as the SQL statements are being processed.

You can specify the isolation level when you open a database session or during a database session for individual SQL statements. If you do not specify an isolation level, the database system uses the default value.

More information:

Concepts of the Database Systems, Isolation Level

Database Studio,

  • Configuring Database Studio

  • SQL Editor

SQL Reference Manual,

  • CONNECT Statement (connect_statement)

  • LOCK Option (lock_option)

Loader,

  • SET Command

  • USE USER Command

  • EXPORT COLUMNS Command

Configuring the Maximum Number of Locks

With the general database parameter MaxSQLLocks you configure the maximum allowable number of locks.

More information: Database Administration, General Database Parameters

Configuring Lock Escalation

If a transaction requests too many row locks (more than 50% of the maximum number of locks that the system can set), the database system attempts to set table locks instead, until the number of locks drops below 20% of the maximum number of locks. This process is called lock escalation.

You can configure lock escalation using the special database parameter RowLocksPerTransactionThreshold.

More information: Database Administration, Special Database Parameters

Setting Timeouts for Locks

With the special database parameter RequestTimeout you configure the maximum amount of time that can elapse before the system releases a lock (timeout).

More information: Database Administration, Special Database Parameters

More Information

Analyzing Database Performance


-7069: Outer join with bushy trees not allowed - SAP Documentation

Background documentation -7069: Outer join with bushy trees not allowed

Explanation

An OUTER JOIN inidicator with bushy trees was used in the SQL statement. This is not allowed.

User Response

Use another SQL statement.


-24965: ERR_SYSLOGON - logon to system failed - SAP Documentation

Background documentation -24965: ERR_SYSLOGON - logon to system failed

Explanation

The DBM server could not log on to the operating system or the statement used requires it to be already logged on to the operating system.

User Response

Check you entries as well as the authorizations assigned to the respective user. Under Windows, the user must have the authorization logon as batch job. The current DBM server user must also have authorization to log on under a different user account.


-10604: SQL command contains output parameters - SAP Documentation

Background documentation -10604: SQL command contains output parameters

Explanation

The SQL statement that was transferred could not be executed, because it contains output parameters.

User Response

You cannot process output parameters using SQLDBC_Statement class methods. Use SQLDBC_PreparedStatement objects for SQL statements with output parameters (SELECT INTO or database procedure).


Setting DBM_TTO_SUCCESS and DBM_TTO_FAILURE - SAP Documentation

Background documentation Setting DBM_TTO_SUCCESS and DBM_TTO_FAILURE

Use Database Manager CLI to define the values for the environment variables DBM_TTO_SUCCESS and DBM_TTO_FAILURE.

You use the variable DBM_TTO_SUCCESS to define the period of time the Database Manager program waits for the backup tool to terminate the backup operation after the database kernel has terminated the backup operation. The default value for the system is 300 s. After this period the backup operation is terminated by Database Manager.

If you use Backint for SAP MaxDB, you use this definition to override the value of the parameter TIMEOUT_SUCCESS in the Backint for SAP MaxDB configuration file.

Use the variable DBM_TTO_FAILURE to define the period of time the Database Manager program waits for the backup tool to terminate after the database kernel has interrupted the backup operation due to an error. The default value for the system is 300 s. After this period the backup operation is terminated by Database Manager.

If you use Backint for SAP MaxDB, use this definition to override the value of the parameter TIMEOUT_FAILURE in the Backint for SAP MaxDB configuration file.

Structure

>dbmcli <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset <variable> <value>

Options
Option | Description
<variable> | Name of the environment variable Possible values are: DBM_TTO_SUCCESS | DBM_TTO_FAILURE
<value> | Value of the timeout in seconds


-24926: ERR_MEDIUMCHK: medium cannot be used with this external backup tool - SAP Documentation

Background documentation -24926: ERR_MEDIUMCHK: medium cannot be used with this external backup tool

Explanation

The backup template that was specified cannot be used with this backup tool.

User Response

  • Check the definition of your backup template.

  • If you cannot solve the problem, contact support.


Database Manager (CLI) - SAP Documentation

Procedure documentation Database Manager (CLI)

You can call the Database Manager CLI from the Tools user menu in the DBA Cockpit to perform certain database administration tasks.

Prerequisites

The Database Manager CLI should only be used by experts. To find out about the functions of the Database Manager CLI, read the Database Manager CLI documentation.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Tools [image] Database Manager (CLI) [image] .

  1. In the DBM command area, enter the required DBM command. The DBM options for calling the Database Manager CLI are not available here. The name of the database, the database computer, and the database user are implicitly transferred.

  2. Choose [image] Command [image] Execute [image] .

The Database Manager CLI program offers various operating modes. If you do not perform any other actions, you are working in session mode. The use of a session is mandatory in certain cases, if a successive command is to be made in a certain status that can only be created by a preceding command in the same session (for example, transactions). The command mode is only recommended for long-running commands.

To activate or deactivate session mode, choose Deactivate the DBM Session Mode or Activate the DBM Session Mode.

Result

The system executes the required DBM command.

More Information

Database Manager CLI, DBM Commands, DBM Options


-25: Duplicate secondary key - SAP Documentation

Background documentation -25: Duplicate secondary key

Explanation

There is already a table row with the specified secondary key. UNIQUE was specified for the secondary key.

User Response

To avoid a key value collision, correct the value of the key to be inserted in the SQL statement. The error message specifies the column or multiple-column index already containing the specified values.


DBM Operators: Creating, Editing and Deleting - SAP Documentation

Procedure documentation DBM Operators: Creating, Editing and Deleting

DBM operators manage databases. They can log on to the database in any operational state.

Note that DBM operators are not database users. They can neither change data in the database nor log on to query tools or the Loader.

Prerequisites

You are logged on to the database as a database system administrator or DBM operator with server authorization for managing DBM operators.

More information: Glossary, Server Permission

Procedure

This function has not been implemented in Database Studio yet. Use the corresponding DBM command instead.

More information:

  • Executing DBM Commands

  • Database Manager CLI, Overview of all DBM Commands

More Information

Database Administration, DBM Operators


-24974: ERR_XPSESSION - param session active - SAP Documentation

Background documentation -24974: ERR_XPSESSION - param session active

Explanation

If a parameter session is already active, you will not be able to start another session.

User Response

Check the sequence of your DBM commands. If necessary, terminate an existing parameter session using the statement param_commitsession or param_abortsession. Alternatively, you can also use the active parameter session to execute your command. If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support


HISTORYCLEANUPSTATISTICSRESET - SAP Documentation

Object documentation HISTORYCLEANUPSTATISTICSRESET

The system table SYSINFO.HISTORYCLEANUPSTATISTICSRESET contains details about the activities which have taken place since the last RESET ALL STATISTICS or RESET HISTORYCLEANUPSTATISTICS and which belong to tasks containing history information which is to be deleted.

Structure

HISTORYCLEANUPSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
TASKID | FIXED(10) | ID of the task
RESUMETASKCOUNT | FIXED(20) | Number of activations of this task
ALLOBJECTCOUNT | FIXED(20) | Number of objects deleted via this task
ALLROWCOUNT | FIXED(20) | Number of table lines deleted via this task
ALLINDEXCOUNT | FIXED(20) | Number of index entries deleted via this task
CLEANUPCOUNT | FIXED(20) | Number of history entries deleted via this task that are no longer required
CREATEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to CREATE objects
INSERTOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to INSERT objects
UPDATEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to UPDATE objects
DELETEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to DELETE objects
LOCKUPDATEOBJECTCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to UPDATE FOR LOCK objects
RELEASEOBJECTPAGECOUNT | FIXED(20) | Number of pages released due to deletion of the last object stored on them
RELEASECONTAINERPAGECOUNT | FIXED(20) | Number of pages released due to deletion of complete containers
CREATECONTAINERCOUNT | FIXED(20) | Number of history entries deleted via this task that pertain to CREATE containers
DROPCONTAINERCOUNT | FIXED(20) | Number of deleted containers
DROPTREECOUNT | FIXED(20) | Number of table or index trees deleted via this task

More Information

HISTORYCLEANUPSTATISTICS

Concepts of the Database System, How Databases Log Data Changes


-7073: Internal recreate failed with <name1>, <name2> - SAP Documentation

Background documentation -7073: Internal recreate failed with <name1>, <name2>

Explanation

A data definition statement failed due to an object which could not be recreated.

User Response

Contact Support.


-23050: Unknown error - SAP Documentation

Background documentation -23050: Unknown error

Explanation

An unknown error has occurred.

User Response

Contact Support.


Primary key - SAP Documentation

Background documentation Primary key

For some applications, it is useful to uniquely identify the rows in a table by one or more columns so that you can process them in a specified sequence, for example. You can do this by assigning a primary key. The column names that are to create the table key are represented by the keywords PRIMARY KEY. The input values of the key columns defined in this way must not be a NULL value.

You can use the primary key to insert rows in a table in the same way as you insert rows in a base table when no primary key is defined. However, the system outputs an error message if you attempt to insert an existing value into the primary key column a second time, since the uniqueness of the column is ensured by defining the primary key.

A primary key can consist of multiple columns. However, it is unusual for a key to be constructed from more than five columns, since this makes it difficult for users to enter unique values. The arrangement of the columns behind the keywords PRIMARY KEY defines the key sequence.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Primary Key

You can specify a primary key when you define the table or add it to an existing table at a later stage.

Simple Primary Key

You can define primary keys that refer to one table column only.

You can use the CREATE TABLE statement to define primary keys when you create a table.

CREATE TABLE hotel.person

(pno FIXED(6) PRIMARY KEY,

 name CHAR(20),

 city CHAR(20))

or

CREATE TABLE hotel.person

(pno FIXED(6),

 name CHAR(20),

 city CHAR(20),

PRIMARY KEY (pno))

Both statements allows to uniquely identify the rows in the person table on the basis of the person number pno.

See also: SQL Reference Manual, CREATE TABLE Statement (create_table_statement)

You can use the ALTER TABLE statement to add primary keys to existing tables.

  1. Delete the person table.

    DROP TABLE hotel.person

  2. Define the person table as illustrated below:

    CREATE TABLE hotel.person

    (pno FIXED(6),

    name CHAR(20),

     city CHAR(20))

  3. Add a primary key:

    ALTER TABLE hotel.person ADD PRIMARY KEY (pno)

It must be possible to uniquely identify the rows in the person table on the basis of the person number.

Primary Key in Several Columns

You can define primary keys across several columns of a table.

You can use the ALTER TABLE statement to add primary keys to existing tables.

  1. Delete the person table.

    DROP TABLE hotel.person

  2. Define the person table as illustrated below:

    CREATE TABLE hotel.person

    (pno FIXED(6),

    name CHAR(20),

     city CHAR(20))

  3. Add a primary key:

    ALTER TABLE hotel.person ADD PRIMARY KEY (pno,name)

It must be possible to uniquely identify the rows in the person table on the basis of the person number and name.

See also: SQL Reference Manual, ALTER TABLE Statement (alter_table_statement), ADD Definition (add_definition)

Changing a Primary Key

You can use the ALTER TABLE statement to change existing primary keys.

ALTER TABLE hotel.person ALTER PRIMARY KEY (pno)

It must be possible to uniquely identify the rows in the person table on the basis of the person number.

See also: SQL Reference Manual, ALTER Definition (alter_definition)

Deleting a Primary Key

You can use the ALTER TABLE statement to delete primary keys.

ALTER TABLE hotel.person DROP PRIMARY KEY

See also: SQL Reference Manual, DROP Definition (drop_definition)

More Information

More examples for Data Definition


ADO.NET Interface - SAP Documentation

Background documentation ADO.NET Interface

ADO.NET is part of the Microsoft .NET Framework. With the SAP MaxDB ADO.NET interface you can access SAP MaxDB databases from the Microsoft ADO.NET Framework.

The ADO.NET Framework uses a data provider to integrate data sources. The SAP MaxDB ADO.NET data provider SDB.Data.dll fulfills all requirements of the .NET Framework. You use the .NET class library methods and SQL statements to create the link to a SAP MaxDB database and access data in the database.

The SAP MaxDB ADO.NET interface can be used on Microsoft Windows operating systems. It is part of the SAP MaxDB software. For more information about downloading the SAP MaxDB software and documentation, see the Glossary under Download.

More Information

Reference documentation for the SAP MaxDB ADO.NET data provider: http://maxdb.sap.com/documentation/ado/

Overview of the available documentation: Glossary, Documentation

Microsoft ADO.NET documentation: http://msdn.microsoft.com


-7009: NULL value in key column not allowed - SAP Documentation

Background documentation -7009: NULL value in key column not allowed

Explanation

Key columns must not be set to the NULL value.

User Response

Use non-NULL values for key columns.


FOREIGNKEYCOLUMNS - SAP Documentation

Example documentation FOREIGNKEYCOLUMNS

Use of the system table DOMAIN.FOREIGNKEYCOLUMNS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create referential constraints. Proceed as described in SQL Tutorial, Foreign Key Dependencies Between Tables.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table FOREIGNKEYCOLUMNS to determine the following database information, among other things:

  • All referential constraints in which the column CNO in the CUSTOMER table is the referenced column

    SELECT schemaname, tablename, columnname, fkeyname, rule

      FROM DOMAIN.FOREIGNKEYCOLUMNS

        WHERE reftablename = 'CUSTOMER'

        AND refcolumnname = 'CNO'

  • All referential constraints in which the column HNO in the RESERVATION table is the referencing column

    SELECT fkeyname, rule

      FROM DOMAIN.FOREIGNKEYCOLUMNS

        WHERE tablename = 'RESERVATION'

        AND columnname = 'HNO'

  • All referential constraints in which the referencing columns are from the RESERVATION table

    SELECT DISTINCT fkeyname, rule, refschemaname, reftablename

      FROM DOMAIN.FOREIGNKEYCOLUMNS

        WHERE tablename = 'RESERVATION'

More Information

All referential constraints: see FOREIGNKEYS


-1000: Too many lock requests - SAP Documentation

Background documentation -1000: Too many lock requests

Explanation

There are too many locks or lock requests.

User Request

You can try to repeat the SQL statement at a later time or cancel the transaction. If this situation occurs frequently, then the MaxSQLLocks general database parameter is too small and should be increased.


DBA Cockpit - SAP Documentation

Background documentation DBA Cockpit

DBA Cockpit is a tool for monitoring, managing and configuring SAP MaxDB databases.

Note Note

DBA Cockpit is only available in SAP systems.

End of the note.

More Information

DBA Cockpit: SAP MaxDB


-24984: ERR_MENOVALID - invalid medium definition - SAP Documentation

Background documentation -24984: ERR_MENOVALID - invalid medium definition

Explanation

The definition of the backup template is invalid.

User Response

  • Check your entries.

  • If you cannot resolve the error, contact Support.


Displaying Information About Database Activities - SAP Documentation

Procedure documentation Displaying Information About Database Activities

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Activities tab page.

    Database Activities

    Activity

    Description

    Commands

    Information on SQL statements executed:

    • The number of SQL statements is a direct indication of database activity.

    • The ratio of ROLLBACK actions to COMMIT actions may indicate logical inconsistencies in one or more SQL statements.

    More information: Concepts of the Database System, Data Definition, Query, and Manipulation

    I/O

    • In a physical read or write activity, the system accesses a volume directly.

    • If the system accesses a volume logically, it uses information from the working memory.

    More information: Concepts of the Database System, How Databases Store Data and Log Entries

    Lock

    • If the number of locks set is ore or less the same as the number of locks available, increase the value for the general database parameter MaxSQLLocks.

    • Escalations show the total number of rows that are locked by a single user session.

      If more than a certain percentage of the rows of a table is locked by a single user session, the database system locks the entire table. The database system calculates the threshold value for escalations from the value of the database parameter MaxSQLLocks.

    • If a locked object is requested again, a lock conflict occurs. If a large number of lock conflicts occurs in your system, this means that either a specific lock is being held too long or multiple users are frequently trying to access the same row. The values for lock owner and lock requester refer to the locks at the time the transaction is executed.

    More information: Concepts of the Database System, Locks

    Log Area

    • Log pages written with redo log entries

    • If the value of Log I/O Queue Overflow is greater than 0, increase the space available for log queues.

      You can configure the number of log queues with the special database parameter LogQueues and the size of the log queues with a separate database parameter, LogQueueSize.

    More information: Concepts of the Database System, How Databases Log Data Changes

    Scan and Sort

    Many table scans decrease performance.

    More information: Database Administration, Analyzing the Database Performance

More Information

Database Administration,

  • Monitoring Databases

  • Analyzing the Database Performance


-23061: Cannot analyze error - SAP Documentation

Background documentation -23061: Cannot analyze error

Explanation

An ODBC error has occurred that could not be analyzed.

User Response

Check which version of the ODBC driver you are using and install a more recent version if necessary.


-25229: Incorrect comparison operator in condition - SAP Documentation

Background documentation -25229: Incorrect comparison operator in condition

Explanation

The Loader command to export or import data contains an error.The relational operator specified in the condition is not supported. The compare_operator syntax rule lists possible relational operators.

User Response

Correct the file information and re-execute the command.


TABLES - SAP Documentation

Example documentation TABLES

Use of the system table DOMAIN.TABLES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table TABLES to determine the following database information, among other things:

  • All tables, view tables and synonyms that the current database user can select in the HOTELschema

    SELECT tablename, type

    FROM DOMAIN.TABLES

    WHERE schemaname = 'HOTEL'

    AND privileges LIKE '%SEL%'

  • All result tables of the current database user

    SELECT tablename

    FROM DOMAIN.TABLES

    WHERE type = 'RESULT'

  • All own tables for which the last update-statistics run was more than 30 days ago

    SELECT tablename, updstatdate

    FROM DOMAIN.TABLES

    WHERE updstatdate <= subdate(DATE,30)

  • Information about with which sample values an update-statistics run was performed on the CUSTOMER table

    SELECT sample_percent, sample_rows

    FROM DOMAIN.TABLES

    WHERE tablename = 'CUSTOMER'

  • Internal ID of the HOTEL table

    SELECT tableid

    FROM DOMAIN.TABLES

    WHERE tablename = 'HOTEL'

    If the table is a basis table, the internal ID can be used, for example, in queries on locks (see LOCKS).

More Information

Table definition: see COLUMNS

Primary key: COLUMNS

Synonym for a table: see SYNONYMS

Table privilege: see TABLEPRIVILEGES

Table in a view definition: see VIEWCOLUMNS

Constraint of a column or table: see CONSTRAINTS

Referential constraint: see FOREIGNKEYS

Index: see INDEXES

View table: VIEWS

Secondary key: see FOREIGNKEYCOLUMNS

Triggers: see TRIGGERS


backup_ext_ids_listnext - SAP Documentation

Background documentation backup_ext_ids_listnext

Use this command to display the external backup IDs for the individual data carriers of a backup.

In addition, the availability status, backup type, and time each backup was created are displayed for each data carrier.

Prerequisites

  • You have the server permission Backup or DBInfoRead.

  • You have retrieved the external backup ID for the backup tool (see: backup_ext_ids_get).

  • You have executed the DBM command for displaying the external backup IDs (see: backup_ext_ids_list). The keyword CONTINUE in the answer indicates that the whole file has not yet been transferred.

Structure

backup_ext_ids_listnext

Result

OK

END | CONTINUE

[<external_backup_id_line>]

[<external_backup_id_line>]

....

Values for the Reply Fields
Value | Description
END | All the information queried by the backup tool was transferred in full.
CONTINUE | Information on further backups is available. This was not transferred because of the limited size of the reply package. You can display this by repeating the above DBM command.
<external_backup_id_line> | Each line contains information on one of the backups registered in the backup tool. The individual columns are separated by a vertical slash (|).

In the event of errors, see Reply Format.

More Information

Glossary, Backup IDs


Data Model - SAP Documentation

Background documentation Data Model

See Database Design


-10808: Feature <feature> not implemented yet in module: <module> line: <line_number> - SAP Documentation

Background documentation -10808: Feature <feature> not implemented yet in module: <module> line: <line_number>

Explanation

The <feature> feature has not yet been implemented in the <module> module, row <line_number>.

User Response

Install the most up-to-date version of the software.


-884: Missing indicator variable - SAP Documentation

Background documentation -884: Missing indicator variable

Explanation

The database system allows NULL values for the variable. For this it requires an indicator variable.

User Response

In addition to the SQL variable you must specify an indicator variable. This specification is not necessary when it is ensured that null values will not occur.


FREEBLOCKMANAGERSECTIONS - SAP Documentation

Object documentation FREEBLOCKMANAGERSECTIONS

The system table SYSINFO.FREEBLOCKMANAGERSECTIONS contains information on sections in the free block management.

Structure

FREEBLOCKMANAGERSECTIONS
VOLUMEID | FIXED(5) | Identification of the data volume
SECTIONNUMBER | FIXED(10) | Section offset on the data volume
USABLEBLOCKCOUNT | FIXED(4) | Number of blocks in the section
FREEBLOCKCOUNT | FIXED(4) | Number of free blocks in the section
SHADOWBLOCKCOUNT | FIXED(4) | Number of shadow blocks in the section
BACKUPBLOCKCOUNT | FIXED(4) | Number of backup blocks in the section
COMPRESSION | CHAR(3) | Section is selected for cluster compression
CLUSTERBACKUP | CHAR(3) | Section is selected for clustered backup

More Information

FREEBLOCKMANAGERBLOCKSTATES

FREEBLOCKMANAGERSTATISTICS

FREEBLOCKMANAGERSTATISTICSRESET


-10331: Input stream callback buffer overflow for table id (<number>) , allowed <count1> bytes, written <count2> bytes - SAP Documentation

Background documentation -10331: Input stream callback buffer overflow for table id (<number>) , allowed <count1> bytes, written <count2> bytes

Explanation

After a callback procedure was called to process the liveCache stream (input), a memory overwrite (buffer overflow) was discovered.

User Response

Check the callback procedure.


-27018: Connection error - SAP Documentation

Background documentation -27018: Connection error

Explanation

An unspecified error occurred when an SQL statement was executed in liveCache.

User Response

Contact Support.


Log Partition - SAP Documentation

Background documentation Log Partition

To speed up the writing of log entries to the log area, you can divide the log area into several log partitions. Multiple log writer tasks can then write log entries in parallel to the different log partitions. One log partition can consist of one or multiple log volumes.

More Information

Concepts of the Database System, Log Area

Database Manager CLI, db_addvolume


medium_label - SAP Documentation

Background documentation medium_label

With this command you can display the information stored on a data carrier about the backup.

In particular, analyze the Returncode reply field, which contains a numeric value supplied by the kernel.

Prerequisites

  • You have the server permission Backup.

  • You have opened a database session (see: db_connect).

  • The database is in the ONLINE or ADMIN operational state.

Structure

medium_label <medium_name>

Options
Option | Description
<medium_name> | Name of the backup template from which information is to be read With backups for a group of parallel data carriers, you need to specify the name of the group.

Result

OK

...

...

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Glossary, Backup ID


-25003: Getting hostname of database host failed: <error_code> = <error_text> - SAP Documentation

Background documentation -25003: Getting hostname of database host failed: <error_code> = <error_text>

Explanation

In a command for opening a connection, no database host is specified. The database host could not be determined.

User Response

In the loader commands for creating a database session enter the name of the host on which the database instance is running to set up a connection. Restart the Loader.


-10509: The statement was not executed with updatable cursor concurrency - SAP Documentation

Background documentation -10509: The statement was not executed with updatable cursor concurrency

Explanation

It was not possible to execute the method (insertOneRow, updateRow or deleteRow) that was called from SQLDBC_UpdatableRowSet, because the result set was not modifiable.

User Response

Modifiable result sets can only be generated using special SELECT statements. The following options are available:

  • Alter the SQL statement

  • Set the result set type to CONCUR_UPDATABLE using the SQLDBC_Statement::ConcurrencyType or SQLDBC_PreparedStatement::ConcurrencyType method.


-24980: ERR_NOHELP - xparam help file not found - SAP Documentation

Background documentation -24980: ERR_NOHELP - xparam help file not found

Explanation

Unable to open the parameter help file that describes the database parameters.

User Response

Check that the cserv.pcf file in the database installation’s env directory exists and is correct. You should also check the DBM server’s access rights to this file.


Architecture of the Interfaces - SAP Documentation

Background documentation Architecture of the Interfaces

Applications such as SAP systems use interfaces to access SAP MaxDB databases.

If the application (and thus the SAP MaxDB interface) is on another computer than the database, it connects to the database on the remote computer via an SAP MaxDB X server (communication server). For more information, see Global Listener and X Servers.

Note that the JDBC interface needs an X server even if it is installed on the same computer as the database.

This graphic is explained in the accompanying text.

Database Applications Accessing an SAP MaxDB Database via SAP MaxDB Interfaces

This graphic is explained in the accompanying text.

Access to a Document Store in an SAP MaxDB Database via the SAP MaxDB WebDAV Servlet


Deleting Schemas - SAP Documentation

Procedure documentation Deleting Schemas

Prerequisites

  • You are logged on to the database as the user who is the owner of the schema.

  • The database is in the ONLINE operational state.

Procedure

In the context menu of the schema, choose Delete.

Cascade Options for Deleting Schemas
Option | Description
Cascade | The schema and all database objects belonging to the schema are deleted.
Restrict | You can only delete the schema if it does not contain any database objects any more.

More Information

SQL Reference Manual, DROP SCHEMA Statement (drop_schema_statement)


autolog_on - SAP Documentation

Background documentation autolog_on

Use this command to switch on the automatic backup function for the log area.

You can use an option to specify the interval at which the system backs up the log area.

According to the default value, the system backs up the log area as soon as a log segment is full, regardless of the specified interval.

When you switch on the automatic log backup function for the first time, you need to specify the name of a backup template which will be used to automatically back up the log area.

The backup template can have been specified for the LOG or AUTO backup types. If you specify a backup template, which was created for the LOG backup type, the system changes this property to AUTO.

If the automatic log backup function has been activated before and you do not specify a backup template, the system takes the last backup template used for the automatic log backup.

Recommendation Recommendation

For security reasons, copy the backup files created by the automatic log backup function to another data carrier external to the database computer.

End of the recommendation.

Prerequisites

  • You have the server permission Backup.

  • You have performed at least one complete data backup of the database (see: backup_start).

  • You have specified a backup template for the log backup (see: medium_put).

  • The automatic log backup function is off.

Structure

autolog_on [<medium_name>] [INTERVAL <value>]

Options

Option

Description

<medium_name>

Name of the backup template

The default backup template is the last one used for the automatic log backup of the database

INTERVAL <value>

Time interval in seconds between an entry in the log area and the entry being backed up by the automatic log backup function

The system triggers the next automatic log backup after the specified time period, unless the log segment is filled beforehand and the next automatic log backup is triggered for this reason.

If you specify the value 0 for this option, or if do not specify this option at all, the log area is backed up as soon as a log segment is full (system default).

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and switch on the automatic log backup function using the backup template DemoAutoLog for automatically backing up every 300 s:

>dbmcli -u OLEG,MONDAY -d DEMODB autolog_on DemoAutoLog INTERVAL 300

OK

More Information

Database Administration, Backing Up Log Entries, Archiving Backup Files


OneDB - SAP Documentation

Background documentation OneDB

SAP liveCache OneDB (OneDB) is a combination of an SAP MaxDB database with an SAP liveCache database within one database instance.

SAP liveCache OneDB has many advantages over a normal configuration with two separate databases, including:

  • You only have to maintain one database.

  • The databases share resources such as the data cache, CPU, log volumes, data volumes and backups.

More Information

Concepts of the Database System,

  • What is an SAP MaxDB Database?

  • SAP liveCache Technology

Database Administration in CCMS, OneDB

SAP Note 1038709 (FAQ: SAP MaxDB/liveCache One DB)


-28516: Commit or Rollback required - SAP Documentation

Background documentation -28516: Commit or Rollback required

Explanation

When liveCache called omsCreateVersion, omsOpenVersion or omsDropVersion, it established that changes have already been made to instances in persistent classes in the current transaction. This is not allowed, since the current transaction must already have ended.

User Response

Contact Support.


-3016: Invalid numeric constant - SAP Documentation

Background documentation -3016: Invalid numeric constant

Explanation

  1. The specified number does not match the column data type.

  2. The specified length of the function's result, for example, LPAD, CHR, and so on, is invalid.It must be between 1 and the maximum length valid for a CHAR-type column.

User Response

  1. Use a QUERY statement issued on the system table DOMAIN.COLUMNS to find out the data type of the affected column.

  2. Correct the specified length of the function’s result.


-25207: USAGE value of row(s) too high; maximum number of records possible on a single db page: <number> - SAP Documentation

Background documentation -25207: USAGE value of row(s) too high; maximum number of records possible on a single db page: <number>

Explanation

A Loader command for importing contains an error: IMPORT TABLE <table_spec>.The row number specified for USAGE (rows per page of the database) is too large. The maximum number of lines allowed can be determined from the size of a database page and the size of a record in the table to be imported.

User Response

Correct your entries and re-execute the command.


-756: Different SQLMODEs not allowed - SAP Documentation

Background documentation -756: Different SQLMODEs not allowed

Explanation

An application program may only run in one SQL mode.

User Response

Change the CONNECT statement. Implicit CONNECTs only function in INTERNAL SQL mode. The specifications made in the XUSER file are not applied in this case.


Number Ranges - SAP Documentation

Background documentation Number Ranges

Component | Number Range
Database kernel | 0 to 1999 -1 to -699 -900 to -999 -1000 to -1999 -2000 to -2999 -3000 to -3999 -4000 to -4999 -5000 to -5999 -6000 to -6999 -7000 to -7999 -8000 to -9799
JDBC | -700 to -899 -11200 to -11399
SQLDBC | -10000 to -10999
Perl DBD | -11000 to -11099
PHP | -11100 to -11199
ODBC | -22000 to -22999
SQL Studio | -23000 to -23999
Database Manager | -24000 to -24999
Loader | 25000 to 25999 -25000 to -25999
SAP liveCache Technology | -27000 to -28999
LCAPPS/TREX communication | -29000 to -29099


-10312: Attempt to concatenate to a NULL or DEFAULT value for parameter (<number>) - SAP Documentation

Background documentation -10312: Attempt to concatenate to a NULL or DEFAULT value for parameter (<number>)

Explanation

While data was being written piecewise, an attempt was made to assign further data to parameter <number>, which was already assigned the NULL value or the DEFAULT value.

User Response

Do not assign any more data to a parameter to which you have already assigned the NULL or DEFAULT value


-773: Datafile open error - SAP Documentation

Background documentation -773: Datafile open error

Explanation

An error occurred when opening a datafile for the processing of LONG columns.

User Response

Look up in the trace file *.pct in which column the error occurred. Then check the datafile.


-8026: Connect disabled for this user - SAP Documentation

Background documentation -8026: Connect disabled for this user

Explanation

A user whose logon authorization has been removed by the database administrator has tried to logon to the database system.

User Response

The user cannot logon to the database system without the administrator’s authorization.


-24962: ERR_VOLTYPE - wrong volume type - SAP Documentation

Background documentation -24962: ERR_VOLTYPE - wrong volume type

Explanation

An unknown or invalid volume type has been used.

User Response

Correct your entry.


-25245: Error: specify CATALOG, DATA, and PACKAGE stream - SAP Documentation

Background documentation -25245: Error: specify CATALOG, DATA, and PACKAGE stream

Explanation

You have executed a command to export data from a table. This command was terminated because no file was specified in the command.

User Response

Correct the command and then re-execute it.


com.sap.dbtech.powertoys.DBM Class - SAP Documentation

Background documentation com.sap.dbtech.powertoys.DBM Class

This DBM Java class is used for establishing and closing connections to databases and for executing DBM commands (administration commands).

com.sap.dbtech.powertoys.DBM Class: Methods
Method | Task
dbrootDBM | Connecting Java applications to the DBM server of a specific software version You need this method to create new databases.
dbDBM | Connecting Java applications to databases using the Database Manager
cmd | Executing DBM commands
cancel | Canceling DBM commands
release | Closing the connection to the Database Manager


-734: Pointer variable not allowed here - SAP Documentation

Background documentation -734: Pointer variable not allowed here

Explanation

SQL variables defined as pointers are not allowed in LONG columns because the maximum length of these variables is not known.

User Response

Specify the SQL variable as a CHARACTER ARRAY.


Properties of Database Parameters - SAP Documentation

Background documentation Properties of Database Parameters

The following table lists the properties of database parameters that are used in the default database parameter file cserv.pcf. Most of these properties are for internal use only and are not available when changing a database parameter using database tools such as Database Studio or Database Manager CLI.

Properties of Database Parameters
Property | Permitted Values | Description
CASESENSITIVE | YES | NO | Specifies whether the parameter value is case-sensitive.
CHANGE | NO | RUNNING | OFFLINE | Specifies whether and in which operational state the parameter can be changed NO = not changeable RUNNING = changeable in ONLINE and ADMIN operational state; you can choose when the change shall take effect OFFLINE = the new value only takes effect after a restart
CLEAR | YES | NO | Specifies whether the parameter can be adopted in a new database
DEPRECATEDID | Old parameter name | The parameter name has changed. However, the old name is still recognized by the system. More information: Obsolete Database Parameters
DEVSPACE | YES | NO | Parameter type: YES = volume parameter NO = kernel parameter
DISPLAYNAME | Character string, may contain blank characters | Description that is displayed for the parameter in some database tools
DYNAMIC | YES | NO | Specifies whether there are placeholders for the parameter (for example: DATAVOL_?)) in the default parameter file
GROUP | GENERAL | EXTENDED | SUPPORT | NO | TRACE | Group to which the parameter belongs: GENERAL: General database parameters EXTENDED: Special database parameters SUPPORT: Support database parameters NO: Parameter not displayed in some database tools TRACE: Parameter for the database trace, database structure checks and monitoring
INSTANCES | LVC | OLTP | Database type for which the parameter is relevant: LVC = SAP liveCache Technology OLTP = SAP MaxDB If no value is displayed for this property, the parameter is valid for all database types.
INTERN | YES | NO | Specifies whether the value is used for internal calculations
MANDATORY | YES | NO | Specifies whether the parameter has to have a value (non zero or not empty)
MAX | - | Maximum value
MIN | - | Minimum value
MODIFY | YES | NO | Specifies whether you can still change the parameter after the database has been created. Example: NO for the parameter RunDirectoryPath
SCOPE | - | Not implemented yet
USERDEFINED | YES | NO | YES: The value of the parameter was set directly by a user or a database tool. If you change a database parameter whose value is normally calculated by the system, then the system uses this user-defined value for all subsequent recalculations of database parameter values. The system discards and recalculates this user-defined value only if it is not within the permitted value range (a situation that might occur, for example, after the database software has been updated).
VALUESET | Value set | Separate the individual values with blanks or tabs. For string parameters, place the strings in quotation marks.

Example

As database system administrator DBADMIN with the password SECRET, you use Database Manager CLI to display the properties of the database parameter CacheMemorySize for the database DEMODB:

dbmcli -d DEMODB -u DBADMIN,SECRET param_directget CacheMemorySize

Syntax Syntax

  1. OK
CacheMemorySize	2500
End of the code.

dbmcli -d DEMODB -u DBADMIN,SECRET param_getproperties CacheMemorySize

Syntax Syntax

  1. OK
CHANGE          OFFLINE
INTERN          NO
MANDATORY       YES
CLEAR           NO
DYNAMIC         NO
CASESENSITIVE   NO
DEVSPACE        NO
MODIFY          YES
GROUP           GENERAL
DISPLAYNAME
VALUESET
MAX
MIN
INSTANCES
SCOPE           INSTANCE
DEPRECATEDID    CACHE_SIZE
USERDEFINED     YES
End of the code.

More Information

Configuration Files


Miscellaneous Database Files - SAP Documentation

Background documentation Miscellaneous Database Files

Miscellaneous Database Files
File name | File ID | Directory | Description
<database_name>.dbm.shi <database_name>.dbm.shm | - | <independent_data_path>\wrk | The Database Manager uses these files for the shared memory.


Data Types - SAP Documentation

Background documentation Data Types

For most Loader commands for exporting and importing data, you can specify the data type that the relevant field values in the data stream has or should have. A distinction is made between database-internal and external data types. The external data type and the corresponding internal database data type of the column value in the target table do not have to be identical.

Internal Database Data Types

Internal database data types are the data types defined for the columns in the database table. For an explanation of the internal database data types, see SQL Reference Manual, Data Type (data_type).

External Data Types

External data types are either the data types into which Loader can convert internal database data types when it exports application data or the data types that Loader converts into internal database data types when it imports data. You can specify the external data type for each field value to be exported or imported in the Loader commands for exporting or importing using syntax element field_type.

Structure

Syntax Syntax

  1. <field_type> ::=
  /* empty */
| CHAR
| DECIMAL [<unsigned_integer>]
| INTEGER
| REAL
| ZONED [<unsigned_integer>]
End of the code.
External Data Types
/* empty */ | The data field is read or output as data type CHAR. Each internal database column format in the database can be read and output in CHAR format.
CHAR | ASCII, UCS2, or UTF8-coded, depending on the computer, max. 254 bytes.
DECIMAL [<unsigned_integer>] | Packed decimally: one digit per half byte, sign in extreme right half byte, 1 to 10 bytes, maximum of 18 digits, the position of the decimal point is derived from the table column type unsigned_integer: number of digits to the right of the decimal point
INTEGER | Binary coded (computer-specific), 1, 2, or 4 bytes, sign in bit 0, negative values in two's complement notation
REAL | Floating point notation with mantissa and exponent, 4 or 8 bytes, in computer-specific notation
ZONED [<unsigned_integer>] | Zoned decimal: /370 zoned data format is permitted, the position of the decimal point is derived from the type of the table column unsigned_integer: number of digits to the right of the decimal point

If no external data type is specified for a field value, Loader selects CHAR data type as the default for this field value. Therefore, if the field value does not have data type CHAR or data type CHAR is not required, you need to specify the data type.

Binary Values

All numeric, external data types (INTEGER, REAL, DECIMAL, ZONED) are interpreted as binary values. These can be converted to any of the internal data types (FIXED, SMALLINT, INTEGER, FLOAT) used by the database.

  • Loader always interprets data of data type INTEGER as signed values. You can adjust how this data is represented in a data stream using the syntax element int_spec (see: Data Format).

  • Data of data type REAL is coded in a computer-specific format and cannot be transported between different operating systems and computer platforms without being converted again.

Plain Text Values

Field values with external data type CHAR are plain text values, that is, these values consist of readable characters.

  • Plain text values can conform to different specifications: ASCII, UCS2, or UTF8 (see: Code Specification).

  • You can specify the data formats for plain text values that represent the date, time, or a time stamp (see date, time and time stamp specification).

HEX Values

You can use an external data type with the additional specification HEX (see: Column Description, Output Column) as a hexadecimal value. This enables you to import or export all data types in hexadecimal form. Each byte of data in the result is represented by two hexadecimal numbers. Each value in the data stream occupies twice as much space as the value of the same data type that is not specified as a HEX value.

Converting the Data Types

The specification of the data types tells Loader how to interpret the data in the data stream.

  • If application data is exported from a table, the internal database data types are converted to the specified external data types and the corresponding column values are exported.

  • If application data is imported into a table, the specified external data types are converted to internal database data types and the corresponding column values of a table are imported.

Loader can convert numeric data types. You can use the external data type CHAR to read or output any internal database data type.

  • If data is exported from a table, the internal database data types are converted to the specified external data types and the corresponding column values are exported. The database-internal data types INT[EGER], FIXED and SMALLINT can be transported to the external data types DECIMAL, INTEGER, REAL or ZONED. The database-internal data type FLOAT can be converted to the external data types CHAR[ACTER] or REAL.

  • When data is imported into a table, the specified external data types are converted to internal database data types and the corresponding column values of a table are imported. The external data types DECIMAL, INTEGER, REAL and ZONED can be converted to the database-internal data types INTEGER, FIXED, FLOAT or SMALLINT.

Example

Example Example

IMPORT TABLE hotel.reservation

DATA INSTREAM 'reservation_fwv.data' FWV BINARY

  rno       01-04 INTEGER

  cno       05-08 INTEGER

  hno       09-12 INTEGER

  type     13-18 CHAR

  arrival   19-28 CHAR

  departure 29-38 CHAR

End of the example.

The database table RESERVATION requires the internal database data type FIXED for the values in columns RNO, CNO and HNO. The IMPORT TABLE command defines the external data type INTEGER for these columns. The data in the columns RNO, CNO and HNO is converted to the internal database data type FIXED when it is imported.

Example Example

IMPORT TABLE hotel.room

DATA INSTREAM 'room_fwv_binary.data' FWV BINARY

  hno       01-05

  type      06-11

  free      12-19 INTEGER HEX

  price     20-27 INTEGER HEX

End of the example.

The IMPORT TABLE command defines hexadecimal values FREE and PRICE as the external data type using the additional HEX specification.

More Information

  • Column Description

    Position Description

    Importing Constants and Special Constants

    Selecting Data Records

    Output Column

  • Data Stream

    Data Format


-25006: Connect with userkey '<user_key>' failed: <error_text> - SAP Documentation

Background documentation -25006: Connect with userkey '<user_key>' failed: <error_text>

Explanation

The system cannot use the specified user data to create a connection to the database.

User Response

Use the SQL error text to determine why the connection failed. Fix the cause or the error and restart the Loader.


-845: Invalid SQL statement - SAP Documentation

Background documentation -845: Invalid SQL statement

Explanation

The SQL statement is invalid or unknown.

User Response

Correct the SQL statement or use another SQL statement.


-8017: Column must be group column - SAP Documentation

Background documentation -8017: Column must be group column

Explanation

A column which is not a group column, that is, which is not contained in the GROUP clause, was specified in a selected column or in the HAVING clause. Columns that are not group columns can only occur in arguments of the AVG, COUNT, MAX, MIN, STDDEV, SUM and VARIANCE set functions.

User Response

Insert the specified column into the group clause as a further group column, or remove it from the selected column or HAVING clause.


-10404: Conversion not supported for parameter/column (<number>) - SAP Documentation

Background documentation -10404: Conversion not supported for parameter/column (<number>)

Explanation

The value for parameter/column <number> could not be read or inserted, because conversion is not supported for the required data type format.

User Response

Check whether the conversion you require is permitted for the installed version of the SQLDBC interfaceIf this conversion is permitted, change the data type of the host variables or of the parameter/column in one of the data types contained in the conversion matrix.


-25230: Cannot execute command DATAEXTRACT FOR <load_type>; specify an output file for commands - SAP Documentation

Background documentation -25230: Cannot execute command DATAEXTRACT FOR <load_type>; specify an output file for commands

Explanation

Error executing the Loader command for exporting data.The command must contain specifications for at least two output data streams – one data stream for data and one data stream for the commands that have to be created. The data stream for the commands is missing in the command.

User Response

Correct the entry and re-execute the command.


SYSCHECKSTATISTICSLOG - SAP Documentation

Object documentation SYSCHECKSTATISTICSLOG

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.SYSCHECKSTATISTICSLOG logs all calls of the database procedure SYSCHECKSTATISTICS.

Structure

SYSCHECKSTATISTICSLOG
EXECUTIONSTART | TIMESTAMP | Start time of SYSCHECKSTATISTICS execution
EXECUTIONEND | TIMESTAMP | End time of SYSCHECKSTATISTICS excution
CALLER | CHAR(32) | Name of the user calling SYSCHECKSTATISTICS
TABLECOUNT | FIXED(10) | Number of tables with an entry in the system table SYSUPDSTATWANTED This number can be smaller than QUALIFIEDTABLECOUNT if there were requests for some of the qualified tables in SYSUPDSTATWANTED already
RETURNCODE | FIXED(10) | Returncode of SYSCHECKSTATISTICS call
SCHEMAMASK | CHAR(32) | Value of SCHEMAMASK parameter used during SYSCHECKSTATISTICS execution
CHANGETHRESHOLD | FIXED(3) | Value of CHANGETHRESHOLD parameter used during SYSCHECKSTATISTICS execution
QUALIFIEDTABLECOUNT | FIXED(10) | Number of tables for which outdated statistics were detected

The database procedure SYSCHECKSTATISTICS checks the growth of all tables owned by the current database user. If the current size of a table differs more than CHANGETHRESHOLD percent from the table size at last update statistics run, the database procedure SYSCHECKSTATISTICS inserts for this table the relevant information into the system table SYSUPDSTATWANTED. If the database procedure SYSCHECKSTATISTICS is called by the database system administrator the described check is performed for all tables in the database system.

More Information

  • SYSUPDSTATWANTED

    SYSCHECKSTATISTICSDETAILS

  • Database Administration, SQL Optimizer Statistics

  • SQL Reference Manual, UPDATE STATISTICS Statement


-885: Variable may be truncated - SAP Documentation

Background documentation -885: Variable may be truncated

Explanation

The range of values for the database column is smaller than that of the SQL variables. When the value is inserted into the column or when values are compared, the value of the SQL variables may be truncated and consequently be incorrect.

User Response

If this is not desired, you must change the format of the column or SQL variables.


-770: Macro in FETCH set SQLOPT="-B 0" - SAP Documentation

Background documentation -770: Macro in FETCH set SQLOPT="-B 0"

Explanation

FETCH statements are executed as ARRAY statements, whenever possible. If macros are used in the FETCH statement, errors may occur and records be lost.

User Response

When using macros within FETCH statements, set the runtime option MFETCH(0). This option prevents FETCH statements from being executed as ARRAY statements.


EXPORT TABLE - SAP Documentation

Background documentation EXPORT TABLE

You can use the EXPORT TABLE command to export all the data from a specified table. The requested tables must be available in the database instance. Only the owner of the table may execute the EXPORT TABLE ...PAGES command. In all other cases you must have access authorization for the tables you want to export.

Prerequisites

You can use all of the demo data in database DEMODB. Start the Loader and log onto demo database DEMODB as database administrator MONA with the password RED.

Use the session mode: loadercli -d demodb -u mona,red

Activities

All data in the ROOM table in the HOTEL schema is to be exported. It is not possible to select specific column values with the EXPORT TABLE command; you can only do this with the EXPORT COLUMNS command. You can make entries after the keywords CATALOG and/or DATA to select what is to be exported, the database catalog and/or the application data.

Exporting the Database Catalog of a Table

You can export all the database catalog information for a table.

EXPORT TABLE hotel.room

  CATALOG OUTSTREAM 'room_ddl.catalog'

The database catalog (CATALOG) is exported in the DDL format.

See also: Loader, Data Stream

Exporting the Application Data of a Table

You can export all the application data of a table.

EXPORT TABLE hotel.room

  DATA OUTSTREAM 'room_csv.data'

The application data (DATA) is exported in the CSV format (default value).

EXPORT TABLE hotel.room

  DATA OUTSTREAM 'room_fwv.data' FWV

The application data (DATA) is exported in the FWV format.

EXPORT TABLE hotel.

  DATA OUTSTREAM 'room_fwvbinary.data' FWV BINARY

The application data (DATA) is exported in the FWV BINARY format.

See also: Loader, CSV, FWV, FWV BINARY

EXPORT TABLE hotel.room

  DATA OUTSTREAM 'room_pages.data' PAGES

The application data (DATA) is exported in the PAGES format.

EXPORT TABLE hotel.room

  DATA OUTSTREAM 'room_records.data' RECORDS

The application data (DATA) is exported in the RECORDS format.

A PAGES export uses a database format (based on a page), and is therefore faster than an export that uses, for example, the RECORDS format of the Loader. You may not change a data file in the PAGES, RECORDS or FWV BINARY formats, as these are binary formats specific to the Loader.

See also: Loader, PAGES, RECORDS

Exporting the Database Catalog and all the Application Data of a Table

You can export all the data in the specified table.

EXPORT TABLE hotel.room

  CATALOG OUTSTREAM 'room_ddl.catalog'

  DATA OUTSTREAM 'room_csv.data'

Note the sequence of the syntax elements. Always enter the syntax element for exporting the database catalog first, and then the syntax element for exporting the application data.

Sequence of Table Rows

To arrange the table rows in the data stream in a particular sequence, you can use the ORDER clause. The columns specified in the ORDER clause determine the sort sequence. Note the sequence of the syntax elements. Enter the ORDER clause first.

EXPORT TABLE hotel.room

  ORDER BY price

  CATALOG OUTSTREAM 'room_ddl.catalog'

  DATA OUTSTREAM 'room_csv.data'

The rows in the ROOM table are sorted by the values in the PRICE column and exported in that order to the data stream.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL table are exported to the specified data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

EXPORT TABLE hotel.room

  CATALOG OUTSTREAM 'room_ddl.catalog'

  PACKAGE OUTSTREAM 'room_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Handling LOB Values

When you use the CSV and FWV [BINARY] formats, specific data streams are created for the LOB data. The data of the HOTEL table in the HOTEL schema is to be exported to a CSV data stream. The HOTEL table has the LOB column INFO. Enter the LOB syntax element after the DATA syntax element.

EXPORT TABLE hotel.hotel

  DATA OUTSTREAM 'hotel_csv.data'

  LOB OUTSTREAM INFO 'hotel_info_csv.lob'

All the columns in the HOTEL table are exported. The LOB values are stored in the file hotel_info_csv.lob.

When you use the PAGES or RECORDS formats, all data from the table, including LOB data, is stored in a data stream. A LOB syntax element is therefore not necessary.

EXPORT TABLE hotel.hotel.

  DATA OUTSTREAM 'hotel_records.data' RECORDS

All columns of the HOTEL table, including the LOB column INFO, are exported to the hotel_records.data data stream.

See also: Loader, Exporting LOB Values

Complete Syntax of the EXPORT TABLE Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

EXPORT TABLE hotel.room

  ORDER BY price

  CATALOG OUTSTREAM FILE 'room_ddl.catalog' DDL

  DATA OUTSTREAM FILE 'room_csv.data' CSV

  PACKAGE OUTSTREAM FILE 'room_csv.package' CSV

For a complete syntax description, see EXPORT TABLE command in the Loader documentation.

If you want to export only selected column values instead of all the table data, select the EXPORT COLUMNS command.

More Information

Other commands for Exporting

Corresponding import command IMPORT TABLE

Session Mode


COMMANDMONITOR - SAP Documentation

Object documentation COMMANDMONITOR

The system table <DATABASE_SYSTEM_ADMINISTRATOR>.COMMANDMONITOR describes monitoring data for single executions of SQL statements.

Structure

COMMANDMONITOR
COMMANDID | CHAR(8) BYTE | Identification of the SQL statement
EXECUTECOUNT | FIXED(20) | Number of executions of the SQL statement
ROWNUMBER | FIXED(20) | Number of rows of a mass SQL statement
PARENTEXECUTECOUNT | FIXED(20) | Number of executions of the SQL statement
SESSIONID | FIXED(10) | Identification of the database session
CONSTRAINTID | FIXED(10) | Identification of the constraint kept in COMMANDMONITORCONSTRAINTS
EXECUTIONENDDATE | TIMESTAMP | Time the last execution of this SQL statement was finished
RUNTIME | FIXED(20,6) | Kernel execution time for this SQL statement (microseconds)
DATASOURCERUNTIME | FIXED(20,6) | Bridge execution time for this SQL statement NULL for non-Bridge SQL statement (microseconds)
READROWCOUNT | FIXED(20) | Number of rows read during execution of this SQL statement
QUALIFIEDROWCOUNT | FIXED(20) | Number of rows qualified during execution of this SQL statement
READCOUNT | FIXED(20) | Number of reads during execution of this SQL statement
PHYSICALREADCOUNT | FIXED(20) | Number of physical reads during execution of this SQL statement
VIRTUALREADCOUNT | FIXED(20) | Number of virtual reads during execution of this SQL statement
FETCHCOUNT | FIXED(20) | Number of fetch calls during execution of this SQL statement
FETCHROWCOUNT | FIXED(20) | Number of rows fetched during execution of this SQL statement
SUSPENDCOUNT | FIXED(20) | Number of physical reads during execution of this SQL statement
WAITCOUNT | FIXED(20) | Number of waits during execution of this SQL statement
READPAGECOUNT | FIXED(10) | Number of pages read during execution of this SQL statement
WRITEPAGECOUNT | FIXED(10) | Number of pages written during execution of this SQL statement
READAHEADREQUESTCOUNT | FIXED(20) | Number of read ahead requests during execution of this SQL statement
READAHEADIGNOREDREQUESTCOUNT | FIXED(20) | Number of read ahead requests ignored during execution of this SQL statement
READAHEADPHYSICALREADPAGECOUNT | FIXED(20) | Number of read ahead pages read during execution of this SQL statement

More Information

Database Administration in CCMS, Command Monitor

Database Studio,

  • Configuring and Starting SQL Performance Monitoring

  • Analyzing SQL Performance Bottlenecks


Installing the SAP MaxDB PHP Library on Microsoft Windows - SAP Documentation

Procedure documentation Installing the SAP MaxDB PHP Library on Microsoft Windows

You install the SAP MaxDB PHP library php_maxdb.dll on Microsoft Windows to use the SAP MaxDB PHP extension.

Prerequisites

  • You have downloaded the PHP binary distribution for Microsoft Windows. You can find this here: http://php.net/downloads.php.

  • You have downloaded the appropriate SAP MaxDB PHP library for your PHP version. The PHP5 and PHP4 libraries can be found here: http://pecl4win.php.net

  • You have installed the SAP MaxDB SQLDBC software (software components Base and SQLDBC). The SQLDBC files are stored in the following directories:

    • Microsoft Windows:

      <installation_path>\pgm

    • Unix/Linux:

      <installation_path>\lib or <installation_path>\lib\lib64

    Note Note

    You can display the installation path using the dbm_getpath DBM command:

    dbmcli dbm_getpath InstallationPath

    For more information, see Database Manager CLI, dbm_getpath.

    End of the note.

Note Note

To reproduce the test examples described in the following, you also require a database. For this reason, we recommend that you install the complete SAP MaxDB software first, create a database, and load the tutorial data to this database.

End of the note.

Procedure

  1. Unpack the PHP binary distribution to a local directory <php_binary> on your computer.

  2. Select the appropriate SAP MaxDB PHP library for your PHP version and unpack it to the directory containing the extensions for the PHP binary distribution:

    • For PHP5, unpack the package to <php_binary>\ext

    • For PHP4, unpack the package to <php_binary>\extensions

  3. Copy the file php.ini-recommended from the <php_binary> directory to the directory of your version of Microsoft Windows <win_dir> and rename it to php.ini:

    copy <php_binary>\php.ini-recommended <win_dir>\php.ini

  4. Open the php.ini file in an editor and add the following line to the Dynamic Extensions section:

    extension=php_maxdb.dll

  5. Look for extension_dir in the php.ini file and enter the directory containing the extensions for the PHP binary distribution of your PHP version.

    • For PHP5, enter:

      extension_dir="<php_binary>\ext"

    • For PHP4, enter:

      extension_dir="<php_binary>\extensions"

  6. Save your changes and close the php.ini file.

  7. Enter the necessary paths to the PATH environment variable:

    SET PATH=%PATH%;<php_binary>;<php_binary>\ext

Result

The SAP MaxDB PHP library has been installed.

To check whether the installation has been successful you can display the list of all installed PHP extensions using the following command:

php -m

If no errors have occurred, the PHP extension maxdb is displayed in the list.

More information: Testing the PHP Library on Microsoft Windows

Example

You are using PHP5 and want to install the SAP MaxDB PHP extension for Microsoft Windows (32 bit).

You are using the Windows XP operating system and this is installed in the C:\WINDOWS directory.

  1. Unpack PHP 5.0.0 to the directory C:\php-5.0.0-Win32.

  2. Unpack the phpmaxdb.dll package to C:\php-5.0.0-Win32\ext.

  3. Copy the file php.ini-recommended from the C:\php-5.0.0-Win32 directory to the C:\WINDOWS directory and rename it php.ini:

    copy C:\php-5.0.0-Win32\php.ini-recommended C:\WINDOWS\php.ini

  4. Open the php.ini file in an editor and add the following line to the Dynamic Extensions section:

    extension=php_maxdb.dll

  5. Look for extension_dir in the php.ini file and enter the directory C:\php-5.0.0-Win32\ext.

    extension_dir=″c:\php-5.0.0-Win32\ext″

  6. Save your changes and close the php.ini file.

  7. Enter the necessary paths to the PATH environment variable:

    SET PATH=%PATH%;C:\php-5.0.0-Win32;C:\php-5.0.0-Win32\ext


-2013: Select column list too long - SAP Documentation

Background documentation -2013: Select column list too long

Explanation

Possible reasons:

  1. In the CREATE VIEW statement, the number of view table columns to be defined must be equal to the number of columns issued as the result of the QUERY expression. In the present case, the number of columns in the QUERY request result exceeds the number of defined view table columns.

  2. The number of subquery output columns specified in a SET UPDATE clause must be precisely one. In some SQL modes, this restriction also applies in the comparison predicate, quantity comparison predicate and IN predicate. In this case, the subquery produced more than one output column.

  3. An SQL statement was specified for data retrieval. The number of output columns must be less than or equal to 254. This number was exceeded.

User Response

  1. Increase the number of view table columns specified in the CREATE VIEW statement, or reduce the number of output columns of the QUERY expression.

  2. Limit the number of subquery output columns to one.

  3. Correct the data query statement by removing one or more output columns.


-1119: Too many constraints for this table - SAP Documentation

Background documentation -1119: Too many constraints for this table

Explanation

More conditions have been defined for this table than is permitted. This is either because you used a specific range of values, or because you explicitly specified certain constraints.

User Response

Either check whether you really need all the constraints and get rid of any that are unnecessary or group several constraints into one. Repeat the command using the new constraint definitions.


OMSVERSIONS - SAP Documentation

Object documentation OMSVERSIONS

The system table SYSINFO.OMSVERSIONS contains information about the OMS versions explicitly defined by the users.

Structure

OMSVERSIONS
OMSVERSIONID | CHAR(22) | External identification of the OMS version
CONSISTENTVIEWID | FIXED(15) | Internal identification of the consistent view created by the OMS version
CREATEDATE | TIMESTAMP | Time of OMS version creation
LASTOPENDATE | TIMESTAMP | Time when OMS version was last opened
OPENVERSION | CHAR(3) | Indicates if the OMS version is currently open (YES) or not (NO)
DESCRIPTION | CHAR(256) | Storage of OMS version characteristics detected by the application

More Information

Glossary, OMS Version, Consistent View


Making Snapshots of the Data Area - SAP Documentation

Procedure documentation Making Snapshots of the Data Area

You create a snapshot to save the current state of the data area in the database. For example, you can use a snapshot when working on a training computer to quickly restore the database to its original state after training has finished and without backing up the data.

Caution Caution

A snapshot is not a data backup. The system saves the snapshot on the same hard disk as your data area. To be able to restore your data after a hardware error, you have to back up data and logs regularly.

More information: Backing Up Data

End of the caution.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

    More information: Glossary, Server Permission

  • The database is in the ONLINE or ADMIN operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Snapshots tab page.

  4. Choose Create...

More Information

Displaying Information About Snapshots

Database Administration, Snapshot of the Data Area


LFILL(x,a,n) - SAP Documentation

Function documentation LFILL(x,a,n)

LFILL(x,a,n) is a string function that inserts the character string a (string literal) at the start of the character string x (string specification) as many times as necessary until the character string has reached length n (unsigned integer). Only expressions that produce an alphanumeric value are permitted as string specifications.

If the character string a cannot be completely inserted without exceeding the specified total length, only the part that is needed to reach the total length is inserted.

LFILL(x,a,n)
x, a, n | Result of the LFILL(x,a,n) Function
LFILL(x,a), x must identify a CHAR or VARCHAR column | The column x is filled with the characters of a until its maximum length is reached
x is a NULL value | NULL value
a or n is a NULL value | Error message

Example

SQL Tutorial, Changing Character Strings

More Information

RFILL(x,a,n)

EXPAND(x,n)


400: Lock collision - SAP Documentation

Background documentation 400: Lock collision

Explanation

Explanation: When the option (NOWAIT) is specified in the LOCK statement or in the LOCK option, this message signals that the lock request conflicts with the locks of other users.

User Response

  1. In interactive mode, another job can be activated which does not require the desired lock.

  2. As an alternative, you can wait for the lock to be released by specifying the same SQL statement without the '(NOWAIT)' option.


-10319: Could not read/write LOB for parameter/column (<number>) - SAP Documentation

Background documentation -10319: Could not read/write LOB for parameter/column (<number>)

Explanation

One of the following two errors occurred for parameter/column <number>:

  • The SQLDBC_LOB::getVal method was used to try to read an LOB object, even though this object was only opened for write access (input parameter).

  • The SQLDBC_LOB::putVal method was used to try to write an LOB object, even though this object was only opened for read access (output parameter).

User Response

Only use the SQLDBC_LOB::getVal method for output parameters and the SQLDBC_LOB::putVal method for input parameters.


FREEBLOCKMANAGERSTATISTICSRESET - SAP Documentation

Object documentation FREEBLOCKMANAGERSTATISTICSRESET

The system table SYSINFO.FREEBLOCKMANAGERSTATISTICSRESET contains information on block states since the last RESET FREEBLOCKMANAGERSTATISTICS or RESET ALL.

Structure

FREEBLOCKMANAGERSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
SINGLEBLOCKREQUESTCOUNT | FIXED(20) | Number of requests for a single free block
MULTIBLOCKREQUESTCOUNT | FIXED(20) | Number of requests for a multiple blocks
MULTIBLOCKREQUESTEDCOUNT | FIXED(20) | Number of blocks requested
MULTIBLOCKDELIVEREDCOUNT | FIXED(20) | Number of blocks delivered
CLUSTERREQUESTCOUNT | FIXED(20) | Number of requests for cluster
CLUSTERDELIVEREDCOUNT | FIXED(20) | Number of clusters delivered
DATABASEFULLCOUNT | FIXED(20) | Number of database full situations detected by the free block management

More Information

FREEBLOCKMANAGERBLOCKSTATES

FREEBLOCKMANAGERSECTIONS

FREEBLOCKMANAGERSTATISTICS


-6000: Duplicate table name - SAP Documentation

Background documentation -6000: Duplicate table name

Explanation

The following reasons for appearance of this message are possible:

  1. There is already a table with the specified name in the defined or current schema.

  2. In the FROM clause of a QUERY expression the table identifier is duplicated (the reason can be: duplicated table name, duplicated reference name or table name and reference name are equal).

User Response

  1. Choose another name for the new table.

  2. Choose (another) reference name for the table.


-24914: ERR_KEYEXISTS - installation key <key> exists - SAP Documentation

Background documentation -24914: ERR_KEYEXISTS - installation key <key> exists

Explanation

You used a key in the DBM server command inst_reg that has already been used. If you did not specify a key, empty key is already used.

User Response

Use a unique key after option -k in DBM command inst_reg ( inst_reg -k <key>).


-25316: Table contains at least one column defined as LOB; IMPORT in PAGE format rejected - SAP Documentation

Background documentation -25316: Table contains at least one column defined as LOB; IMPORT in PAGE format rejected

Explanation

Error in the Loader command for importing data. The table that has to be imported must not contain any columns of data type LOB. This also applies even if the column affected does not need to be imported, that is, even if the command does not list the column in the column description.

User Response

Import the table using a different IMPORT command.


100: Row not found - SAP Documentation

Background documentation 100: Row not found

Explanation

There is no (further) table row which meets the criterion.

User Action

No user action is required.


Displaying Information About Threads - SAP Documentation

Procedure documentation Displaying Information About Threads

Prerequisites

You are logged on to the database as the database system administrator.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Task Manager tab page.

  4. To display information about the threads, expand the menu option Thread Overview.

    Special Threads

    Name

    Description

    Coordinator

    The Coordinator thread monitors all threads in the database. It is the first thread that the system creates when the database is started. It coordinates the start processes of the other threads. If errors occur, the Coordinator thread can stop other threads.

    Requester

    The Requester thread accepts user logons to the database and assigns them to a user task within a user kernel thread.

    Console

    The Console thread processes the requests of the XCONS database tool (database console).

    Clock

    Only on Microsoft Windows

    The Clock thread sets a global time variable with which internal time measurements are aligned.

    dev<n>

    Dev Threads are responsible for carrying out write and read requests of the tasks in the volumes.

    The Dev threads are numbered sequentially (dev<n>). The Dev thread dev0 plays a special role here. It coordinates and monitors the other Dev threads.

    The number of Dev threads is primarily dependent on the number of volumes in the database. The database system activates two Dev threads for each data volume and each log volume. If the database trace is on, the database system activates a Dev thread for it as well.

    asdev<i>

    To perform data backups, the database system activates temporary Dev threads asdev<i> for reading and writing the data.

    Timer

    Timer threads are responsible for monitoring the time for time-outs, for internal load balancing and for other time-dependent internal controls.

    Worker

    The Worker thread is responsible for reporting completed asynchronous I/O operations.

  5. To display statistical information about the threads, expand the menu option Thread Statistics.

More Information

Concepts of the Database System, Threads


-3035: Invalid date time format - SAP Documentation

Background documentation -3035: Invalid date time format

Explanation

The date and time format specified during installation (special database parameter DateTimeFormat) is invalid.

User Response

Specify EUR, INTERNAL, ISO, JIS or USA for the date and time format.


-2003: Output columns too long - SAP Documentation

Background documentation -2003: Output columns too long

Explanation

Possible reasons:

  1. The total length of the output columns exceeds 8084 bytes.

  2. The total length of the output columns, together with the columns specified in the ORDER clause or GROUP clause, exceeds 8084 bytes.

  3. The total length of the output columns, together with the correlated columns and columns of predicates that contain a subquery, exceeds 4048 bytes in an SQL statement with correlated subqueries.

User Response

  1. Reduce the number of output columns.

  2. Try to do without sorting or grouping or to perform sorting or grouping across shorter or fewer columns.

  3. Try to manage with fewer output columns or correlated columns, or to achieve the desired effect using several SQL statements.


-28000: Operator NEW failed - SAP Documentation

Background documentation -28000: Operator NEW failed

Explanation

Allocation of memory failed.

User Response

Check if sufficient memory is available for the desired operation.


-25503: Error reading file <file_name> : <error_text> - SAP Documentation

Background documentation -25503: Error reading file <file_name> : <error_text>

Explanation

An operating system-dependent text appears in the operating system error message, indicating the error that occurred.

User Response

Fix the cause of the error and restart the Loader to process the terminated command.


-35: Referential integrity violated - SAP Documentation

Background documentation -35: Referential integrity violated

Explanation

This may be caused by one of the following:

  1. An INSERT or UPDATE statement issued on a table that is the referencing table in a referential CONSTRAINT definition produces a row that is not a matching row of the CONSTRAINT definition.

  2. Deleting rows from a referenced table in a referential CONSTRAINT definition using ON DELETE RESTRICT in the DELETE rule produces a matching row.

  3. When a referential CONSTRAINT definition is being executed, the referenced table or referencing table contains rows which conflict with the CONSTRAINT definition.

User Response

  1. Display the definition of the referential CONSTRAINT definition using a QUERY statement issued on the DOMAIN.FOREIGNKEYCOLUMNS system table. Correct the INSERT or UPDATE statement according to this definition.

  2. Use a suitable QUERY statement to find out which row of the referencing table prevents the required rows from being deleted from the referenced table.

  3. Use a suitable QUERY statement to find out which row of the referenced table or referencing table conflicts with the referential CONSTRAINT definition. Change or delete this row, or correct the CONSTRAINT definition.


-10305: Parameter <number> contains null pointer - SAP Documentation

Background documentation -10305: Parameter <number> contains null pointer

Explanation

The method that was called could not write to or read any parameters or columns from the database, because the program variable bound to parameter <number> and the related indicator parameter is a NULL pointer.

User Response

Use the SQLDBC_PreparedStatement::bindParameter or SQLDBC_ResultSet::bindColumn method to bind a program variable. Enter a valid program variable address or set the indicator parameter.


From -5000 to -5999 - SAP Documentation

Background documentation From -5000 to -5999

-5001 | Missing privilege
-5003 | Missing key specification
-5005 | Missing non-NULL value
-5006 | Missing identifier
-5007 | Missing numeric constant
-5008 | Missing numeric constant
-5009 | Missing integer
-5010 | Missing value specification
-5012 | Missing definite table name
-5013 | Missing update column
-5014 | Missing definite column name
-5015 | Missing keyword
-5016 | Missing delimiter


Starting and Configuring Database Studio: Overview - SAP Documentation

Background documentation Starting and Configuring Database Studio: Overview

  • Starting Database Studio

  • Configuring Database Studio

  • Database Studio Screen Areas


-712: Too many parameters, SQLMAX too small - SAP Documentation

Background documentation -712: Too many parameters, SQLMAX too small

Explanation

In an SQLDA area, an SQLVAR entry was accessed which is no longer available (maximum number of SQLVAR entries < index_of_the_SQLVAR entry).

User Response

Update the maximum number of SQLVAR elements or correct the index.


-28836: Recreation of index for OmsKeyedContainer failed - SAP Documentation

Background documentation -28836: Recreation of index for OmsKeyedContainer failed

Explanation

The recreation of the keyed-object index from object-data failed.

User Response

Since it is impossible to recreate the index from object-data, data must be restored from a data backup.


-859: Number of columns < number_of_parameters - SAP Documentation

Background documentation -859: Number of columns < number_of_parameters

Explanation

More SQL variables are specified in the statement than columns are available in the table.

User Response

If this is not desired, add columns to the table or reduce the number of SQL variables.


Visual Query - SAP Documentation

Procedure documentation Visual Query

You enter an SQL statement using the visual query editor.

Note Note

You can also enter SQL statements in text form.

More information: Entering and Executing SQL Statements

End of the note.

Procedure

  1. Select Tables in the Explorer.

  2. Choose [image] New [image] Visual SQL [image] in the context menu of Tables.

    The visual query editor is opened. More information: Visual Query Editor

  3. Use drag and drop to copy the desired tables from the Explorer to the visual query editor.

    The system displays secondary key relationships between tables as connecting lines (joins).

  4. Use drag and drop to copy the columns that you want to display in the result view to the Query Columns area.

  5. (Optional:) In the Query Columns area, enter search conditions and other attributes of the result view.

    Visual Query: Search Conditions and Attributes of the Result View

    Property

    Description

    Synonym

    Synonym for the column name in the result view

    Visible

    Column is displayed in the result view.

    Order

    Listing of column values in the result view

    Predicate

    Search condition

    • If you specify a search condition for a column with the data type CHAR, VARCHAR, DATE, or TIME, you must put the relational expression between single quotation marks.

    • You can enter more than one search condition using AND or OR links. If you want to use one column several times to formulate search conditions, but only want to display it once, you can hide it in the result view.

    • To enter several search conditions with AND links, enter them in the same row.

    • To formulate several search conditions with OR links, enter each of these conditions in a new row.

    More information: SQL Reference Manual,

    • Search Condition (search_condition)

    • Predicate (predicate)

  6. To display the SQL statement in text form, choose Export SQL in the context menu of the visual query editor.

    To execute the SQL statement, choose Execute SQL in the context menu of the visual query editor.

Creating or Deleting Joins

Note Note

You can only use normal joins in the Visual SQL Editor. Outer joins are not possible.

End of the note.

To link one table column with another table column using a join, drag the column of the first table and drop it onto the column of the second table.

The join is displayed as a connecting line between both table columns.

  • To edit the join properties, choose Join Properties in the context menu of the connecting line and enter the join properties.

  • To delete a join, choose Delete in the context menu of the connecting line.

  • If you copy the same table to the table selection twice, the system assigns an alias name. You can create SELF JOINS in this way.

More information: SQL Reference Manual,

  • JOIN Predicate (join_predicate)

  • JOIN Table (joined_table)

More Information

SQL Reference Manual

SQL Tutorial


DATAVOLUMES - SAP Documentation

Example documentation DATAVOLUMES

Use of the system tableSYSINFO.DATAVOLUMES

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table DATAVOLUMES to determine the following database information, among other things:

  • Displaying the description and size of the volume

    SELECT path, configuredsize

    FROM SYSINFO.DATAVOLUMES

  • Displaying the area available for data and the area used for data of the volume with ID 1

    SELECT usablesize, usedsize, usedsizepercentage

    FROM SYSINFO.DATAVOLUMES

    WHERE id = 1


-10810: Session already in use - SAP Documentation

Background documentation -10810: Session already in use

Explanation

An SQL statement is already being executed in this thread for this database session.

User Response

Avoid calling SQLDBC methods from signal handlers, unless you are certain that no SQL statements will be executed in the application program when the signal is triggered.


25606: Different byte swap of source and target machine; LOB values may be corrupted after import - SAP Documentation

Background documentation 25606: Different byte swap of source and target machine; LOB values may be corrupted after import

Explanation

A warning appears when you use the Loader command for importing data. The table to be imported contains LOB values. The byte swap of the source and target computers is different. For this reason, LOB values may be incorrect or corrupted once they have been imported. This warning does not cause the command to terminate.

User Response

Check the LOB values in the database instance after they have been imported:

  • If they have been imported without any errors, you do not need to take any action.

  • If the LOB values contain errors, they must be re-imported.


Error Codes - SAP Documentation

Procedure documentation Error Codes

The Configuration user menu of the DBA Cockpit contains a display of error codes.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Error Codes [image] .

Result

You see a list of the error codes and messages that are saved in the database table MESSAGES.


Defining Constraints for Columns - SAP Documentation

Procedure documentation Defining Constraints for Columns

A constraint for a column is an integrity condition that must be met by all column values.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the ALTER privilege for the table to which the column belongs.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • Columns have been created for the table already.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the explorer tree.

  2. In the context menu of the table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Open the Constraints tab page.

  5. To define a new constraint, choose Add Constraint in the context menu of the editor window and enter the properties of the constraint.

    To change the definition of a constraint, overwrite the corresponding property in the editor window.

    More information:

    SQL Reference Manual,

    • Constraint Name (constraint_name)

    • CONSTRAINT Definition (constraint_definition)

  6. In the context menu of the editor window, choose Create Table (if you are creating a new table) or Alter Table (if the table already exists).

More Information

SQL Reference Manual, Constraint Definition (constraint_definition)


-25204: Column '<column_name>' - ZONED field: 20 bytes maximum (double if HEX) - SAP Documentation

Background documentation -25204: Column '<column_name>' - ZONED field: 20 bytes maximum (double if HEX)

Explanation

The command to export or import data contains an error.An explicit column description contains a file field of type ZONED. Its length does not correspond to the length specified in the error message.

User Response

Correct the entry and re-execute the command.


25967: Error at position <file_position> in input file <file_name> - SAP Documentation

Background documentation 25967: Error at position <file_position> in input file <file_name>

Explanation

You have executed a command to import data (IMPORT) of a table in the PAGE format. An error occurred at the position <file_position> in the file <file_name>. See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


Using Database Functions - SAP Documentation

Procedure documentation Using Database Functions

Prerequisites

  • You are logged on to the database as a database user.

  • You own the database function.

  • You have the EXECUTE privilege for executing the database function and assigning this authorization to other users.

    More information: SQL Reference Manual, Privileges: Overview

  • The database is in the ONLINE operational state.

Procedure

  1. Open the SQL editor.

    More information: Entering and Executing SQL Statements

  2. Call up the user-defined function in the same way as you would call up a predefined function.

    More information: SQL Reference Manual, Database Function Call (dbfunction_call)

Example

SELECT hno, hotel.avgprice(zip) avgprice FROM hotel.hotel WHERE hno < 100

| HNO | AVGPRICE |

| -------- | --------------- |

| 10 | 135.00 |

| 20 | 70.00 |

| 30 | 45.00 |

...

More Information

SQL Tutorial, Database Functions


EXPORT USER - SAP Documentation

Background documentation EXPORT USER

You can use the EXPORT USER command to export data and objects that are owned by the database user who is logged on to the database.

Prerequisites

You can use all of the demo data in database DEMODB. Start the Loader and log onto demo database DEMODB as database administrator MONA with the password RED.

Use the session mode: loadercli -d demodb -u mona,red

Activities

The data of user MONA is to be exported. You can make entries after the keyword CATALOG and/or DATA to select what is to be exported, the database catalog and/or the data belonging to the application.

Export of the Database Catalog of the Database User who is Logged On

You can export the database catalog information of the database user belonging to the application.

EXPORT USER

  CATALOG OUTSTREAM 'mona_ddl.catalog'

The database catalog (CATALOG) is exported in the DDL (default value) format.

See also: Loader, Data Stream

Exports the application data of the database user who is logged on

You can export the application data of the database user.

EXPORT USER

  DATA OUTSTREAM 'mona_pages.data'

The application data (DATA) is exported in the PAGES format (default value).

EXPORT DB

  DATA OUTSTREAM 'mona_records.data' RECORDS

The application data (DATA) is exported in the RECORDS format.

A PAGES export uses a database format (based on a page), and is therefore faster than an export that uses the RECORDS format of the Loader.

You may not change a data file in either case as the binary format is specific to the Loader.

See also: Loader, PAGES, RECORDS

Export of the Database Catalog and the Application Data of the Database User who is Logged On

You can export the data belonging to the application of the database user logged on to the database.

EXPORT USER

  CATALOG OUTSTREAM 'mona_ddl.catalog'

  DATA OUTSTREAM 'mona_pages.data'

Note the sequence of the syntax elements. Always enter the syntax element for exporting the database catalog first, and then the syntax element for exporting the application data.

Excluding Tables from the Export

By specifying a data stream after the keyword CONFIGURATION, you can exclude the application data of tables specified in this data stream. The tables must be identified in the data stream by specifying the schema and table name.

The CITY and HOTEL tables are to be excluded from the export. Create the hotel_table.configuration file with the following contents:

HOTEL,CITY

HOTEL,HOTEL

Specify the following export command in the Loader session mode. Note the sequence of the syntax elements. First, enter the syntax element that excludes the table from the export.

EXPORT USER

  CONFIGURATION INSTREAM 'hotel_table.configuration'

  CATALOG OUTSTREAM 'mona_ddl.catalog'

  DATA OUTSTREAM 'mona_pages.data'

The database catalog entries of all tables are always imported, regardless of the restrictions stipulated in hotel_table.configuration.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries from the SYSLOADER.TRANSFORMATIONMODEL table are exported to the specified data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

EXPORT USER

  CATALOG OUTSTREAM 'mona_ddl.catalog'

  PACKAGE OUTSTREAM 'mona_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Complete Syntax of the EXPORT USER Command

Combining the syntax options can result in correspondingly complex commands. Observe the sequence of the syntax elements.

EXPORT USER

  CONFIGURATION INSTREAM FILE 'hotel_table.configuration' CSV ASCII

  CATALOG OUTSTREAM FILE 'mona_ddl.catalog' DDL

  DATA OUTSTREAM FILE 'mona_pages.data' PAGES

  PACKAGE OUTSTREAM FILE 'mona_csv.package' CSV

For a complete syntax description, see the EXPORT USER command in the Loader documentation.

More Information

Other example commands for Exporting

Corresponding Import command IMPORT USER

Session Mode


-28007: OID not compatible with given class - SAP Documentation

Background documentation -28007: OID not compatible with given class

Explanation

An attempt was made to dereference an object whose OID does not match the specified class. The types of the OID and object are not compatible.

User Response

Contact Support.


-901: Log full - SAP Documentation

Background documentation -901: Log full

Explanation

The log area is full. Possible reasons:

  1. No log backups are active. Database Manager makes modifications which, together with modifications of other transactions, cause the log area to overflow.

  2. Log backups are being performed. However, the backups are not running fast enough, or there is a very long transaction whose modifications together with the modifications of transactions running in parallel result in a log area overflow. Database Manager makes modifications.

The issued SQL statement fails.

User Response

  1. Back up the log area. Repeat the SQL statement.

  2. The database system saves the log area needed by the very long transaction in other areas of the database instance. The command can then be repeated. Check whether this situation occurs frequently, that is whether the log area is too small for the number of users and average transaction length. Then expand the log area. You should also check whether an error in the application programming results in the very long or endless transaction, and correct this if necessary.


-25010: <SQL_error_text> - SAP Documentation

Background documentation -25010: <SQL_error_text>

Explanation

This error number applies to SQL errors reported by the database instance during the processing of database user's SQL statements.

User Response

Fix the cause of the error and restart the Loader.


-10105: Codepage not supported (<name>) - SAP Documentation

Background documentation -10105: Codepage not supported (<name>)

Explanation

SQLDBC does not support the requested <name> codepage.

User Response

Chec the specified value.The value in the CODEPAGEID column must match one of the values from the SYSLOADER.CODEPAGE system table.


-28604: Trying to queue too many data packets when sending object data - SAP Documentation

Background documentation -28604: Trying to queue too many data packets when sending object data

Explanation

The upper limit for the length of the wait queue for non-shared memory has been reached. This error often occurs in mass operations if there are too many objects in the wait queue.

User Response

Change the code that controls the wait queue for packets, so that fewer packets end up in the queue. Mass operations are to send a maximum of 100 packets to the wait queue.


XCONS Options for Displaying Information about the Database - SAP Documentation

Procedure documentation XCONS Options for Displaying Information about the Database

The following sections describe how you can call up XCONS directly on the command line.

However, we recommend that you do not call XCONS directly from the command line but use Database Manager CLI or CCMS instead. In this way, you avoid problems with access rights on Unix and Linux.

More information:

  • Database Manager CLI, show

  • Database Administration in CCMS, Database Console

Prerequisites

XCONS is installed on the database computer.

Procedure

Syntax

x_cons <database_name> <command> [<interval> [<repeat>]]

XCONS: Options
Option | Description
<command> | XCONS command
<interval> | Time between repetitions of the same command. If you do not specify <interval>, the command is only executed once.
<repeat> | Number of times the command is repeated. Note that if you specify <interval> but not <repeat>, the command is repeated indefinitely.
XCONS: Commands
Command | Description
affinity <uktindex> | Caution Caution This command was designed for development and testing purposes only. Do not use it in production operation, but only when requested to do so by the support team. End of the caution. Assigns the user kernel thread with the index <uktindex> to a specific processor.
cancel <taskindex> | Cancels the command that is currently being executed by the task with the index <taskindex>
diagnose_pagecache | Analyzes the page cache The system writes the results to the kernel log file. More information: Database Administration, Log Files
kill <taskindex> | Closes the session of the task with the index <taskindex>
pagecache_release | Releases the page cache
procmask <procmask> | Caution Caution This command was designed for development and testing purposes only. Do not use it in production operation, but only when requested to do so by the support team. End of the caution. Only on Microsoft Windows: Permanently assigns a user kernel thread to a specific processor.
show active [dw | sv | us | gc | fs | tw | <task_type>] | Shows statistical information about active tasks You can filter by task types: dw (Data Writer = Pager), sv (Server Task), us (User Task), gc (Garbage Collector), fs (Floating Service), tw (Tracewriter), and other task types. For more information, see Glossary, Task.
show aio | Only for backups; volume access statistics
show all | All available information and statistics
show io | Volume access statistics
show moveinfo | Only for load balancing; History and how tasks are currently moving between user kernel threads
show queues | Queues
show regions | Information about the critical regions
show rte | Information about the runtime environment (threads, and so on)
show runnable [dw | sv | us | gc] | Information about runnable tasks; can also be used for specific task groups only
show sleep | Statistics that indicate how long the individual user kernel threads were suspended
show state | Operational state of the database In addition to the operational states, intermediate statuses are also displayed here. These are short-term statuses occupied by the database when it is transferred from one operational state to another, for example: STARTING, SHUTDOWN, SHUTDOWNREINIT, SHUTDOWNKILL, STOP, KILL, ABORT, UNKNOWN
show storage | Memory usage On Microsoft Windows, the task stack is also displayed.
show suspends | Reasons why tasks that are currently suspended have been suspended
show t_cnt [dw | sv | us | gc | <taskindex>] | Displays detailed information about all tasks in a specific task group or about the task with the index <taskindex>
show t_move | Only for load balancing; indicates whether tasks can currently be moved from one user kernel thread to another
show t_queue | Task queues
show t_reg | Shows semaphores (use of critical regions by the tasks)
show t_stat | Task statistics
show tasks | Statistics for all tasks
show thrd_times | On Microsoft Windows only. Processor time used by threads
show versions | Database kernel and the runtime environment versions
time <enable | disable> | Activates the internal time measurement function Note that this can compromise the performance of your system.
trace_flush | Flushes the trace file

Example

To display all active tasks of the DEMODB database on Microsoft Windows and then refresh the information 10 times in intervals of 1 second, enter the following command:

x_cons DEMODB show active 1 10

SERVERDB: DEMODB

ID UKT Win TASK APPL Current Timeout Region Wait tid type pid state priority cnt try item

ID UKT Win TASK APPL Current Timeout Region Wait tid type pid state priority cnt try item T2 2 0xF20 Logwr Vvectorio 0 1 35370(r) T17 7 0xB1C User 2984 LogIOwait(234) 0 0 70643(s)

[...]

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases


From -2000 to -2999 - SAP Documentation

Background documentation From -2000 to -2999

Database Kernel Error Messages
-2000 | Row too long
-2001 | Key too long
-2002 | One output column too long
-2003 | Output columns too long
-2004 | Numeric constant too long
-2008 | Data area too small
-2009 | Join columns too long
-2010 | Assignment impossible, char value too long
-2012 | View column list too long
-2013 | Select column list too long
-2014 | Identifier too long
-2020 | Data buffer too small
-2025 | Invalid number of backup devices
-2026 | Invalid label
-2027 | Space for converted value too small
-2028 | Sequence <sequence name> exhausted
-2029 | <sequence name>.CURRVAL is not yet defined in this session


-805: Program must be precompiled - SAP Documentation

Background documentation -805: Program must be precompiled

Explanation

The common type definitions of the precompiler runtime system or of the include files no longer correspond to the precompiler types.

User Response

Check the version numbers of the precompiler, precompiler runtime system, and the include files and precompile again, if necessary.


Updating the System Tables - SAP Documentation

Procedure documentation Updating the System Tables

In the system tables of a database, the system stores information about database objects and their relationships to each other, database states, statistics, database operation, and database settings.

Prerequisites

  • You are logged on to the database as a database system administrator or DBM operator with server authorization for using the Loader or loading system tables.

    More information: Glossary, Server Permission

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Load System Tables [image] .

  3. If necessary, enter the name and password of the database system administrator.

  4. To open the dbm.ins log file after the update, select the Open installation log after upgrade system tables checkbox.

  5. Choose Load.

More Information

System Tables documentation

Database Administration, Log Files


-24999: ERR - common error - SAP Documentation

Background documentation -24999: ERR - common error

Explanation

An error that Database Manager cannot analyze properly has occurred.

User Response

Contact Support.


Remote SQL Server - SAP Documentation

Procedure documentation Remote SQL Server

The Messages user menu in the DBA Cockpit contains, among other things, the log of the X server (remote SQL server log). If network problems occur between an application server and the database computer, these problems and errors are stored in the X server log.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Diagnosis [image] Messages [image] Remote SQL Server [image] .

Result

Check the log.

More Information

Database/liveCache Alert Monitor, Connectivity

Database Administration, Log Files


-2004: Numeric constant too long - SAP Documentation

Background documentation -2004: Numeric constant too long

Explanation

  1. The number contains more than 38 digits.

  2. The number does not comply with the definition of the range of values.

User Response

The number which was incorrectly entered may be found out from the position specification in the error message.

  1. The number must be reduced to 38 significant digits and be specified as a floating point number, if necessary.

  2. Check the definition of the value range and correct the specification of the number accordingly.


-23203: Cannot show tables of users, wrong database version! - SAP Documentation

Background documentation -23203: Cannot show tables of users, wrong database version!

Explanation

The system table DOMAIN.TABLES does not contain all the columns required to display the tables in the catalog tree structure.

User Response

Use an earlier version of SQL Studio.


-25020: No more memory available - SAP Documentation

Background documentation -25020: No more memory available

Explanation

A command or statement cannot be executed because of limited memory space.

User Response

No user action possible.


-23072: Representation of null value too long - SAP Documentation

Background documentation -23072: Representation of null value too long

Explanation

The NULL value display contains more than 16 characters.

User Response

Choose a NULL value display with less than 16 characters.


Thread Statistics - SAP Documentation

Procedure documentation Thread Statistics

In the Kernel Threads user menu in the DBA Cockpit you can find, among other things, a display of statistical values of task activities.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] Kernel Threads [image] Thread Statistics [image] .

Result

The system collects statistical values for the threads since the last start of the system.

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases


-25311: No Data for NOT NULL - column without default (<column_name>). You have either not specified this column in the command or there is no data in the data file for this column - SAP Documentation

Background documentation -25311: No Data for NOT NULL - column without default (<column_name>). You have either not specified this column in the command or there is no data in the data file for this column

Explanation

Error in the Loader command for importing data. This error occurs if, for a column that has been defined as NOT NULL and that has no system default value, no data is found in the data stream, or if the column is not specified in the command.

User Response

Correct the values or the command and re-execute the command.


Forum - SAP Documentation

Background documentation Forum

Non-SAP customers can obtain help on the database system via the SAP MaxDB forum in the SAP Developer Network (SDN):

https://forums.sdn.sap.com/forum.jspa?forumID=90&start=0

More Information

Support


My Repository - SAP Documentation

Background documentation My Repository

A repository is a central storage location to which you can, for example, save SQL statements or the definition of database objects.

In the Database Studio Explorer, the following repositories are available under My Repository:

Database Studio: Repositories
Property | Description
My Objects | Objects in the logged-on user's private branch of the repository
Shared Objects | Objects in the public branch of the repository
Local User Folder | Local, user-specific folder in the file system Example Example <user_home>\sdb\My Local Folder End of the example. To change the local user folder, choose [image] Window [image] Preferences [image] Database Studio [image] Repository [image] and enter the new location.
Packages | Loader directory, used for exporting and importing data More information: Exporting and Importing: Overview

More Information

  • Saving SQL Statements or Definitions of Database Objects in a Repository

  • Editing Objects in a Repository

  • Concepts of the Database System, Repositories


Password - SAP Documentation

Background documentation Password

To log on to the database, you need a password. Note that some restrictions apply, see Conventions for User Names and Passwords.

More Information

  • Database Administration, Managing Users

  • Database Manager CLI, user_put (only for the database system administrator and DBM operators)

  • Database Administration in CCMS, User Data

  • SQL Reference Manual, CREATE USER, ALTER USER, ALTER PASSWORD Statement


-25551: Error importing statistics: <error_text> - SAP Documentation

Background documentation -25551: Error importing statistics: <error_text>

Explanation

You have attempted to import statistics of a table, of a schema, of a database user or of an entire database.An error occurred that is described in more detail in <error_text>.

User Response

Fix the error and re-execute the command.


-25334: File counter for data file exceeded maximum value of 9999 - SAP Documentation

Background documentation -25334: File counter for data file exceeded maximum value of 9999

Explanation

Error executing the Loader command for exporting data.To ensure that data streams generated during a EXPORT TABLE command do not exceed the default size, a series of files will be automatically generated on the basis of the data stream name specified in the command.The maximum number of data files that can be generated is 9999.

User Response

Correct the default size for one single data stream in the EXPORT TABLE command and re-execute the command.


-7071: AUTOSAVE LOG must be stopped - SAP Documentation

Background documentation -7071: AUTOSAVE LOG must be stopped

Explanation

The attempt was made to perform a SHUTDOWN. This is not possible while the autosave log is active.

User Response

Stop the autosave log, then perform the SHUDOWN.


-25405: Invalid ASCII values read or values not sorted in ascending order; The file might be corrupted - SAP Documentation

Background documentation -25405: Invalid ASCII values read or values not sorted in ascending order; The file might be corrupted

Explanation

You have tried to import a codepage file into the SYSLOADER.CODEPAGE table using the SET CODEPAGE command. Checking the CODEPAGE file found that this does not conform to the formatting of CODEPAGE files.

User Response

Import the desired CODEPAGE file into the CODEPAGE index of the Loader from the web site http://www.unicode.org/ and re-execute the SET CODEPAGE command.


-25232: Wrong keyword - SAP Documentation

Background documentation -25232: Wrong keyword

Explanation

The command to export or import data contains an error.The entered command contains an unknown keyword.

User Response

Correct the command and then re-execute it.


-1402: Integrity violation - SAP Documentation

Background documentation -1402: Integrity violation

Explanation

Insertions or updates would violate integrity constraints specified in the base or view table definition.

User Response

The error message specifies the column which would violate the integrity constraints. Correct the input value for the relevant column.


-7017: User not allowed - SAP Documentation

Background documentation -7017: User not allowed

Explanation

  1. You cannot grant privileges to yourself.

  2. You cannot specify identical names in a GRANT USER statement.

User Response

Change the user name.


-828: Duplicate variable name - SAP Documentation

Background documentation -828: Duplicate variable name

Explanation

The name was already specified for an SQL variable.

User Response

Rename the SQL variable.


-24909: ERR_DBAUNKNOWN - SYSDBA unknown - SAP Documentation

Background documentation -24909: ERR_DBAUNKNOWN - SYSDBA unknown

Explanation

The SYSDBA (database system administrator) required to load the system tables is not known to the DBM server.

User Response

Specify the database system administrator.


650: Work rolled back - SAP Documentation

Background documentation 650: Work rolled back

Explanation

The user transaction was canceled implicitly and reset with an implicit ROLLBACK statement because the log area is full.

User Response

The error text contains a precise description of the error. Save the log area (log backup).


Old Messages - SAP Documentation

Procedure documentation Old Messages

The Kernel Messages user menu of the DBA Cockpit contains, among other things, a display of the old kernel log. The messages output to the kernel log knldiag.old support you during the interpretation of the events that occurred before the database system was started.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Diagnosis [image] Kernel Messages [image] Old [image] .

Result

The log (kernel log knldiag.old) written before the last database start is shown.

You can use the navigation help (Start of File, End of File, Start of Write Cycle, Current Write Position) for orientation within the message files.

Use Import File to update the display.

More Information

Database Administration, Log Files


-10906: Internal Error: Entry for valindex (<number>) not found - SAP Documentation

Background documentation -10906: Internal Error: Entry for valindex (<number>) not found

Explanation

The method that was called failed during the transfer of LOB values, because the internal structure of the LOB column <number> is inconsistent.

User Response

Check the kernel log for more information about the error.


-904: Space for result tables exhausted - SAP Documentation

Background documentation -904: Space for result tables exhausted

Explanation

There is no more memory space available for results tables. Possible reasons:

  1. The storage space available for results tables is too small.

  2. The database application generated too much temporary information.

In both cases, the execution of the SQL statement was terminated and the user was disconnected from the database system by an implicit RELEASE statement in the format ROLLBACK WORK RELEASE.

User Response

  1. Reissue the SQL statement after a new CONNECT statement. At this time another user may have defined fewer result tables or generated less temporary information.

  2. Use the Database Manager to define more disk space.

  3. Use an EXPORT TABLE command to transfer tables and create more space.


-28817: Wrong object length - SAP Documentation

Background documentation -28817: Wrong object length

Explanation

An object does not fit in the memory.This is an internal liveCache error that cannot be caused by incorrect handling of the OMS API.

User Response

Contact Support.


Checking Database Structures - SAP Documentation

Procedure documentation Checking Database Structures

You check whether the database structures are consistent, the keys have the correct length, and the keys are sorted in ascending order.

Recommendation Recommendation

Check the database structures once a week.

Checking the database structure is CPU-intensive and time-consuming because the system carries out many I/O operations. In your production system, schedule database structure checks only at times when the load on the database system is low, or carry out the checks on a copy of the current database.

More information: Database Administration, Database Copy

End of the recommendation.

Prerequisites

You are logged on to the database as database system administrator or as a DBM operator.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Check Database Structure...

  3. Select the check procedure.

    Procedures for Checking Database Structures

    Procedure

    Options

    Operational State

    Description

    Check database structures in operational state ONLINE

    Except Indexes: Indexes are not checked. This option usually speeds up the check.

    ONLINE

    The database system checks the structural consistency of all the tables, indexes, LOB columns and so on, in the cache and the data area.

    The database system does a complete run through all B* trees and page chains. It checks whether all the pages of the B* trees and page chains can be accessed and whether the administration structures (for example the separators on the B* tree index level) on the pages are intact.

    Whenever the database system reads a data page from the data area, it calculates a checksum that has to match the checksum saved on the data page.

    In addition, it also checks the key length and whether it is sorted in ascending order, among other things.

    Check database structures and clear converter in operational state ADMIN

    -

    ADMIN

    The database system initially executes the same checks as in the ONLINE operational state.

    Afterwards, the database system cleans the converter on the basis of the results: It deletes all pages it did not read during the check, which are the pages that no longer exist in the database.

    Check database structure for a selected table in operational state ONLINE

    With Long Check: If the base table to be checked contains LOB columns, the system checks whether all the LOB values defined actually exist. To ensure the consistency of the transaction, an SQL share lock is requested for the duration of the check.

    Catalog: The database catalog for this table is checked. This option cannot be combined with the Extended or With Long Check options.

    ONLINE

    You check a specific table.

    The database system performs the same checks as during the check of the entire database in the ONLINE operational state.

Result

If the system finds errors, it writes them to the Database Errors log file (kernel log file).

More information: Displaying Configuration and Log Files

More Information

Database Administration, Checking Database Structures


-6016: Duplicate format code - SAP Documentation

Background documentation -6016: Duplicate format code

Explanation

  1. A format element was specified several times in the function TO_DATE.

  2. In the format specification of the TO_DATE function, format elements were specified which must not occur together. For example, day of year (DDD) and Julian calendar date must not occur together. There must not be several specifications denoting the year, e.g. YYYY and YY, or the month, e.g. MM and MONTH.

User Response

  1. Remove the format elements that are specified too often.

  2. Remove one of the format elements that cannot occur together.


-25403: Error opening/reading code page file <code_page>. Can't use code page conversion - SAP Documentation

Background documentation -25403: Error opening/reading code page file <code_page>. Can't use code page conversion

Explanation

You have tried to import the codepage file <code_page>.txt in the SYSLOADER.CODEPAGE table using the SET CODEPAGE command. The file is not located in the CODEPAGE index or it cannot be opened.

User Response

Import the desired CODEPAGE file into the CODEPAGE index of the Loader from the web site http://www.unicode.org/ and re-execute the SET CODEPAGE command.


-1114: Communication packet too small - SAP Documentation

Background documentation -1114: Communication packet too small

Explanation

The SQL statement is so long that not all pieces of information to be exchanged between client and server can be stored in the communication packet provided for this purpose

User Response

Simplify the SQL statement or split it into several SQL statements. If this is not possible, check whether the database parameter PACKET_SIZE can be increased. This parameter indicates the size of the communication packet.


-1015: Too many values - SAP Documentation

Background documentation -1015: Too many values

Explanation

In an INSERT or UPDATE statement, the number of specified values exceeds the number of column names implicitly specified.

User Response

Match the number of specified values in the SQL statement with the number of specified column names. Use a QUERY statement issued on the system table DOMAIN.COLUMNS for an INSERT statement without column name specification to determine the definition of the table used.


Displaying Information About the Log Area - SAP Documentation

Procedure documentation Displaying Information About the Log Area

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Log Area tab page.

    Log Area: Information

    Property

    Description

    General

    Log settings:

    • Log Mode

    • Overwrite Mode for the Log Area

    • Redo Log Management

    Automatic log backup: Activating or Deactivating Automatic Log Backup

    To change any of these settings, choose the corresponding link.

    Usage

    Free and used space in the log area

    Activities

    Information on logging:

    • Log pages written with redo log entries

    • Wait for Log Writer

      Indicates how often the system had to wait for a commit or rollback for the Log Writer for finish an I/O operation

    • Group Commits

      Indicates how often the system wrote pages that waited for more than one task

    • If the value of Log I/O Queue Overflow is greater than 0, increase the space available for log queues.

      You can configure the number of log queues with the special database parameter LogQueues and the size of the log queues with LogQueueSize.

    Parameters

    Database parameters relevant for log volumes

    More information: Database Administration, Database Parameters

    Log Volumes

    Configured log volumes

More Information

Database Administration, Monitoring Databases

Concepts of the Database System,

  • Log Area

  • How Databases Log Data Changes


-24928: ERR_NOREPLY - no reply available - SAP Documentation

Background documentation -24928: ERR_NOREPLY - no reply available

Explanation

There is no response to an asynchronous request sent to the database instance.

User Response

Repeat the statement until there is a response, and then use the statement that corresponds to the request to retrieve the response. Alternatively, you can immediately use the statement for retrieving the response. This statement waits until the response is provided.


-8016: Table must be a view table - SAP Documentation

Background documentation -8016: Table must be a view table

Explanation

A table which is not a view table was specified for the RENAME VIEW or DROP VIEW statement.

User Response

Include a view table in the SQL statement, or replace the SQL statement with a RENAME TABLE statement or DROP TABLE statement.


-28505: No Component Object found - SAP Documentation

Background documentation -28505: No Component Object found

Explanation

The OMS library could not be loaded when liveCache was started. liveCache cannot run.

User Response

Contact Support.


-28003: Unknown GUID - SAP Documentation

Background documentation -28003: Unknown GUID

Explanation

A non-registered class was addressed.A persistent class must be registered with omsRegClass before it is accessed for the first time.

User Response

Contact Support.


db_addvolume - SAP Documentation

Background documentation db_addvolume

Use this DBM command to create additional data or log volumes for the database. You can create additional log volumes in existing or in new partitions.

Note Note

If you are using Microsoft Windows, note that you cannot compress volumes that are files, and that you cannot store them in a compressed operating system directory either.

End of the note.
Adding Data Volumes

You expand the data area of the database. For that pupose, you can define either the size of the new data volume or a target fill level for the data area.

If this target fill level is less than the current fill level, the DBM command is executed and as many volumes are added as required to reach the target fill level. If the current fill level is less than the target level, the DBM command is not executed.

If you do not enter a volume specification, then a system default for a volume of type file is determined based on existing volume definitions and used. The automatic extension of the data area will only be successful if the size of the existing volume definition is 1024 pages at a minimum (minimum size of a data volume as per SAP MaxDB version 7.7.04). You can use the Database Manager parameter AutoExtDir to define the directory for this system default volume and, using the Database Manager parameter AutoExtSize, define the size for this system default volume (see: dbm_configset).

Prerequisites

You have the server permission ParamFull or AccessUtility.

Syntax

db_addvolume DATA [<definition>]

<definition> :: = -fd <percentage> | <vol_specification>

<vol_specification> :: = <device_name> <vol_type> <size>

Options
Option | Description
-fd <percentage> | Target fill level of the data area in percent The volume is only created if the target fill level has already been reached or exceeded.
<device_name> | Name of the device/file
<vol_type> | Type of the device/file that is to be added Possible values are: F | L | R F: file L: link R: raw device
<size> | Size of the volume to be added in pages, minimum size is 1024 Pages
Reply

OK

<number>

Values for the Reply Fields
Value | Description
<number> | Only after use of the option -fd <filling_level> Number of volumes added, which was required to reach the target fill level

In the event of errors, see Reply Format.

Adding Log Volumes

Define additional log volumes to extend the log area of the database.

If you execute the DBM command without entering a volume specification, then a system default for a volume of type file is determined based on existing volume definitions and used. It is assigned the partition number of the most recently created log volume, even if this no longer exists.

You can use the Database Manager parameter AutoExtDirLog to define the directory for this system default, and the Database Manager parameter AutoExtSizeLog to define its size (see: dbm_configset).

Also use this DBM command to create additional log volumes with mirror volumes. Use the Database Manager parameter AutoExtDirLogMirror to define the directory for the system default of the mirror volume.

Note Note

If the database is not yet mirrored, you first need to change the log mode of the database and then change the volume parameters (see: param_addvolume) to create mirror volumes for existing log volumes.

End of the note.

Use the option <partition_no> to assign the newly created log volume to an existing partition or a newly created one.

According to the default value of the system, the first log volume is assigned to partition no. 1 when the database is created. Each new log volume will be assigned to partition 1 in the same manner if you do not specify a partition number. This also applies if other partitions already exist.

Partition numbers can be freely defined. They do not need to be assigned in sequence.

Prerequisites

You have the server permission ParamFull or AccessUtility.

Syntax

db_addvolume LOG [<definition> [PARTITION <partition_no>]]

<definition> :: = <vol_specification> | <mvol_specification>

<vol_specification> :: <device_name> <vol_type> <size>

<mvol_specification> :: = <device_name> <vol_type> <size> <mdevice_name> <mvol_type>

Options
Option | Description
<device_name> | Name of the device/file
<vol_type> | Type of the device/file that is to be added Possible values are: F | L | R F: file L: link R: raw device
<size> | Size of the log volume to be added in pages
<mdevice_name> | Name of the device/file for the mirror volume
<mvol_type> | Type of the device/file that is to be added as a mirror volume Possible values are: F | L | R F: file L: link R: raw device
<partition_no> | Number of the log area partition to which the new volume or mirror volume should be assigned.
Reply

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, Log Area, Volumes (Permanent Storage)

Database Administration, Planning the Database


CACHESTATISTICS - SAP Documentation

Example documentation CACHESTATISTICS

Use of the system table SYSINFO.CACHESTATISTICS

Prerequisites

Activities

You can use the system table CACHESTATISTICS to determine the following database information, among other things:

  • Displaying all caches whose hit rate is below 90%

    SELECT name, accesscount, hitrate

    FROM SYSINFO.CACHESTATISTICS

    WHERE hitrate < '90'

  • Displaying the caches that show more failed accesses than successful ones

    SELECT *

    FROM SYSINFO.CACHESTATISTICS

    WHERE successfulaccesscount < unsuccessfulaccesscount


-7039: Cycle in referential constraint definition not allowed - SAP Documentation

Background documentation -7039: Cycle in referential constraint definition not allowed

Explanation

The attempt was made to create a referential CONSTRAINT definition which would produce an invalid reference cycle. This CONSTRAINT definition would lead to discrepancies so the database system has rejected it.

User Response

Delete the cycle dependencies.


600: Work rolled back - SAP Documentation

Background documentation 600: Work rolled back

Explanation

Your transaction was implicitly canceled and rolled back by an implicit ROLLBACK statement because

  1. you failed to carry out any operations within a certain period of time, but held locks which other users were waiting for, or because

  2. the database instance was in a deadlock situation. A deadlock situation is a situation in which two or more users hold locks and request further locks that are held by the respective other users. In the simplest case of two users, one user holds one lock at least and requests another lock. But this lock is held by another user who, on the other hand, waits for the lock held by the first user. This situation can only be resolved if one of the users releases the lock already obtained.

User Response

In some cases, the error message contains a more detailed description of the error.In both cases, the lock requests must be checked and modified, if necessary. The last transaction must be repeated.


Overview of SQL Locks - SAP Documentation

Procedure documentation Overview of SQL Locks

The SQL Locks user menu of the DBA Cockpit contains a display of the SQL locks and SQL lock requests.

Procedure

Open the DBA Cockpit and choose [image] Performance [image] SQL Locks [image] Overview [image] .

Result

The system displays detailed information about the locks currently set. This display can be very long in a running SAP system. Therefore, you should always enter the analysis of SQL locks through the overview of wait situations.


What Is an SAP MaxDB Database? - SAP Documentation

Background documentation What Is an SAP MaxDB Database?

An SAP MaxDB database is a set of data with a regular structure. The data in a database consists of the application data (data records in tables) and the database catalog (metadata). Every database has a unique name.

When installing you have the following two options:

  • To install the database software with a database

    In a standard installation of SAP MaxDB with the SAP MaxDB Installation Manager, the entire database software is installed with a database. When you install the software, you can also load the demo data.

    More information: Demo Database

  • To install the database software without a database

    You can choose this option if you only need some of the database tools to manage databases on other computers.

Important Database Properties

Property

Restrictions

Modifiable

More Information

Database name

Conventions for Database Names

No

-

Database System Administrator: Name and password

Conventions for User Names and Passwords

Name: No

Password: Yes

Managing Users

Data area (data volumes): Size (=database size), directory, automatic extension

Log area (log volumes): Size and directory

General database parameters MaxDataVolumes and MaxLogVolumes

More information: Planning Databases

Yes

  • Changing the Database Size

  • Database Parameters

Working memory used by the database

General database parameter CacheMemorySize

Note that this parameter only roughly determines the size of the working memory used by the database. There are database functions which also need a certain amount of working memory, but whose memory consumption is not configured with this parameter.

Yes

  • General Database Parameters

  • Working Memory Areas

Number of CPUs

General database parameter MaxCPUs

Yes

General Database Parameters

Maximum number of parallel database sessions

General database parameter MaxUserTasks

Yes

General Database Parameters

Maximum number of locks

General database parameter MaxSQLLocks

Yes

Configuring Locks for Database Objects

Automatic update of the SQL optimizer statistics

For SAP systems, see SAP note 927882.

Yes

Automating Administration Tasks

Automatic log backup

-

Yes

Automating Administration Tasks

Automatic database start

Only available on Microsoft Windows

Yes

Activating Automatic Database Start

Log settings

-

Yes

Configuring Database Transaction Logging

Database Operational States
Icon | Operational State | Description
 | ONLINE | The database is running. Database users can log on and execute SQL statements. The database system administrator and DBM operators can perform administrative tasks.
- | STANDBY | For standby databases in hot standby systems only Note that you cannot connect to a standby database. It is in a constant restart state.
 | ADMIN | The database is only available for administration tasks.
 | OFFLINE | The database is not running.

More information:

Database Studio, Starting or Stopping Databases

To query or change data in a database, you use the Structured Query Language (SQL). Using SQL, you can also display, change and delete database objects in the database, for example tables or indexes. You use schemas to logically group database objects.

More information: Data Definition, Query, and Manipulation

The database system uses page chains and B* trees as logical structures for accessing the data stored in the database. More information: Logical Access Structures

More Information

  • Technical System Landscape

  • Database Tools

  • Database Administration, Creating Databases


-3074: Statement not possible for external tables - SAP Documentation

Background documentation -3074: Statement not possible for external tables

Explanation

SQL statements for data manipulation and GRANT statements for granting privileges are not allowed for external tables.

User Response

Change the values of the external tables on their corresponding datasources.


-6008: Duplicate index name - SAP Documentation

Background documentation -6008: Duplicate index name

Explanation

There is already an index with the specified name.

User Response

Use another name for the index or delete the existing one.


-7076: No more data to read from tape - SAP Documentation

Background documentation -7076: No more data to read from tape

Explanation

You tried to restore a log backup from a no rewind tape. The given backup is older than the one required. There is no other backup on this tape.

User Response

You no longer need the current tape. Insert the tape with the required backup and repeat the command.


Data Description - SAP Documentation

Object documentation Data Description

Loader provides you with functions for exporting, importing, transporting and formatting data between different data sources and data targets in different granularities.

Loader distinguishes between application data and metadata.

Application Data

Application data is the data that is stored in the database tables. Loader writes the application data to a data stream when exporting from the database system and to the database system when importing from a data stream.

Metadata

The database system manages its own metadata in the database catalog. For Loader, the metadata is the database system’s metadata plus the data that describes the application data, the database catalog information and the transformations according to the Loader’s requirements.

Loader distinguishes between the Loader metadata of the application data, database catalog, and transformation.

Metadata of the Application Data

The metadata of the application data (keyword DATA) is defined in the data streams using Loader commands and SQL statements. If the transformation spans multiple tables, Loader stores this information in the system tables. The corresponding data is stored in the database in the form of pages or rows, and in a data stream in the non-readable formats PAGES and RECORDS or in the readable formats CSV, FWV, FWV BINARY. If the data is transformed as rows, then columns of the external data type CHAR with the code attribute ASCII can be transformed into values of data fields with the code attribute ASCII, UCS-2, or UTF-8.

Metadata of the Database Catalog

Metadata of the database catalog (keyword CATALOG) describes the structure of the data in the database catalog. If the transformation spans multiple tables, Loader stores this information in its system tables. The corresponding data is stored in the database in the form of rows in the system tables and in a data stream in the form of SQL statements for data definition.

Metadata of the Transformation

The metadata of the transformations (keywords CONFIGURATION and PACKAGE) is declared in the form of Loader commands or in the form of Loader-specific system tables. This metadata describes the configuration and the runtime behavior of the transformations. The corresponding data, such as user names and table names, is stored, sorted by referential constraint conditions. In the database, the data is stored in the form of rows in the system tables in a data stream in the readable format CSV.

More Information

  • Data Stream

    Data Format

    Code Specification

    Data Carrier Type

  • Column Description

  • Transformation

  • Exporting: Loader Commands

    Importing: Loader Commands

Loader Commands and SQL Statements


-28015: Wrong alignment of data - SAP Documentation

Background documentation -28015: Wrong alignment of data

Explanation

The attempt to insert a memory area to the free-list-directory for object frames failed. The alignment rule is not satisfied.

User Response

Internal error. Contact Support.


-25227: Specification of conditions exceeds allowed count of conditions - SAP Documentation

Background documentation -25227: Specification of conditions exceeds allowed count of conditions

Explanation

The command to export or import data contains an error.In a command to export or import data, you cannot specify more than a total of 254 conditions for all columns. This value was exceeded in the command to be executed.

User Response

Correct the entry and re-execute the command.


-751: Numeric input parameter overflow - SAP Documentation

Background documentation -751: Numeric input parameter overflow

Explanation

The numeric input value is too large for the database.

User Response

Check the size of the input value and of the range of values valid for the database and modify them, if necessary.


-28808: Hash not found - SAP Documentation

Background documentation -28808: Hash not found

Explanation

A B* tree of a keyed object container could not be found.This is an internal liveCache error that cannot be caused by incorrect handling of the OMS API.

User Response

Contact Support.


Calling the Loader - SAP Documentation

Process documentation Calling the Loader

The Loader database tool consists of a client part and a server part. The Loader client transmits the commands to be processed. The Loader server establishes the connection to the database and processes the commands.

Process

You can install the required Loader software components by specifying the following installation profiles: Loader or all. The way in which the Loader server is called depends on which Loader client you are using.

  • Opening a Session: Loader CLI Options

  • Java Manual, Loader Java Classes

Syntax Rules for Calling Loader

Note the following general syntax rules when calling Loader.

  • Case-sensitivity: No distinction is made between uppercase and lowercase letters. Loader converts all names to uppercase characters internally unless you place character strings in double quotation marks.

  • Keywords: The keywords of Loader (Loader Keywords: Overview) and the SQL keywords (Keyword (keyword)) can both be used to denote database objects if they are placed in single or double quotation marks.

  • Variables: In the documentation variables of Loader options are indicated by angled brackets (Documentation Variable) and variables of Loader commands are indicated by angled brackets (Syntax Rules).

Note Note

The Loader and Java documentation contains only a short summary of the functions of the languages that can be used in Loader. For more information, see the vendor documentation for Java.

End of the note.

More Information

Loader


-28950: System error: missing object flush during commit - SAP Documentation

Background documentation -28950: System error: missing object flush during commit

Explanation

The amount of new objects which are to be written from the local OMS-cache to the core differ from the calculated amount.

User Response

Internal error.


-8050: Migration error - SAP Documentation

Background documentation -8050: Migration error

Explanation

An error occurred while migrating a database instance with a database catalog stored in ASCII format (special database parameter _UNICODE = NO) to a UNICODE database instance (database parameter: _UNICODE = YES). The cause of the error is logged in the knldiag or knldiag.err file.

User Response

The action you need to take depends on what caused the error:

  • "RESTART REQUIRED BEFORE MIGRATION"The database instance and its current software needs to have been in ONLINE mode at least once before the migration can start.

  • "UNHANDLED ENTRY TYPE: " + number of record typeThe database catalog contains a record type that will not be migrated. All unhandled records are collected and an entry is written for each one. Contact Support.

  • "ERROR HANDLING TYPE " + number of record typeAn error has occurred while processing a database catalog record of the type shown in the message. Migration is canceled. The record is saved to the work directory, under the name MIGERRORREC.BIN. Contact Support.

  • "ERROR WHEN RECREATING VIEW" + initial text of the defined viewAn error has occurred while restoring a view table. Depending which error occurred, you must delete the relevant view table and, if necessary, regenerate it after the migration

  • "MIGRATION FAILED FOR TRIGGER:" or "MIGRATION FAILED FOR DBPROC:"Database procedures or triggers were defined based on tables. However, the tables, columns, or users have since been renamed. These cannot be recreated. The system generates a list of all the database procedures and triggers that cannot be recreated. Migration is then canceled. The database procedures/triggers could no longer be used at the time of migration, and so they must be deleted.

  • "CONSTRAINTTEXT IS TOO LONG:" + name of constraintA constraint's definition text would exceed the maximum length if it were converted to UNICODE during migration. You must either delete or modify the constraint.

  • "CATALOG IS UNICODE ALREADY"The database instance already appears to be UNICODE-enabled.

  • "_UNICODE has to be YES for migration"The migration was started even though the database parameter _UNICODE was set as NO.


-8028: UNION columns must be compatible - SAP Documentation

Background documentation -8028: UNION columns must be compatible

Explanation

In a QUERY expression with at least one UNION, INTERSECT or EXCEPT specification, all sequences of selected columns must designate the same number of columns. The data types of the corresponding columns must thereby comply with the conditions valid for comparability.Each data type can be compared to itself. Columns of data type CHAR with the different ASCII and EBCDIC code attributes can be compared to each other, whereby they are implicitly adapted. Columns with the ASCII code attribute can be compared to date, time, and timestamp specifications. All numbers can be compared to each other. In ANSI SQL mode, it is not enough for the data types and lengths of the specified columns to be compatible: they must match. Moreover, only column specifications or * may be specified in the selected columns of the QUERY specifications linked with UNION. Literals may not be specified.

User Response

Use a QUERY statement issued on the DOMAIN.COLUMNS system table to determine the definition of the affected columns. You may like to try to achieve comparability by using a conversion function. This request cannot be made in ANSI SQL mode.

More Information

SQL reference manual, Data Type, Query Expression


Managing Database Landscapes - SAP Documentation

Procedure documentation Managing Database Landscapes

In Database Studio, database landscapes are used for organizing multiple database computers (servers) for easier access and administration.

This graphic is explained in the accompanying text.

Database Landscape

Procedure

Creating New Database Landscapes

  1. In the explorer tree, go to the top level using the Up One Level (Up One Level) button.

  2. In the context menu of Local, choose [image] New [image] Landscape [image] .

  3. Enter a landscape name.

  4. Add database computers and databases to the landscape.

    More information: Showing or Hiding Databases

Importing Database Landscapes from Database Manager GUI

Start Database Studio from the command line using the -ldf <landscape_definition_file> call option.

More information: Starting Database Studio

More Information

Monitoring Databases in a Database Landscape


Database Type - SAP Documentation

Background documentation Database Type

Database Types
Database Type | Description | Restrictions
SAP MaxDB | Relational database system | -
SAP liveCache Technology | Object-based extension of the SAP MaxDB database system You can use SAP liveCache technology either as a normal relational database system, or as a main memory-based special database system. | Only available in SAP systems.


-10861: Invalid use of null pointer for stream handle in parameter (<number>) - SAP Documentation

Background documentation -10861: Invalid use of null pointer for stream handle in parameter (<number>)

Explanation

A null pointer was input when binding a structure for a liveCache stream parameter.

User Response


25602: Possible overflow of integer values for column '<column_name>' - SAP Documentation

Background documentation 25602: Possible overflow of integer values for column '<column_name>'

Explanation

A warning appears when you use the Loader command for exporting data. The length specified for output is too small. Not all values of the integer data type that are possible based on the column definition in the database instance can be displayed. This warning does not cause the command to terminate.

User Response

No user action is required.


-776: Datafile close error - SAP Documentation

Background documentation -776: Datafile close error

Explanation

An error occurred when closing a datafile for the processing of LONG columns.

User Response

Look up in the trace file *.pct in which column the error occurred. Then check the datafile.


-8014: Result table must be FOR REUSE - SAP Documentation

Background documentation -8014: Result table must be FOR REUSE

Explanation

A named result table which was not created with FOR REUSE was used in the FROM clause of a QUERY statement or SINGLE SELECT statement.

User Response

Create the named result table with FOR REUSE and reissue the SQL statement.


-7503: Constructor not found - SAP Documentation

Background documentation -7503: Constructor not found

Explanation

The CREATE DBPROC statement of an external C++ database procedure contains a database procedure name that does not match any of the C++ method names in the library identified by the package.

User Response

Correct the spelling of the database procedure name.


LENGTH(a) - SAP Documentation

Background documentation LENGTH(a)

LENGTH(a) is an arithmetic function that specifies the number of characters or bytes that are required to represent the expression a internally. The function can be applied to all data types (including LOB).

LENGTH(a)
a | Result of the LENGTH(a) function
a is a value of data type CHAR | VARCHAR <ASCII|UNICODE> with n characters | Number of characters n
a is a value of a different data type of length n | Length n in Bytes
a is a NULL value | NULL value
a is a special NULL value | Special NULL value

The number of characters or the length in bytes is determined without taking into account any trailing blank characters (code attribute ASCII, UNICODE) or binary zeros (code attribute BYTE).

Example

SQL Tutorial, Information About Character Strings


-2010: Assignment impossible, char value too long - SAP Documentation

Background documentation -2010: Assignment impossible, char value too long

Explanation

In an INSERT statement with a QUERY expression or in an UPDATE statement, the attempt was made to assign a character string to a column of data type CHAR. This character string was too long. The error message is returned for the first occurring value with an exceeding length, not while analyzing the maximum column lengths.

User Response

You can determine rows with an exceeding length by means of SELECT... WHERE LENGTH (<column name>) > <unsigned_integer>. You can increase the length of the corresponding column by means of an ALTER TABLE statement.


TRANSFORMATIONMODEL - SAP Documentation

Object documentation TRANSFORMATIONMODEL

The system table SYSLOADER.TRANSFORMATIONMODEL contains all entries on Loader transformations.

Structure

If a transformation was successful, the entries of the table TRANSFORMATIONMODEL are deleted. If a transformation could not be completed successfully, the data is retained in this system table and is used if the transformation is restarted. You can save the contents of the system table TRANSFORMATIONMODEL, even if the transformation is successful, by exporting the values. To do this, specify a PACKAGE data stream in the appropriate Loader command.

TRANSFORMATIONMODEL
PACKAGEGUID | CHAR(24) BYTE | Unique identification of the transformation package
TASKID | FIXED(6,0) | Identification of the transformation task
SERVERNODE | CHAR(32) | Computer node on which the database to be transformed is installed
SERVERDB | CHAR(32) | Name of the database that is to be transformed
USERNAME | CHAR(32) | User name
CODETYPE | CHAR(32) | Code type of the database (ASCII | UNICODE)
CODEPAGEID | CHAR(32) | Identification of the ASCII code page that is to be used
STORAGEDEVICE | CHAR(32) | External data carrier that is to be used
TRANSACTIONSIZE | FIXED(6,0) | Minimum number of rows that are to be transformed before the status of the transformation step is logged
TRANSFORMATION | CHAR(32) | Transformation type (EXPORT | IMPORT | UPDATE)
PART | CHAR(32) | Parts of the database catalog (ALL | USER | SCHEMA| TABLE)
STEPID | FIXED(6,0) | Identification of the transformation step
OWNER | CHAR(32) | Table owner
SCHEMANAME | CHAR(32) | Schema name
TABLENAME | CHAR(32) | Table name
TABLETYPE | CHAR(8) | Table type (TABLE | VIEW| SYNONYM)
CATALOGSTREAMNAME | CHAR(254) | Name of the CATALOG data stream
CATALOGSTREAMTYPE | CHAR(32) | Data carrier of the CATALOG data stream (FILE | PIPE | TAPE)
CATALOGSTREAMEBID | CHAR(32) | External backup ID of the CATALOG data stream
CATALOGSTREAMFORMAT | CHAR(32) | Format of the CATALOG data stream (DDL | XML)
DATASTREAMNAME | CHAR(254) | Name of the DATA data stream
DATASTREAMTYPE | CHAR(32) | Data carrier of the DATA data stream (FILE | PIPE | TAPE)
DATASTREAMEBID | CHAR(32) | External backup ID of the DATA data stream
DATASTREAMFORMAT | CHAR(32) | Format of the DATA data stream (CSV | DDL | FWV | PAGES | RECORDS)
DATASTREAMHEADERBLOCK | FIXED(6,0) | Start position of the header of the DATA data stream (in 2 GB blocks)
DATASTREAMHEADERPOS | FIXED(10,0) | Start position of the header of the DATA data stream (in bytes, less than 2 GB)
DATASTREAMDATABLOCK | FIXED(6,0) | Start position of the data of the DATA data stream (in 2 GB blocks)
DATASTREAMDATAPOS | FIXED(10,0) | Start position of the data of the DATA data stream (in bytes, less than 2 GB)
DATASTREAMTRAILERBLOCK | FIXED(6,0) | Start position of the trailerof the DATA data stream (in 2 GB blocks)
DATASTREAMTRAILERPOS | FIXED(10,0) | Start position of the trailer of the DATA data stream (in bytes, less than 2 GB)
EXCLUDE | BOOLEAN | Transformation step was excluded (TRUE) or not (FALSE)
RESTART | BOOLEAN | Transformation step was executed (TRUE) or not (FALSE)
RESTORE | BOOLEAN | Transformation command was generated (TRUE) or not (FALSE)
PAGECOUNT | FIXED(10,0) | Number of pages that were transformed during a transformation step
ROWCOUNT | FIXED(10,0) | Number of rows that were transformed during a transformation step
STARTTIME | TIMESTAMP | Start of the transformation step
ENDTIME | TIMESTAMP | End of the transformation step
REQUESTTIME | FIXED(15,10) | Total execution time of a kernel request within a transformation step
RECEIVETIME | FIXED(15,10) | Total execution time of a kernel reply within a transformation step
IOTIME | FIXED(15,10) | Total I/O time within a transformation step
LOGTIME | FIXED(15,10) | Total time required for the management of actions within a transformation step
SEQ_NO | FIXED(6,0) | Sequence number with which split GRANT statements can be assigned to each other
CMD | CHAR(254) | Authorization statement

More Information

Loader, Transformation, Restarting, Additional Log Functions (package_spec)

Loader, Loader System Tables

Definitions of the System Tables


Opening a Session: Loader CLI Options - SAP Documentation

Procedure documentation Opening a Session: Loader CLI Options

You can call Loader using the Loader CLI Client (LOADERCLI). By specifying the corresponding options, you can make various settings, including the settings in operating mode and connection information.

Procedure

You can specify options when you call Loader CLI:

loadercli [<options>]

Call up the help function to get an overview of all options:

loadercli -h

Operating Modes

Imports to Loader can be made in three different operating modes: interactive transport mode, command file mode and session mode.

  • In transport mode, interactive entries are prompted by the user in order to export application data from one database and import it into another database. The input parameters and the loader configuration file are used to generate and execute the syntax of the loader commands. The generated Loader commands are optionally displayed on the console. The user can then use them as templates for custom commands. No knowledge of the loader syntax is required in transport mode.

  • In command file mode, a command file written by the user is processed sequentially. Unlike in transport mode, the command file can contain any sequence of Loader commands and SQL statements. In most application cases, the Loader commands generated in transport mode only need to be slightly modified to create a command file.

  • In session mode the user can transfer the Loader commands and SQL statements to Loader directly via the console.

As of SAP MaxDB version 7.7, Database Studio database tool provides a GUI for Loader. More information: Database Studio

  • Exporting Data and/or Information from the Database Catalog

  • Importing Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

Setting up the Operating Mode: Loader CLI Options

The option required for determining the desired operating mode always has to be specified.

options
-p [<package_name>] | Loader CLI transferred into transport mode if you specify option –p. More information: Transport Mode
-b <command_file> [<connect_options>] [<in_output_options>] [<version_options>] | Loader CLI is transferred into command file mode if you specify option –b. More information: Command File Mode
[<connect_options>] [<in_output_options>] [<version_options>] | Loader CLI is transferred into session mode if you specify neither option –p nor option –b. More information: Session Mode
Further Loader CLI Options
connect_options
-d <database_name> | Name of database
-u [<database_user>[,<password>]] | Name and password of database user
-n <database_computer>[:<port>] | Name of database computer
-s <schema_name> | Name of schema
-e <encryption> | Encryption method

More information: Opening a Database Session: Loader CLI Options

in_output_options
-o[w|a] <file_name> | Name of output file
-cs <separator> | Command separator
-ps<number> <string> | Substitution parameter
-E <number> | Maximum number of errors allowed

More information: Input and Output: Loader CLI Options

version_options
-V | Version of Loader server
-v | Version of Loader CLI
-R <installation_path> | Directory containing the programs that are dependent on the version of the database software

More information: Determing Version Information: Loader CLI Options

Result

Before connecting to the database, Loader CLI evaluates the relevant options. Loader then executes the Loader commands and SQL statements in the command file (or those entered interactively). In all three operation modes, Loader writes a log file and, if appropriate, additional information (Loader Log File, Loader Log Functions).

If errors occur when Loader commands or SQL statements are processed, the way in which Loader responds depends on the operation mode in which it was used.

  • Transport mode: Loader stops processing the Loader commands and SQL statements when an error occurs. Detailed information is written to log files. For the export and import, the errors are written to the log file. With transports, there is a separate log file for the export and the import.

  • Command file mode: After a defined number of errors, Loader stops processing Loader commands and SQL statements and closes. You can use the option –E to define the number of errors that Loader ignores before it stops processing commands. If you do not use the option –E, Loader stops running after the first command with an error. You cannot react to the errors when you are using Loader CLI.

  • Session mode: Loader reports the error that has occurred and then awaits further input for processing.

Example

Loader Tutorial, Transport Mode, Command File Mode, Session Mode

More Information

Calling the Loader

Loader


Starting Database Studio - SAP Documentation

Procedure documentation Starting Database Studio

Prerequisites

  • You have installed the Java runtime environment, version ≥ 5.

  • The installation-specific X server for your Database Studio installation is running. In normal operation, Database Studio automatically starts the corresponding X server. If the X server is not running, you can manually start it, see Starting the Global Listener and/or Installation-Specific X Servers.

Procedure

Depending on your system environment, you can start Database Studio either from your operating system menu or from the command line.

Caution Caution

For the first start of Database Studio after you have installed the software, the following applies:

  • You are logged on as an operating system user of the Administrators group (Microsoft Windows) or as an operating system user with root privileges (Unix/Linux).

  • Navigate to the directory that contains the dbstudio[.exe] executable and start Database Studio from there from the command line.

End of the caution.
Starting Database Studio from the Start Menu (Microsoft Windows)

Choose [image] Start [image] All Programs [image] SAP MaxDB [image] Database Studio [image] .

Starting Database Studio from the SAP Developer Studio

  1. Start the SAP Developer Studio.

  2. Choose [image] Windows [image] Open Perspective [image] Other ...

  3. Choose Database Studio.

Starting Database Studio from the Command Line

When starting Database Studio from the command line, you can specify call options.

  1. Go to the directory that contains the dbstudio[.exe] file.

  2. On the command line, enter the following command:

    <database_studio_path>\DatabaseStudio\dbstudio[.exe] [[[-l <landscape>] -n <database_computer>] -d <database> -u <DBS_login>,<user_password> [-a <action>]] [-ldf <landscape_definition_file>] [-vm <path_to_Java_VM>/javaw.exe] [-vmargs <VM_arguments>]

Database Studio: Call Options

Call Option

Description

-l <landscape>

Landscape that is to be selected in the explorer tree after starting Database Studio

-n <database_computer>

Name or IP address of the database computer that is to be selected in the explorer tree after starting Database Studio

-d <database>

Database that is to be selected in the explorer tree after starting Database Studio

-u <DBS_login>,<user_password>

User login and password of the corresponding user that is to be selected in the explorer tree after starting Database Studio

-a <action>

<action> ::= DBM|SQL

DBM: Administration Editor is opened after starting Database Studio

SQL: SQL Editor is opened after starting Database Studio

More information: Database Studio Screen Areas

-ldf <landscape_definition_file>

You import a database landscape from Database Manager GUI. In Database Studio's explorer, the imported landscape is displayed under the Imported Landscape node.

Database Manager GUI stores its database landscape in the following file (landscape definition file):

<user_home>\Application Data\sdb\DBM\Default.dbm

-OnlyRemote

Choose this option to prevent that the X server is automatically started when Database Studio is started.

-vm <path_to_Java_VM>/javaw.exe

The Java Virtual Machine that is located in the <path_to_Java_VM> is used instead of the default Java Virtual Machine.

-vmargs <VM_arguments>

Arguments that the Java Virtual Machine is to execute when starting Database Studio

Result

When you start Database Studio for the first time, the system sets up a local user and landscape management system on your computer and registers all SAP MaxDB databases that already exist on your computer.


-24944: ERR_USRDELSELF - cannot delete current user - SAP Documentation

Background documentation -24944: ERR_USRDELSELF - cannot delete current user

Explanation

The current user cannot be deleted.

User Response

Log on to the DBM server with another user, and execute the DBM server command again.


Configuring Database Transaction Logging - SAP Documentation

Procedure documentation Configuring Database Transaction Logging

The database system logs all database transactions that change application data or the database catalog. It writes information about these changes into log entries. If necessary, the system can later use these log entries to roll back or repeat SQL statements.

Procedure

Use one of the following database tools:

Database Studio, Database Manager CLI, or CCMS (in SAP systems only)

Changing Log Settings

The log settings specify the most important logging properties.

Log Settings

Name

Description

Log mode

Specifies whether the database system supports software-based mirroring of the log volumes.

  • The log volumes are not mirrored

    Default value

  • The log volumes are mirrored (software-based)

    Only use this setting if hardware-based mirroring, for example using a RAID system, is not possible. Software-based mirroring reduces the performance of your database system..

    When software-based mirroring is activated, the database system writes redo log entries to two log areas in parallel (primary and secondary log area). The database system can only overwrite the log areas with new log entries after the log entries in the primary log area have been backed up.

Overwrite mode for the log area

Specifies whether the database system can overwrite redo log entries in the log area even if they have not been backed up.

  • OFF

    The database system can only overwrite the log area once the corresponding redo log entries have been backed up. We therefore recommend that you activate the automatic log backup function or regularly carry out interactive log backups.

  • ON

    The database system cyclically overwrites the log area without first backing up the redo log entries. This results in gaps in the backup history. This, in turn, means that you can only restore your database up to the time of the last data backup.

    Caution Caution

    Switching on overwrite mode interrupts the backup history. If you have to restore the database after an error, no redo log entries are available for this period of time, and you lose all data since the last data backup.

    End of the caution.

If overwrite mode is on and you switch it off, you then have to carry out a complete data backup.

Redo log management

Specifies whether the database system writes redo log entries.

  • ON

    Default value

    The system writes redo log entries.

  • OFF

    Caution Caution

    Do not switch redo log management off in normal database operation. When redo management is switched off, the system does not write regular savepoints. This means that if you restart your database after a database crash, you lose all data since the last savepoint. If you have to restore your database, you can only restore it to the state of the last data backup.

    Only consider switching redo log management off in special situations, for example in a test system or during a large load job.

    End of the caution.

If redo log management is off and you switch it back on, you then must carry out a complete data backup.

More information:

  • Database Studio, Changing Log Settings

  • Database Manager CLI, param_addvolume

Changing Log-Related Database Parameters

To specify further logging properties, for example the log segment size or the number of log volumes, use database parameters.

More information: Database Parameters

Increasing the Size of the Log Area

Log entries are stored in the log area. If you need to increase the size of the log area, add log volumes.

Note that when the log area is full, you first need to carry out a log backup.

Caution Caution

Adding a new log volume will not immediately reduce the filling level of the log area. The system will only use the new log volume after you have carried out a log backup.

End of the caution.

More information:

  • Database Studio, Adding Log Volumes

  • Database Manager CLI, param_addvolume

  • Database Administration in CCMS, Log Area

More Information

Concepts of the Database System, How Databases Log Data Changes


-25365: Data file corrupted: trailer not found - SAP Documentation

Background documentation -25365: Data file corrupted: trailer not found

Explanation

You attempted to import data in the PAGES or RECORDS format.While checking the data format the system detected that the data did not conform to the specified formats.

User Response

Re-execute the EXPORT command and restore the initial situation on the target system. Then re-execute the IMPORT command.


-25500: Errors processing command exceed maximum number of errors to ignore; processing stopped - SAP Documentation

Background documentation -25500: Errors processing command exceed maximum number of errors to ignore; processing stopped

Explanation

You have specified the number of errors to ignore during processing using the SET MAXERRORCOUNT command.This limit was exceeded while processing the Loader command.

User Response

Increase the number of errors to ignore during processing using the SET MAXERRORCOUNT command or fix the errors listed in the Loader log file. Then re-execute the command.


Data Definition, Query, and Manipulation - SAP Documentation

Background documentation Data Definition, Query, and Manipulation

To define, query, insert, change, and delete data in an SAP MaxDB database, you use the Structured Query Language (SQL). More information: SQL

The database system executes SQL statements within transactions, which are sequences of SQL statements. More information: Transactions

Multiple transactions can access the same database object, such as a table, at the same time. To isolate the transactions from one another, the database system sets locks for database objects. More information: Locks


-1025: Too many asynchron requests - SAP Documentation

Background documentation -1025: Too many asynchron requests

Explanation

The specified SQL statement is intended to be processed asynchronously. However, there are not currently enough resources available.

User Response

Execute the SQL statement later.


-25324: Errors checking length of column specifications. See Loader server log file for more information - SAP Documentation

Background documentation -25324: Errors checking length of column specifications. See Loader server log file for more information

Explanation

Error executing the Loader command for exporting data. You can specify in your command the length of the values in the data stream for individual columns. Some of the lengths you specify may be shorter than the column lengths defined in the database. If this is the case, these values may be exported incorrectly. This error message is only a summary of the error. The error messages –25203, -25204, and -25315 specify which column descriptions contain errors and are only listed in the log file.

User Response

Correct the command and then re-execute it.


-7021: View column derived from function not allowed - SAP Documentation

Background documentation -7021: View column derived from function not allowed

Explanation

A view table column was specified which was the result of an arithmetic expression or of a set function. In the present case, it is not allowed to specify such a column.

User Response

To achieve the desired effect try one or more other SQL statements.


-818: Missing macro parameter initialization - SAP Documentation

Background documentation -818: Missing macro parameter initialization

Explanation

The macro was not initialized.

User Response

Insert the SQL statement SET MACRO into the application program.


-7004: DEFAULT not allowed - SAP Documentation

Background documentation -7004: DEFAULT not allowed

Explanation

  1. Columns with DEFAULT specification cannot be added to a table using the ALTER TABLE statement.

  2. The specification of NOT NULL DEFAULT NULL is not allowed.

User Response

  1. To add a column with an ALTER TABLE statement, specify it without a DEFAULT specification. Then define the DEFAULT in another ALTER TABLE statement. This way, the column ends up with the DEFAULT value in all table rows.

  2. Repeat the SQL statement after removing the DEFAULT specification.


backup_history_listnext - SAP Documentation

Background documentation backup_history_listnext

Use this command to read more of the backup history. Options you specified for displaying the backup history (backup_history_list) remain active.

Prerequisites

  • You have the server permission Backup or DBInfoRead.

  • You have executed the DBM commands for getting the backup history (backup_history_open) and displaying the backup history (backup_history_list). The keyword CONTINUE in the answer indicates that the whole file has not yet been displayed.

Structure

backup_history_listnext

Result

OK

[END | CONTINUE]

<history_line>

[<media_line>]

[<external_backup_id-line>]

<history_line>

[<media_line>]

[<external_backup_id-line>]

....

Values for the Reply Fields
Value | Description
END | The content of the backup history was transferred completely to Database Manager.
CONTINUE | The backup history contains further entries, which were not transferred due to the limited size of the reply package. You can display this data by entering the above command again or closing the backup history (see: backup_history_close).
<history_line> | Information about the last backups The individual columns are separated by a vertical slash (|). A separate line is displayed for each backup.
<media_line> | Information about the backup template used for the backup The line has an M: prefix and is followed by the columns, each separated by a vertical slash (|).
<external_backup_id_line> | If the backup was created using a third party backup tool, the external backup ID is provided here. The line has an E: prefix and is followed by the columns, each separated by a vertical slash (|).

In the event of errors, see Reply Format.

More Information

Database Administration, Log Files


Stripe - SAP Documentation

Background documentation Stripe

A stripe is a logical part of a cache (data cache or converter) with which the system controls competing accesses by tasks using regions or reader-writer locks (share locks). A stripe contains multiple critical sections.

You can override the access restrictions calculated by the system using the DataCacheStripes and ConverterStripes special database parameters.

More Information

Concepts of the Database System, Working Memory Areas

Database Administration, Special Database Parameters


-25499: Errors processing data for table <table_name>. Data not completely imported/updated - SAP Documentation

Background documentation -25499: Errors processing data for table <table_name>. Data not completely imported/updated

Explanation

You have executed a command to import (IMPORT) or update column values of a table (UPDATE). See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


Encryption - SAP Documentation

Background documentation Encryption

Encrypting the Data Transfer

When your client application (database tool, database application or database interface) and your database are located on different computers, SAP customers can encrypt the data transferred between the client application and the global listener or the installation-specific X server (SAP MaxDB communication server) using SSL/TLS.

Procedure

  1. Configure your SAP system for SSL/TLS encryption.

    For more information, see the Installation documentation.

  2. To encrypt the data transmitted between client application and the global listener/X server of the database, select the corresponding option when you log on to the database.

More Information

Concepts of the Database System,

  • Technical System Landscape

  • Network Communication

Encrypting Backups
Prerequisites

  • SAP Cryptolib (only available for SAP systems)

  • You have created a private-public key pair using sapgenpse.

    For more information about sapgenpse and SAP Cryptolib, see Using the SAP Cryptographic Library for SNC.

Procedure

  1. When creating the backup template for your backup, specify the encryption algorithm and the private key owner in the backup template properties.

  2. Create the backup using this backup template.

Example

Scenario: You want to create encrypted backups and want to be able to use these encrypted backups even if you loose the original private key.

  1. Using sapgenpse, you create a public-private key pair for the database and an additional public-private key pair for emergencies.

    When creating the key pair for the database, you specifiy the following properties for the private key owner and for the certificate owner:

    • CN=<database_name>, for example DEMODB

    • OU=<department_name>, for example DemoDepartment

    • OU=<company_name>, for example DemoCompany

    When creating the key pair for emergencies, you specifiy the following properties for the private key owner and for the certificate owner:

    • CN=<recovery_name>, for example RECOVERY_DEMODB

    • OU=<department_name>, for example DemoDepartment

    • OU=<company_name>, for example DemoCompany

    The private keys are stored in PSE (Personal Secure Environment) files, the public keys are stored in certificates.

  2. Put the PSE file of the key pair for emergencies in a secure location, for example a safe.

  3. In the PSE file for the database, import the certificate of the key for emergencies.

  4. Create your encrypted backups using both owner names.

  5. If you need to recover your database, but have lost the original private key for the database, you can use the private key that was created for emergencies.

More Information

Backing up Databases


-28016: Unknown container - SAP Documentation

Background documentation -28016: Unknown container

Explanation

A container is searched with a handle but it is not found.

User Response

Internal error. Contact Support.


-25306: The value is not a valid HEX constant: <input_value> - SAP Documentation

Background documentation -25306: The value is not a valid HEX constant: <input_value>

Explanation

The command to import or update data contains an error. In the command you have specified for one or more columns that the values to be imported in plain text are available in hexadecimal coding. The values you have entered are not valid for hexadecimal display.

User Response

Correct the values and re-execute the command.


-28835: Key of new object is still visible within consistent version - SAP Documentation

Background documentation -28835: Key of new object is still visible within consistent version

Explanation

Creation of an object with a unique index (e.g. a keyed-object) failed. Even so a previous existent object with the identical key has been deleted in recent data, the object is still visible in the consistent view of the recent transaction. The newly created object would cover the still visible object and therefore the creation is cancelled.

User Response

Make sure that the same object is not being deleted or recreated in different transactions of parallel sessions. Create a new consistent view after the error occurs (with omsNewConsistentView) and then create the object.


-28540: Invalid OmsCriticalSection ID - SAP Documentation

Background documentation -28540: Invalid OmsCriticalSection ID

Explanation

An invalid ID was passed to a critical section.

User Response

Allowed values for critical sections must be larger than 0 and smaller or equal CMS_INTERNAL_CRITICAL_SECTIONS.


-7075: Current save skipped, next is ready to take on this tape - SAP Documentation

Background documentation -7075: Current save skipped, next is ready to take on this tape

Explanation

You tried to restore a log backup from a no rewind tape. The given backup is older than the one required. It could still be saved on this tape.

User Response

Try to restore the next backup on this tape.


-8006: Data types must be compatible - SAP Documentation

Background documentation -8006: Data types must be compatible

Explanation

  1. A function was applied to a non-permitted argument.

  2. A two-digit operation was applied to non-comparable values.

  3. A predicate contains non-comparable data types.

Each data type can be compared to itself. Columns of data type CHAR with the different ASCII and EBCDIC code attributes can be compared to each other, whereby they are implicitly adapted. Columns with ASCII codes attribute can be compared to date, time, and timestamp specifications. All numbers can be compared to each other.

User Response

Use a QUERY statement issued on the DOMAIN.COLUMNS system table to determine the definition of the affected columns. You may like to try to achieve comparability by using a conversion function.


dbm_configget - SAP Documentation

Background documentation dbm_configget

With this command you display the value of one or several configuration parameters of Database Manager. You can use options to limit the display.

The values of the configuration parameters are stored in three different configuration files:

  • a database-specific configuration file

  • a software version-specific configuration file

  • a database computer-specific configuration file

The parameter values in the database-specific configuration file override the values in the software version-specific configuration file. The values in the software version-specific configuration file override the values in the database computer-specific configuration file.

Note Note

Therefore, note that the parameter values displayed in Database Manager can be overridden by other values so that they do not represent the current values being used.

End of the note.

Prerequisites

You have the server permission InstallMgm.

Structure

dbm_configget [<file_range>] [<parameter_name>]<file_range>:: = ALL|INSTANCE|INSTALLATION|GLOBAL

Options
Option | Description
<file_range> | Configuratrion file(s) to be searched through Possible values are: ALL | INSTANCE | INSTALLATION | GLOBAL ALL: Default value - searches through all three configuration files of Database Manager INSTANCE: Searches through the database-specific configuration file INSTALLATION: Searches through the software version-specific configuration file GLOBAL: Searches through the database computer-specific configuration file
<parameter_name> | Name of the configuration parameter of Database Manager If you do not specify this option, all the configuration parameters are displayed

Result

OK

<parameter_value>

or

<parameter_name> = <parameter_value>

<parameter_name> = <parameter_value>

...

Values for the Reply Fields
Value | Description
<parameter_value> | Value of the configuration parameter
<parameter_name> | Name of the configuration parameter

In the event of errors, see Reply Format.

Example

Displaying the Parameter Value Without Specifying a Configuration File

Call Database Manager CLI as the operator OLEG with the password MONDAY, connect to the database DEMODB, display the configuration parameter value of the status of the automatic log backup function (the status of the automatic log backup can only have the value 0 or 1):

>dbmcli -u OLEG,MONDAY -d DEMODB dbm_configget AUTOSAVE

OK

0

Result

The value 0 is displayed as the currently used value. The system has searched through all configuration files and then determined the value according to the above rule.

Displaying the Parameter Value Specifying a Configuration File

If you additionally specify that only the software version-specific configuration file is to be searched, you receive the parameter value contained in that specific file, which might be different from the one displayed as per the example above. This means: If the parameter is also contained in the database-specific configuration file and has another value there, that value overrides the value displayed here:

>dbmcli -u OLEG,MONDAY -d DEMODB dbm_configget INSTALLATION AUTOSAVE

OK

1

Result

The system displays that the parameter value contained in the software version-specific configuration file is 1.


25968: Number of NULL values inserted: <null_count> (NULL representation in data file is <null_representation>) - SAP Documentation

Background documentation 25968: Number of NULL values inserted: <null_count> (NULL representation in data file is <null_representation>)

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data from a set of table columns. Here, <null_count> NULL values were inserted.

User Response

If the number <null_count> of NULL values that were entered is to small or too large, check the NULL value representation <null_representation> in your command and in your file. If the data fields of the data file match the NULL value representation <null_representation> but should not be imported or updated as NULL values, change the null value representation in the command. Restore the initial status and re-execute the command.


Column Description - SAP Documentation

Background documentation Column Description

The syntax rules listed here are part of the column description in the Loader commands for importing, exporting and updating application data.

Note Note

If you want to use keywords as column names, you must place them in double quotation marks.

End of the note.

Structure

Syntax Syntax

  1. <export_column_spec> ::=
  <map_column_field>
| <field_assignment>
<import_column_spec> ::=
  <map_field_column> [<null_condition>]
| <column_assignment>
<update_column_spec> ::=
  <map_field_column>
| <field_assignment>

<map_field_column> ::=
  <column_name> <field_spec> <field_function>
<field_function> ::=
  <field_type> [HEX]
| <numerical_functions>
| <field_type> [HEX] <numerical_functions>
<numerical_functions> ::=
  <scale_spec>
| <round_or_trunc_spec>
| <scale_spec> <round_or_trunc_spec>
<scale_spec> ::=
  SCALE <unsigend_integer>
<round_or_trunc_spec> ::=
  ROUND <unsigend_integer>
| TRUNC <unsigend_integer>

<column_assignment> ::=
  <column_name> '<literal>'
| <column_name> <column_function>
End of the code.

In a Loader command for importing or updating application data (IMPORT TABLE, IMPORT COLUMNS, UPDATE COLUMNS), you use the import_column_spec or update_columns_spec syntax rule to describe the data records to be imported from a data stream. You assign the data fields in the data stream to the columns in the target table and specify the external data types as well as the conditions for importing the data.

Specifications such as column name and position description are also used in the descriptions of output columns (export_column_spec) in the EXPORT COLUMNS commands.

<map_field_column>

In a command for importing or updating application data, you can use the map_field_column syntax rule to assign a data field in the data stream to a column in the target table. To do this, you specify the column name, position, and external data type of the data in the data stream. You can define HEX values. Data must exist in the data stream for each column that you specify in the import command.

Example Example

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  cno       1

  title     2

  firstname  3

  name      4

  zip       5

  address    6

End of the example.

Example Example

IMPORT TABLE hotel.reservation

DATA INSTREAM 'reservation_fwv_binary.data' FWV BINARY

  rno      01-04 INTEGER

  cno      05-08 INTEGER

  hno      09-12 INTEGER

  type     13-18 CHAR

  arrival   19-28 CHAR

  departure 29-38 CHAR

End of the example.

If you do not specify target table columns in the command, the entire column is populated with the default value defined for this column during the import operation. The NULL value is imported if no specific default value is defined for the column.

Example Example

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  cno       1

  name      4

  address    6

The values for the TITLE, FIRSTNAME and ZIP columns are populated with the default values during the import operation.

End of the example.

Key columns and mandatory columns (columns that are defined as NOT NULL without a default value) must be specified in the import command. Otherwise, processing terminates with an SQL error.

Example Example

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  name      4

  zip       5

  address    6

The IMPORT command is terminated with an SQL error because the column CNO is missing.

End of the example.

If you do not specify any columns for the target table in the import command, the table is imported as if all columns of the target table were specified in the command. If this is the case, data must exist in the data stream for all of the columns in the target table.

Example Example

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

Data must exist for all of the columns in the data stream.

End of the example.
<field_function>

In a command for exporting or importing application data, you use the field_function syntax rule to specify the data fields in the data stream (external data type, position, and so on). You can use the syntax rule numerical_functions to scale (<scale_spec> ::= SCALE <unsigned_integer>: Scaling factor unsigned_integer can be positive or negative; value to which the syntax rule refers is multiplied by the corresponding power of ten), round and/or truncate numeric data values (<round_or_trunc_spec> ::= ROUND/TRUNC <unsigned_integer> : unsigned_integer defines the number of decimal places; value must be between 0 and 18; function does not have any effect if the number does not have any decimal places) when you import data from the data stream to the target table or export data from the source table to the data stream.

Note Note

You always have to specify scale_spec before round_or_trunc_spec.

End of the note.

You use the syntax rule round_or_trunc_spec to specify the number of decimal places for a number.

  • ROUND <unsigned_integer>: The value is rounded off at the (<unsigend_integer>+1)th decimal place. If this number is >= 5, the value is rounded up. If it is < 5, the value is rounded down. The result is a number in which the (<unsigend_integer>+1)th and all subsequent decimal places are equal to 0. However, the first digits in the number may have been changed by rounding.

  • TRUNC <unsigned_integer>: The (<unsigend_integer>+1)th and all subsequent decimal places of the value are set to 0. The first unsigned_integer decimal places remain unchanged.

Example Example

EXPORT COLUMNS * FROM hotel.room

MAP COLUMNS

  hno 1

  type 2

  free 3

  price 4 SCALE —1 TRUNC 2

DATA OUTSTREAM 'room_csv.data'

End of the example.
<column_assignment>

You can use the column_assignment syntax rule to define that the specified general or special constants, and not the corresponding value from the data stream, are imported into or updated in the specified column. For more information, see the section: Importing Constants and Special Constants.

Note Note

If the data stream is empty, the constants specified in the command are not imported.

End of the note.

More Information

  • Data Types

    Position Description

    Selecting Data Records

    Output Column

  • Data Description

  • EXPORT COLUMNS Command

    IMPORT COLUMNS Command

    IMPORT TABLE Command

    UPDATE COLUMNS Command

Loader Commands and SQL Statements


-27017: Too many volumes - SAP Documentation

Background documentation -27017: Too many volumes

Explanation

The maximum possible number of connections to the database instance was exceeded.

User Response

Contact Support.


Deleting Database Functions - SAP Documentation

Procedure documentation Deleting Database Functions

Prerequisites

  • The current user must be the owner of the database function or have the DROPIN privilege for the schema to which the database function is assigned.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, open the Functions folder.

  2. In the context menu of the database function, choose Delete.

More Information

SQL Reference Manual, DROP FUNCTION Statement (drop_function_statement)


-10330: Multiple stream output sequence error - SAP Documentation

Background documentation -10330: Multiple stream output sequence error

Explanation

A log error was discovered while processing the liveCache stream (output).

User Reponse

Contact Support.


-8020: Next volume required - SAP Documentation

Background documentation -8020: Next volume required

Explanation

This error can occur in the following cases (among others):

  1. When backing up: there is no more space on the data carrier currently being used.

  2. When importing a data backup: not all the data carriers belonging to this data backup were specified.

  3. When importing a log backup: the database system requires the next data carrier of the log backup.

User Response

  1. Specify another data carrier.

  2. Complete the list of data carriers.

  3. Specify the next data carrier (if available) for the log backup or end the log backup import manually.


DBPROCPARAMS - SAP Documentation

Example documentation DBPROCPARAMS

Use of the system table DOMAIN.DBPROCPARAMS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create database procedures and database functions and use them. Proceed as described in SQL Tutorial, Database Procedures and Database Functions.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table DBPROCPARAMS to determine the following database information, among other things:

  • All input parameters of the database function AVG_PRICE in the HOTEL schema and the following parameter information: Data type, length and the number of the affected parameter in the range of all parameters within that database function

    SELECT parametername, datatype, len, dec, pos

    FROM DOMAIN.DBPROCPARAMS

    WHERE schemaname = 'HOTEL'

    AND dbprocname = 'AVG_PRICE'

    AND "IN/OUT-TYPE" = 'IN'

  • All output parameters of the database procedure AVG_PRICE in the HOTEL schema and the following parameter information: Data type, length and the number of the affected parameter in the range of all parameters within that database procedure

    SELECT parametername, datatype, len, dec, pos

    FROM DOMAIN.DBPROCPARAMS

    WHERE schemaname = 'HOTEL'

    AND dbprocname = 'AVG_PRICE'

    AND "IN/OUT-TYPE" = 'OUT'

  • Total number of parameters for the database procedure AVG_PRICE in the HOTEL schema

    SELECT COUNT(*)

    FROM DOMAIN.DBPROCPARAMS

    WHERE schemaname = 'HOTEL'

    AND dbprocname = 'AVG_PRICE'

More Information

Database Procedures: see DBPROCEDURES

Database Functions: See FUNCTIONS


Performance Warehouse: Configuration (SAP Library - SAP MaxDB Library)

 Start of Content Area

Background documentation Performance Warehouse: Configuration Locate the document in its SAP Library structure

You configure all configuration parameters that are related to the performance warehouse on the Configuration screen. For example, you can configure the framework, the templates used for the reports and the report categories.

The DBA Cockpit uses BI Business Explorer (BEx) Web templates to analyze the performance data that is stored in the Solution Manager Diagnostics (SMD) BI. You can create your own BI BEx Web templates based on thise data and integrate new BI BEx Web templates into the performance warehouse.

You can access the Configuration screen of the performance warehouse by calling the DBA Cockpit and choosing Performance ® Performance Warehouse ® Configuration.

If you are using the SAP GUI-based user interface, a separate Web browser opens for this application.

On the screen Performance Warehouse: Configuration, the following tab pages are available:

· Configuration

· Web Reports

· Report Categories

Configuration

Here, you can view or modify the configuration parameters of the performance warehouse for the monitored system. To modify some of these parameters, use the Edit, Save and Cancel pushbuttons in the toolbar.

Depending on your database platform, the displayed selection of values can vary. The following parameters are displayed for all database platforms:

Parameter | Description
BI Server | BI server where the database performance data is located
Managing DBA Cockpit | This DBA Cockpit is allowed to change any data collectors or performance warehouse configuration for this database. By default, the DBA Cockpit of the Solution Manager system is used for this task.
Reporting Time Zone | The performance data time-stamps are converted to one global time zone for all reports in SMD BI.

The Default checkbox is selected if the default value for your complete landscape is the same as the one specified for your system.

Web Reports

Here, you can configure the display on the Reportingscreen. That is, you can view and modify the integrated BI BEx Web templates in the tree table. To modify some of these parameters, use the Edit, Add and Delete pushbuttons in the toolbar.

The main report categories appear and for each report category, you can view or modify the views by expanding the appropriate report category. These views appear as pushbuttons on the respective category tab page on the Reporting screen. To change the sequence within a category, use the Up or Down pushbuttons.

To display details about a view, simply select it in the table. The following parameters are displayed in the Details for Web Reports area below the table view:

Parameter | Description
Report | Specifies the name of the report This text appears on the view pushbutton on a category tab page.
Description | Detailed description for the report This text appears as a tooltip for the pushbutton of the key indicator on a category tab page.
Category | Specifies the report category. Each category is represented on a separate tab page.
Web Report (Default) | Technical name of the BI BEx Web templates
Web Report (Day) | Technical name of the BI BEx Web templates for granularity Day
Web Report (Month) | Technical name of the BI BEx Web templates for granularity Month
Data Providers (Time) | Specifies the data provider of the BI BEx Web templates with a time dimension. The drilldown of the time dimension is changed according to the selected granularity.
Active | If selected, the report is available for performance analysis.
Default | If selected, the report is executed as soon as the tab page is selected.
Database | Name of database platform
Release (min) | Minimum database release for this report
Release (max) | Maximum database release for this report

Depending on your database platform, there might be more checkboxes available for database-specific features. If you select these checkboxes, the report is only displayed if the specific database features have been set up in the monitored database system.

Report Categories

Here, you can view and modify the categories for BI BEx Web templates of the reports that are displayed the Reporting screen. To modify some of these parameters, use the Edit, Add and Delete pushbuttons in the toolbar. To change the sequence of the categories on the Reporting screen, use the Up or Down pushbuttons.

The following parameters are displayed:

Parameter | Description
Category | Name of the category
Description | Detailed description for the category

End of Content Area


-8054: Contradictory options - SAP Documentation

Background documentation -8054: Contradictory options

Explanation

The given statement contains at least two options which are contradictory.

User Response

Omit one of the options.


-4014: Unknown SERVERDB name - SAP Documentation

Background documentation -4014: Unknown SERVERDB name

Explanation

There is no database instance of the specified name.

User Response

Correct the database name.


Troubleshooting - SAP Documentation

Background documentation Troubleshooting

The overview below describes a few typical error situations that you can use CCMS tools to investigate and correct. Other typical error situations are described in detail in Database Administration, Troubleshooting.

Note Note

The documentation for the SAP MaxDB database system also generally applies to SAP liveCache technology. If there are functional differences, these are explained.

End of the note.
Typical Error Situations
Error Situation | Some Troubleshooting Options with CCMS Tools
The database system is not in the ONLINE operational state. | Use the SAP MaxDB tools available to you. If you are using SAP liveCache technology, you can also start liveCache in the CCMS.
Error when backing up. | Check the backups in the DBA Planning Calendar: Displaying Actions. You can also use the DBA History display or the Backup/Recovery alert display.
Data or log area is full | Monitoring the Data Area Monitoring the Log Area
Maximum number of database sessions reached | Change the database parameter MaxUserTasks with the DBA Cockpit function Parameters.
Inconsistent database structures | You can schedule a database structure check in the CCMS, or check individual database objects, for example with the Tables/Views/Synonyms display.
Other Analysis Options | Logs, Messages, Error Codes, Error Messages, Diagnosis, Problem Analysis, Performance, Alerts.

You can obtain help in troubleshooting in the following ways:

  • Post your query on the SAP MaxDB forum in the SAP Developer Network (SDN):

    https://www.sdn.sap.com/irj/scn/forum?forumID=90&start=0

  • Search for a solution for your problem in the SAP Notes relating to SAP MaxDB.

  • Contact Support. So that Support can process your query efficiently, make sure you include the following information:

    • Version of your database system (display the Properties)

    • Logs knldiag, knldiag.err, KnlMsg, KnlMsg.old, KnlMsgArchive (Display the Logs, Messages)

    • Logs dbm* (Display the logs of the Database Manager)

    • Detailed description of the problem (When does the problem occur? Can the problem be reproduced? How can it be reproduced?)

You can track the status of an SAP MaxDB problem reported to SAP in the Problem Tracking System (PTS): Tracking Problem Messages in PTS.

More Information

Database Administration: Overview of Activities


Expert Analysis - SAP Documentation

Procedure documentation Expert Analysis

The Database Analyzer user menu of the DBA Cockpit contains, among other things, a Load History. You can view the logs of the monitor classes (analysis areas) and manage the performance data.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] Database Analyzer [image] Expert Analysis [image] .

It is also possible to go into the load history from the Bottlenecks user menu via [image] Goto [image] Expert Analysis [image] .

Result

The Database Analyzer logs (DBAN.prt, DBAN_<Monitorklasse>.csv) can be displayed in the load history by day. Select the desired day and expand the display. You can open the logs for further analysis by double-clicking.

Collected (Aggregated) Performance Data

If you would like to view the collected performance data (aggregated data), expand the desired performance data in the Load History.

Double-clicking within an aggregation level (daily aggregates, weekly aggregates, monthly aggregates, quarterly aggregates) takes you to the display of the corresponding Database Analyzer file, classified according to monitor classes and time periods. You can also reach the overview of the respective daily aggregates for the period from the weekly, monthly and quarterly aggregates.

If you want to store the aggregated performance data locally, choose [image] Export [image] . Choose an appropriate subdirectory on your local computer and start the procedure. The data is stored in the analyzer subdirectory.

Managing Performance Data

Choose [image] Edit [image] Managing Performance Data [image] in the Load History. You can execute the following administration activities automatically or manually:

  • Transferring the log files from the Database Analyzer to the database

  • Deleting the log files from the Database Analyzer

  • Collecting (aggregating) performance data from the Database Analyzer

See also: Managing Performance Data

More Information

Database Analyzer, Database Analyzer Log Files


Creating Database Users - SAP Documentation

Procedure documentation Creating Database Users

Prerequisites

  • The database is in the ONLINE operational state.

  • You are logged on to the database as database system administrator or as a database user of the DBA user class.

Procedure

This function has not been implemented in Database Studio yet. Use the corresponding SQL statement instead.

More information:

  • Entering and Executing SQL Statements

  • SQL Reference Manual, SQL Statements Overview

Result

The current user becomes the owner of the database user.

More Information

Database Administration, Database Users


-24953: ERR_DBEXIST - database instance already exists - SAP Documentation

Background documentation -24953: ERR_DBEXIST - database instance already exists

Explanation

This DBM command cannot be used, as the database instance already exists.

User Response

Use a name that has not already been used for a database instance, or delete the existing database instance. Only delete a database instance if you no longer need it. When you delete a database instance, all of its data, including its configuration, is deleted. To delete the database instance, use the DBM command db_drop.


Activating or Deactivating the Automatic Extension of the Data Area - SAP Documentation

Procedure documentation Activating or Deactivating the Automatic Extension of the Data Area

The data of a database is permanently stored in the data volumes (data area). If the data area of a database is full, the database stops working.

If you have activated the automatic extension of the data area for your database, the system adds a new data volume as soon as the configured fill level of the data area is reached.

Note Note

You can also add data volumes manually.

More information: Adding or Deleting Data Volumes

End of the note.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for accessing database parameters or utility sessions.

    More information: Glossary, Server Permission

  • The maximum number of data volumes that you configured with database parameter MaxDataVolumes has not been reached yet.

    A separate event task is required for this function. For this reason, make sure that the FloatingServiceTasks and PreservedEventTasks database parameters are large enough.

    More information: Changing Database Parameters

  • If you activate the automatic extension of the data area function, the last data volume that you added must be of type FILE.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Overview tab page.

  4. Choose Data Area Extension.

  5. To activate the automatic data area extension function, select Automatic Data Area Extension and choose the fill level at which you want the system to extend the data area.

    To change the fill level at which the system extends the data area, choose Restart Automatic Data Area Extension and then choose the new fill level.

    To deactivate the automatic data area extension function, choose Deactivate Automatic Data Area Extension.

More Information

Concepts of the Database System,

  • Data Area

  • Volumes (Permanent Storage)


CODEPAGE - SAP Documentation

Object documentation CODEPAGE

The system table SYSLOADER.CODEPAGE contains the conversion tables that the Loader uses for the conversion.

Structure

CODEPAGE
CODEPAGEID | CHAR(32) | Name of code page (for example, ISO-8859-2)
CODEPAGETABLE | CHAR(512) BYTE | Conversion table from ASCII to UCS2 for each code page

The CODEPAGE system table is preconfigured. When it is delivered, the CODEPAGE column contains 27 entries: ISO-8859-2, ISO-8859-3, ISO-8859-4, ISO-8859-5, ISO-8859-6, ISO-8859-7, ISO-8859-8, ISO-8859-9, ISO-8859-10, ISO-8859-11, ISO-8859-13, ISO-8859-14, ISO-8859-15, ISO-8859-16, WINDOWS-874, WINDOWS-932, WINDOWS-936, WINDOWS-949, WINDOWS-950, WINDOWS-1250, WINDOWS-1251, WINDOWS-1252, WINDOWS-1253, WINDOWS-1254, WINDOWS-1255, WINDOWS-1256, WINDOWS-1257. The default value of the Loader, code page ISO-8859-1, is not included in the table.

The CODEPAGE system table can only be changed by the database system administrator. If another database user tries to change the table, the Loader terminates the operation with the following error: -25251: Code page to set (<code_page_name>) not found in system table SYSLOADER.CODEPAGE. All database users can read-access the entries in the CODEPAGE table.

More Information

Loader, SET Command

Loader, Loader System Tables

Definitions of the System Tables

Database Administration, Managing Users


-24913: ERR_SERVICEDB - can not register service kernel for <inst_path> - SAP Documentation

Background documentation -24913: ERR_SERVICEDB - can not register service kernel for <inst_path>

Explanation

The service database instance cannot be registered. This could be because the files were incorrectly installed or the operating system user does not have the necessary authorizations.

User Response

Correct or repeat the installation or provide your operating system user with the required authorizations.


-28951: System error: invalid deallocation - SAP Documentation

Background documentation -28951: System error: invalid deallocation

Explanation

While deallocating memory an error occurred.

User Response

Check knldiag for detailed information on this error.


-7036: ROWNO- specification not allowed in this context - SAP Documentation

Background documentation -7036: ROWNO- specification not allowed in this context

Explanation

  1. The specification ROWNO may only be used in QUERY statements. The QUERY statement must not contain a UNION, EXCEPT or INTERSECT specification.

  2. The ROWNO predicate can be used within the search condition, in the form ROWNO < <rowno_spec> or ROWNO <= <rowno_spec>, that is, ROWNO is on the left of the operator.

  3. The ROWNO predicate may occur only once in a search condition. It must be connected with other predicates by logical AND.

User Response

  1. In the case of UNION, EXCEPT or INTERSECT, the effect can be achieved by two successive QUERY statements.

  2. Correct the search condition in the SQL statement accordingly.


Creating Columns - SAP Documentation

Procedure documentation Creating Columns

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the table or have the ALTER privilege for the table in which you want to create the column.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the explorer tree.

  2. In the context menu of the table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Open the Columns tab page.

    In the context menu of the editor window, choose Add Column.

  5. Define the column properties.

    Columns

    Property

    Description (Links to SQL Reference Manual)

    Name

    Column Name (column_name)

    Data Type

    Data Type (data_type)

    Dim

    Dimension

    Maximum number of characters

    Code Attribute

    Code attribute

    Key

    If you select this option, you add this column to the primary key.

    Key Definition (key_definition)

    All columns in the primary key must be NOT NULL columns.

    You cannot use any columns of the LOB data type in the primary key.

    The database ensures that no NULL value exists in the key column and that no two data records in the table have the same values in all key columns.

    Not Null

    If you select this option, the value for this column cannot be a NULL value.

    Column Attributes (column_attributes)

  6. In the context menu of the editor window, choose Create Table (if you are creating a new table) or Alter Table (if the table already exists).

More Information

SQL Reference Manual, Column Definition (column_definition)

SQL Tutorial, Tables


Transformation - SAP Documentation

Background documentation Transformation

Exporting/importing/transporting is known as transformation and is described with entries in the Loader-specific system tables.

A transformation is identified using:

  • Loader and database details (connection information)

  • transformation type (export, import, transport)

  • transformation package (specification of the data to be transported)

  • specification of the data streams (data carriers, data formats used)

Loader uses metadata for the logical description of data and its transformation. This metadata can be in different formats. When the Loader system tables are filled, this information can be used to restart the transformation.

The Loader syntax allows the transformation of the data of the entire database, of a database user, a schema, a table, or a set of qualified columns of a table or multiple tables. The data is collected in transformation packages. You can use the corresponding Loader commands to process the transformation packages.

More Information

  • Exporting: Loader Commands

    Importing: Loader Commands

  • You can transport (export and import) data using the transport mode.

  • You can also transform all the application data or the entire database catalog using third-party backup tools.

    Exporting and Importing Using Third-Party Backup

  • Loader System Tables

  • Restarting

  • Loader Commands and SQL Statements


Configuration - SAP Documentation

Background documentation Configuration

The following user menus in the DBA Cockpit provide information about configuration:

  • System Settings

  • SYSINFO Views

  • Error Codes

  • Critical Sections

  • Logs

More Information

DBA Cockpit: SAP MaxDB


-24954: ERR_BANOAUTOMED - no autolog medium found in media list - SAP Documentation

Background documentation -24954: ERR_BANOAUTOMED - no autolog medium found in media list

Explanation

The database system was unable to find a backup template that could be used for automatic log backup.

User Response

Check the definition of your backup templates.


Activating or Deactivating the Automatic Recreation of Damaged Indexes - SAP Documentation

Procedure documentation Activating or Deactivating the Automatic Recreation of Damaged Indexes

Prerequisites

  • You are logged on to the database as a database user.

  • You have the INDEX privilege for the table to which the damaged index belongs.

    More information: SQL Reference Manual, Privilege Specification (privilege_specification)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Automatic Recreation of Bad Indexes [image] .

  3. Select ALL.

More Information

  • Creating Indexes

  • Activating or Deactivating Indexes

  • Deleting Indexes

  • Restoring Databases


-25328: Some error(s) while extracting data. See Loader server log file for more information - SAP Documentation

Background documentation -25328: Some error(s) while extracting data. See Loader server log file for more information

Explanation

Error in the Loader command for exporting data.Only the client (for example, LOADERCLI) displays this error message.

User Response

Check the problems that have occurred using the entries in the server log file of the Loader.Correct the statement if necessary and re-execute it.


-25322: This condition value was truncated and cannot be used: '<value>' - SAP Documentation

Background documentation -25322: This condition value was truncated and cannot be used: '<value>'

Explanation

e Loader command to import or update data contains an error.You can specify conditions for individual columns in the command, which then govern how the values are imported/updated. The system must be able to identify the constants in conditions for numerical columns as numbers.If you see this error message, it means that the value you have entered as a constant is recognized as a number. However, it was truncated by a few decimal places during conversion and therefore can no longer be used.

User Response

Correct the command and then re-execute it.


-7011: Correlated subquery not allowed - SAP Documentation

Background documentation -7011: Correlated subquery not allowed

Explanation

  1. A correlated subquery was used in a <QUERY EXPRESSION> containing at least a UNION, INTERSECT, or EXCEPT. This is not yet allowed.

  2. A column name was used in a selected column in a scalable subquery; this column name is not known in any FROM clause table.

User Response

  1. The desired effect can be achieved by splitting the <QUERY statement> into several SQL statements.

  2. Correct the user name.


-24934: ERR_VERSION - incompatible versions (param and kernel) - SAP Documentation

Background documentation -24934: ERR_VERSION - incompatible versions (param and kernel)

Explanation

The version of the parameter file of the database instance does not match the executable database program.

User Response

Update the entries in the parameter file by checking the parameters. To do this, use the DBM command param_checkall.


OneDB - SAP Documentation

Background documentation OneDB

SAP liveCache OneDB (OneDB) is the combination of an SAP MaxDB database with an SAP liveCache database within a database.

SAP liveCache OneDB has many advantages over a normal configuration with two separate database instances, including:

  • You only have to maintain one database.

  • The SAP MaxDB and SAP liveCache databases share resources such as the data cache, CPU, log volumes, data volumes, and backups.

Activities

It is sufficient to perform the usual database administration tasks for only the SAP MaxDB database of your OneDB. For the SAP liveCache database of your OneDB, you need only to take account of the following:

  • Ensure regularly that the SQL Optimizer statistics for the SAP liveCache database of your OneDB are up-to-date. Use the Optimizer Statistics node in the liveCache Alert Monitor to do this. If necessary, schedule an update of the SQL Optimizer statistics (DBA Planning Calendar, Scheduling an Update of the SQL Optimizer Statistics).

  • Explicitly starting/stopping the SAP liveCache database of a OneDB is not required and not desirable. Therefore, the functions Start liveCache and Stop liveCache in the Operating user menu (DBA Cockpit/liveCache Assistant) cannot be used. The function modules START_LIVECACHE_LVC and STOP_LIVECACHE_LVC are also not available for the SAP liveCache database of a OneDB (Function Module for Starting/Stopping/Initializing).

More Information

SAP Note 1038709 (FAQ: SAP MaxDB/liveCache One DB)


-4025: Unknown or not loaded character set - SAP Documentation

Background documentation -4025: Unknown or not loaded character set

Explanation

The specified CHARACTER SET is unknown.

User Response

Check the spelling of the character set. Use a <QUERY statement> issued on the system table DOMAIN.CHARSET to find out whether the specified character set has been loaded. Replace the specification by one of the loaded character sets or ensure that the character set needed will be loaded.


Diagnosis - SAP Documentation

Background documentation Diagnosis

The following user menus are available in the DBA Cockpit:

Caution Caution

For SAP NetWeaver 7.1, the submenus for the Diagnosis menu are partly different.

End of the caution.

  • Missing Tables and Indexes

  • EXPLAIN

    You can display the execution plan for an SQL statement. To do so, enter the desired SQL statement in the EXPLAIN editor.

  • SELECT Editor

  • Database Files (not for SAP NetWeaver 7.1)

  • SAP liveCache Technology: OMS Object Browser

  • Messages

  • Kernel Messages

More Information

  • Command Monitor

  • Troubleshooting

  • SQL Reference Manual,

    EXPLAIN Statement

    SELECT Statement

  • Database Administration,

    Analyzing Search Strategies Using the EXPLAIN Statement

    Log Files

  • DBA Cockpit: SAP MaxDB


Session Mode - SAP Documentation

Function documentation Session Mode

In session mode, the user can transfer Loader commands and SQL statements to Loader directly from the console.

Features

You can start Loader CLI in session mode by entering the following command:

Syntax Syntax

  1. loadercli
End of the code.

If you want to transfer further information when Loader CLI is called, use the corresponding options.

Syntax Syntax

  1. loadercli
  [<connect_options>]
  [<in_output_options>]
  [<version_options>]
End of the code.

You can enter options for establishing the connection, for input and output control, and for version queries. After starting Loader CLI in session mode, you can enter Loader commands and SQL statements interactively.

connect_options
-d <database_name> | Name of database
-u [<database_user>[,<password>]] | Name and password of database user
-n <database_computer>[:<port>] | Name of database computer
-s <schema_name> | Name of schema
-e <encryption> | Encryption method

More information: Opening a Database Session: Loader CLI Options

in_output_options
-o[w|a] <file_name> | Name of output file
-cs <separator> | Command separator
-ps<number> <string> | Substitution parameter
-E <number> | Maximum number of errors allowed

More information: Input and Output: Loader CLI Options

version_options
-V | Version of Loader server
-v | Version of Loader CLI
-R <installation_path> | Directory containing the programs that are dependent on the version of the database software

More information: Determing Version Information: Loader CLI Options

Command Separator

The default value for a command separator is ENTER. If you enter a Loader command that is longer than one line and you end one of these lines with a forward slash (/), Loader CLI recognizes that the command is not yet complete. It is not yet executed when the command separator ENTER is inserted. Only when you enter the command separator ENTER without preceding it with a forward slash does Loader CLI recognize that the command is complete.

You can change this behavior by defining another command separator with the option –cs <command_separator>. If, for example, you define the semicolon as the command separator, you can write multiple lines until Loader finds a semicolon. Only when you enter the command separator “semicolon” does Loader CLI recognize that the command is complete.

Once the command separator is received, the command is sent to the Loader server, which executes it. After execution of all the Loader commands and SQL statements, Loader CLI displays a message. To end session mode, enter release or exit, followed by the command separator.

Example

Example Example

loadercli -d demodb -u mona,red -s hotel

End of the example.

Loader establishes a connection to the database DEMOB for the user MONA in the scheme HOTEL. Loader then waits for the Loader commands and SQL statements in the command line. Loader only processes them when you end the commands with ENTER.

Example Example

loadercli -d demodb -u mona,red -cs ;

End of the example.

Loader establishes a connection to the database DEMOB for the user MONA. Loader waits for the Loader commands and SQL statements in the command line. Loader only processes them when they you end them with a semicolon.

For more examples, see the Loader Tutorial, Session Mode.

More Information

Opening a Session: Loader CLI Options

Loader Log File


-10308: Non-character and non-binary data for parameter (<number>) for piecewise insert not allowed - SAP Documentation

Background documentation -10308: Non-character and non-binary data for parameter (<number>) for piecewise insert not allowed

Explanation

Numeric data types cannot be processed piecewise. The bound parameter <number> does not have the character or binary data type, and so it cannot be processed piecewise.

User Response

Enter the character or binary data type (SQLDBC_HostType) for the parameter that you want to process piecewise. Define a program variable for this.


Backing Up Databases: Overview - SAP Documentation

Background documentation Backing Up Databases: Overview

  • Defining Backup Templates

  • Changing the Properties of Backup Templates

  • Deleting Backup Templates

  • Backing Up Data

  • Backing Up Log Entries

  • Activating or Deactivating Automatic Log Backup

  • Checking Backups

  • Opening the Backup History

  • Making Snapshots of the Data Area

  • Displaying Information About Snapshots

  • Reverting to a Snapshot

  • Deleting Snapshots

More Information

Database Administration, Backing Up Databases


Changing the Database Size - SAP Documentation

Procedure documentation Changing the Database Size

The database size mainly depends on the size of the data area, which is the set of all data volumes.

Procedure

Use one of the following database tools: Database Studio or Database Manager CLI

Manually Adding or Removing Data Volumes

More information:

  • Database Studio,

    • Adding Data Volumes

    • Deleting Data Volumes

  • Database Administration in CCMS, Data Area

Automatically Extending the Data Area

More information:

  • Database Studio, Activating or Deactivating Automatic Extension of the Data Area

  • Database Manager CLI, auto_extend


-25366: Data file corrupted: header not found - SAP Documentation

Background documentation -25366: Data file corrupted: header not found

Explanation

You attempted to import data in the PAGES or RECORDS format. While checking the data format the system detected that the data did not conform to the specified formats.

User Response

Re-execute the EXPORT command and restore the initial situation on the target system. Then re-execute the IMPORT command.


DATAVOLUMES - SAP Documentation

Object documentation DATAVOLUMES

The system table SYSINFO.DATAVOLUMES describes the data volumes used.

Structure

‎DATAVOLUMES
ID | FIXED(5) | Volume ID
MODE | CHAR(10) | Mode of the volume (NORMAL | SEQUENTIAL)
CONFIGUREDSIZE | FIXED(20) | Configured size of the volume (KB)
USABLESIZE | FIXED(20) | Area of the volume that can be used for data (KB)
USEDSIZE | FIXED(20) | Area of the volume used for data (KB)
USEDSIZEPERCENTAGE | FIXED(3) | Area of the volume used as a percentage of the total area that can be used for data
DROPVOLUME | CHAR(3) | Volume is being removed from the database (YES | NO)
TOTALCLUSTERAREASIZE | FIXED(20) | Reserved area (cluster area) at the end of the volume for data stored in clusters (KB)
RESERVEDCLUSTERAREASIZE | FIXED(20) | Area within the cluster area used by clusters (KB)
USEDCLUSTERAREASIZE | FIXED(20) | Area within the cluster area used by data (KB)
FILESYSTEMID | FIXED(5) | ID of the file system
WRITEABLE | CHAR(3) | Specifies whether the volume is writeable (YES | NO)
PATH | CHAR(256) | Name of the volume

More Information

Evaluating System Tables, DATAVOLUMES


-3021: Invalid mixture of functions and columns - SAP Documentation

Background documentation -3021: Invalid mixture of functions and columns

Explanation

  1. If a set function (AVG, COUNT, MAX, MIN, STDDEV, SUM, VARIANCE) occurs in a SELECT statement, non-group columns are not allowed in the selected columns (select_column).

  2. Quantity functions such as AVG(SUM...) must not be nested.

  3. A corresponding subquery S contained in the WHERE clause of the QUERY specification Q must not contain quantity functions for columns of tables specified in the FROM clause of the QUERY specification Q.

User Response

Correct the SQL statement.Try to achieve the desired effect without nesting the quantity functions by using several QUERY statements, each containing a quantity function. Within a QUERY statement, the effect can be achieved by specifying a QUERY expression in the FROM clause.


-10709: Connection failed (<description>) - SAP Documentation

Background documentation -10709: Connection failed (<description>)

Explanation

Connection to the database instance failed. <description> contains the internal error message.

User Response

  • Check whether you entered the right connection data (name of the database instance, name of the computer).

  • Check whether the database instance is ONLINE.

  • If you want to establish a connection to a database instance on another computer, check whether the X server is running on the other computer.


From -24000 to -24999 - SAP Documentation

Background documentation From -24000 to -24999

Error Messages of the Database Manager Program
-24905 | ERR_NOEBIDLIST: no information on external backup IDs available
-24906 | ERR_EBFDIRTY: invalid format of external backup history
-24907 | ERR_DBAWRONG - wrong SYSDBA
-24909 | ERR_DBAUNKNOWN - DOMAIN password unknown
-24910 | ERR_PARAMVER - wrong version of param help file (cserv.pcf) <version>
-24911 | ERR_INVDBNAME - database name <dbname> is reserved
-24912 | ERR_WRONGINST - DBM Server instroot is <instroot>
-24913 | ERR_SERVICEDB - cannot register service kernel for <instroot>
-24914 | ERR_KEYEXISTS - installation key <key> exists
-24915 | ERR_NOADDD - configuration update not allowed (param file is inactive)
-24916 | ERR_MAXVOLCNT - max volume count exceeded
-24917 | ERR_MAXDATA - max data size exceeded
-24918 | ERR_MISSMIRR - missing data for mirror devspace
-–24919 | ERR_CLEANUP: cannot free all operational resources after backup operation
-24920 | ERR_BACKUPOP: backup operation was unsuccessful
-24921 | ERR_POSTOP: error while finishing backup operation
-24922 | ERR_OPCHK: cannot check state of backup operation
-24923 | ERR_TOOLREQ: error while starting external backup tool
-24924 | ERR_DBREQ: cannot start database kernel request
-24925 | ERR_PREPARE: preparation of backup operation failed
-24926 | ERR_MEDIUMCHK: medium cannot be used with this external backup tool
-24927 | ERR_TOOLCHK: external backup tool not found
-24928 | ERR_NOREPLY - no reply available
-24929 | ERR_USRFRM - invalid user record format
-24930 | ERR_XPVALUESET - parameter value not in valueset
-24931 | ERR_XPMAX - parameter value higher than maximum allowed
-24932 | ERR_XPMIN - parameter value smaller than minimum allowed
-24933 | ERR_NOSERVICESESSION - no service kernel session available
-24934 | ERR_VERSION - incompatible versions (param and kernel)
-24935 | ERR_NOUSERS - no users found
-24936 | ERR_DBNORUN - database is not running
-24937 | ERR_MISSRIGHT - no server rights for this command
-24938 | ERR_NOENTRY - no entry found
-24939 | ERR_LASTREG - cannot delete last registration of instance
-24940 | ERR_NEEDSYSLOGON - system logon required
-24941 | ERR_NEEDLOGON - DBM server logon required
-24942 | ERR_USRDELSDBA - cannot delete sysdba
-24943 | ERR_USRDELDBM - cannot delete DBM user
-24944 | ERR_USRDELSELF - cannot delete current user
-24945 | ERR_TOFEWPARAM - too few parameters
-24946 | ERR_TOMANYPARAM - too many parameters
-24947 | ERR_DBNAME - do not use dbname
-24948 | ERR_NODBNAME - database name required
-24949 | ERR_USREXISTS - user entry already exists
-24950 | ERR_USRFAIL - user authorization failed
-24951 | ERR_USRREAD - could not read user data
-24952 | ERR_USRSAVE - could not save user data
-24953 | ERR_DBEXIST - database instance already exists
-24954 | ERR_BANOAUTOMED - no autolog medium found in media list
-24955 | ERR_BANOSAVETYPE - backup type not defined
-24956 | ERR_BASAVETYPECON – backup type conflicts with media definition
-24957 | ERR_NOUSER – required user not set
-24958 | ERR_BAOVERWRITE - file already exists, cannot overwrite
-24959 | ERR_XPOVERFLOW - value out of margin
-24960 | ERR_DBRUN – database is running
-24961 | ERR_STATE – cannot determine current db state
-24962 | ERR_VOLTYPE - wrong volume type
-24963 | ERR_VOLCHECK - error while checking volume
-24964 | ERR_EXECUTE – error in program execution
-24965 | ERR_SYSLOGON – logon to system failed
-24966 | ERR_LOGON – logon to DBM Server failed
-24967 | ERR_SYSTEM – system call error
-24968 | ERR_XPREADONLY – parameter is read only
-24969 | ERR_XPDIRTY – param file is dirty
-24970 | ERR_XPNOMODIFY –parameter must not be modified
-24971 | ERR_XPNOCHECK - no running parameter check
-24972 | ERR_XPINVCONF – invalid value
-24973 | ERR_XPCHECK – param check failure/request
–24974 | ERR_XPSESSION – param session active
-24975 | ERR_NOXPSESSION – param session inactive
-24976 | ERR_PARAMEXIST – param file of database already exists
-24977 | ERR_COMMAND - unknown command <command>
-24978 | ERR_XPSYNTAX – xparam syntax error
-24979 | ERR_XPNOTFOUND – parameter not found
-24980 | ERR_NOHELP - xparam help file not found
-24981 | ERR_HIENTRYNOTFOUND – backup history entry not found
-24982 | ERR_ERR_NOHISTORY - backup history file not found
-24983 | ERR_BANOVALIDTYPE - invalid backup type
-24984 | ERR_MENOVALID - invalid medium definition
-24985 | ERR_MENOTFOUND – medium not found
-24986 | ERR_NOMEDIA - media file not found
-24987 | ERR_TOSMALL – packet size too small for answer
-24988 | ERR_SQL – SQL error
-24989 | ERR_NOHISTORYSESSION – no backup history session available
-24990 | ERR_ NOBACKUPSESSION – no backup session available
-24993 | ERR_RTEEXT – runtime environment error
-24994 | ERR_RTE – runtime environment error
-24995 | ERR_MEM – memory allocation error
-24996 | ERR_PARAM – wrong parameters
-24997 | ERR_FILE – file handling error
-24998 | ERR_NOTIMPL – sorry, command not yet implemented
-24999 | ERR – common error


-1117: Too complicated trigger qualification - SAP Documentation

Background documentation -1117: Too complicated trigger qualification

Explanation

The internal representation of the trigger qualification is longer than the space available for this purpose.

User Response

Simplify the trigger condition.


-7041: Result table name not allowed - SAP Documentation

Background documentation -7041: Result table name not allowed

Explanation

In a CREATE VIEW statement, a named result table was specified in a FROM clause of the QUERY expression. However, only base or view tables may be specified.

User Response

Specify a base or view table in the SQL statement and expand the search condition to include the conditions used when the result table was generated.


-25222: Wrong Boolean specification - SAP Documentation

Background documentation -25222: Wrong Boolean specification

Explanation

The command to export or import data contains an error.The format specification for the data stream in a command includes a character string specifying how to display BOOLEAN values that are to be exported or imported from the database instance. The syntax of the character string is incorrect.

User Response

Correct the entries and re-execute the command.


Central System Data - SAP Documentation

Background documentation Central System Data

Certain status information and central system data is helpful in administering a database. The most important information is displayed in a status box in the individual displays of the DBA Cockpit. You can also find a variety of status information and system data displayed in the Properties user menu.

Status |
Name of the Database Connection | Logical name, that is, the name of the database connection of the database or SAP liveCache More information: Name of the Database Connection
Operational State / liveCache State | Operational state (ONLINE, STANDBY, ADMIN, OFFLINE) More information: Operational State
Standard Database/liveCache user | Database user ID that is used for SQL queries to the database More information: Standard Database User
Version | Version of database/liveCache kernel in accordance with the version notation More information: Database Server and Versions
Online since | Time stamp
SQl access possible | Display as to whether SQL database queries are possible
Properties |
Database/liveCache Name | Name of the database on the database/liveCache host More information: Database Name
Database/liveCache Server | Name of database/liveCache computer More information: Database Server and Versions
Bridge System (Teradata/Neoview) | Name of the bridge system More information: Bridge System (Teradata/Neoview)
Display/hide details | Choose Display/Hide Details to display or hide further properties.
Description | Description of the Database
Database/liveCache Version | Version of database/liveCache kernel in accordance with the version notation More information: Database Server and Versions
Operating System | Name of the operating system
Addressing | Addressing display in bits
InstallationPath | <installation_path> Installation Directory of the Database Software
GlobalPrograms | <global_program_path> Programs that are shared by databases and applications
GlobalData | <global_data_path> Parameters, configuration and log files, and run directories that are shared by databases and applications.
PrivateData | <private_data_path> Parameters, configuration and log files, and run directories that are used by a database and its applications.
Rundirectory | <global/private_data_path>\wrk\<database_name> Run directory whose path is stored in the general database parameter RunDirectoryPath.
Operating | SAP liveCache Technology
Last Initialization Last Start/Stop Action | Status of operating actions, display of current protocols and time stamp for actions, and other information
Display/Hide Operating Actions | Choose Display/Hide Operating Actions to display or hide liveCache operating actions. More information: Operating (liveCache)
Settings |
Automatic Log Backup OFF | ON | Displays whether automatic log backup is activated More information: Activate Automatic Log Backup
Database Analyzer OFF | ON | Displays whether the Database Analyzer is switched on More information: Database Analyzer
Snapshot exists No | Yes | Display whether a snapshop was created More information: Database Administration, Making Snapshots of the Data Area
Command Monitor OFF | ON | Displays whether the Command Monitor is switched on More information: Command Monitor
Resource Monitor OFF | ON | Displays whether the Resource Monitor is switched on More information: Resource Monitor
Database Trace OFF | ON | Displays whether the database trace is switched on More information: Database Trace

More Information

System Settings

DBA Cockpit: SAP MaxDB


-1106: Too complicated SQL statement (Too much strategy data) - SAP Documentation

Background documentation -1106: Too complicated SQL statement (Too much strategy data)

Explanation

The search strategy used to process the SQL statement is greater than the space available.

User Response

Delete some of the search strings containing an OR option.


-702: Missing variable address in SQLDA - SAP Documentation

Background documentation -702: Missing variable address in SQLDA

Explanation

The address of a program variable was not set in SQLDA.

User Response

In SQLDA, write the address to the HOSTVARADDR position.


USE DB Command - SAP Documentation

Background documentation USE DB Command

You can use the Loader command USE DB to open another database session.

Structure

Syntax Syntax

  1. <use_database_command> ::=
  USE DB <database_spec>

<database_spec> ::=
  <database_name> [ON <database_computer> [ENCRYPTION <protocol_name>]
End of the code.

With the USE DB command, you switch to another database session without having to exit the Loader session. The connection to the current database is terminated and the new database session is opened.

<database_spec>
database_name | Name of the database This name ist valid for the entire Loader session with this database session. If the name of the database is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in quotation marks (Database Administration, Conventions for Database Names).
database_computer | Name of the computer on which the database is installed for which a session is to be started. If this is not specified, Loader assumes that the specified database was created on the computer to which the user of Loader is logged on.
protocol_name | Name of the encryption protocol After key word ENCRYPTION, you can also specify the name of the requested encryption protocol protocol_name to ensure that the data transfer is encrypted. This option is currently only supported for SAP systems and SSL.

A database user with the same name and password must exist on the new database. Loader refers all subsequent Loader commands and SQL statements to this new database. This setting applies as long as no other database is specified with a USE DB command.

Example

Example Example

USE USER mona red DB demodb ON genua

//

USE DB demodb ON parma

End of the example.

User MONA is logged on to database DEMODB on computer GENUA. You use the USE DB command to switch to database DEMODB on computer PARMA.

More Information

Opening a Session: Loader Commands

Opening a Database Session: Loader CLI Options


SAP Library - Database Administration

Start Level 1 Node: Database Administration Database Administration End Level 1 Node: Database Administration
Start Level 2 Node: Creating Databases Creating Databases End Level 2 Node: Creating Databases
Start Level 3 Node: Planning Databases Planning Databases End Level 3 Node: Planning Databases
Start Level 3 Node: Conventions for Database Names Conventions for Database Names End Level 3 Node: Conventions for Database Names
Start Level 3 Node: Encryption Encryption End Level 3 Node: Encryption
Start Level 2 Node: Periodic Administration Tasks Periodic Administration Tasks End Level 2 Node: Periodic Administration Tasks
Start Level 2 Node: Automating Administration Tasks Automating Administration Tasks End Level 2 Node: Automating Administration Tasks
Start Level 2 Node: Changing Database Properties Changing Database Properties End Level 2 Node: Changing Database Properties
Start Level 3 Node: Changing the Database Size Changing the Database Size End Level 3 Node: Changing the Database Size
Start Level 3 Node: Activating Automatic Database Start Activating Automatic Database Start End Level 3 Node: Activating Automatic Database Start
Start Level 4 Node: Example: Start Script for a Database (Linux) Example: Start Script for a Database (Linux) End Level 4 Node: Example: Start Script for a Database (Linux)
Start Level 3 Node: Database Parameters Database Parameters End Level 3 Node: Database Parameters
Start Level 4 Node: General Database Parameters General Database Parameters End Level 4 Node: General Database Parameters
Start Level 4 Node: Special Database Parameters Special Database Parameters End Level 4 Node: Special Database Parameters
Start Level 4 Node: Support Database Parameters Support Database Parameters End Level 4 Node: Support Database Parameters
Start Level 4 Node: SAP liveCache Database Parameters SAP liveCache Database Parameters End Level 4 Node: SAP liveCache Database Parameters
Start Level 4 Node: Obsolete Database Parameters Obsolete Database Parameters End Level 4 Node: Obsolete Database Parameters
Start Level 4 Node: Properties of Database Parameters Properties of Database Parameters End Level 4 Node: Properties of Database Parameters
Start Level 3 Node: Configuring Database Transaction Logging Configuring Database Transaction Logging End Level 3 Node: Configuring Database Transaction Logging
Start Level 3 Node: Configuring Locks for Database Objects Configuring Locks for Database Objects End Level 3 Node: Configuring Locks for Database Objects
Start Level 3 Node: Configuration Files Configuration Files End Level 3 Node: Configuration Files
Start Level 2 Node: Monitoring Databases Monitoring Databases End Level 2 Node: Monitoring Databases
Start Level 2 Node: Backing Up Databases Backing Up Databases End Level 2 Node: Backing Up Databases
Start Level 3 Node: Backup Templates and Data Carriers Backup Templates and Data Carriers End Level 3 Node: Backup Templates and Data Carriers
Start Level 3 Node: Backing Up Data Backing Up Data End Level 3 Node: Backing Up Data
Start Level 3 Node: Backing Up Log Entries Backing Up Log Entries End Level 3 Node: Backing Up Log Entries
Start Level 3 Node: Archiving Backup Files Archiving Backup Files End Level 3 Node: Archiving Backup Files
Start Level 3 Node: Backing Up to a Group of Parallel Data Carriers Backing Up to a Group of Parallel Data Carriers End Level 3 Node: Backing Up to a Group of Parallel Data Carriers
Start Level 3 Node: Backing Up and Restoring with Remote Computers Backing Up and Restoring with Remote Computers End Level 3 Node: Backing Up and Restoring with Remote Computers
Start Level 3 Node: Using Third-Party Backup Tools Using Third-Party Backup Tools End Level 3 Node: Using Third-Party Backup Tools
Start Level 2 Node: Replication and High Availability Replication and High Availability End Level 2 Node: Replication and High Availability
Start Level 3 Node: Snapshot of the Data Area Snapshot of the Data Area End Level 3 Node: Snapshot of the Data Area
Start Level 3 Node: Database Copy Database Copy End Level 3 Node: Database Copy
Start Level 3 Node: Standby Database Standby Database End Level 3 Node: Standby Database
Start Level 4 Node: Making the Standby Database the Active Database Making the Standby Database the Active Database End Level 4 Node: Making the Standby Database the Active Database
Start Level 3 Node: Hot Standby Hot Standby End Level 3 Node: Hot Standby
Start Level 4 Node: Architecture of a Hot Standby System Architecture of a Hot Standby System End Level 4 Node: Architecture of a Hot Standby System
Start Level 4 Node: What Happens When the Master Database of a Hot Standby System Fa What Happens When the Master Database of a Hot Standby System Fa End Level 4 Node: What Happens When the Master Database of a Hot Standby System Fa
Start Level 2 Node: Exporting and Importing Exporting and Importing End Level 2 Node: Exporting and Importing
Start Level 2 Node: Managing Users Managing Users End Level 2 Node: Managing Users
Start Level 3 Node: Database System Administrator Database System Administrator End Level 3 Node: Database System Administrator
Start Level 3 Node: DBM Operators DBM Operators End Level 3 Node: DBM Operators
Start Level 3 Node: Database Users Database Users End Level 3 Node: Database Users
Start Level 3 Node: Conventions for User Names and Passwords Conventions for User Names and Passwords End Level 3 Node: Conventions for User Names and Passwords
Start Level 3 Node: Special Operating System Users and Groups Special Operating System Users and Groups End Level 3 Node: Special Operating System Users and Groups
Start Level 4 Node: Special Operating System User Group on Microsoft Windows Special Operating System User Group on Microsoft Windows End Level 4 Node: Special Operating System User Group on Microsoft Windows
Start Level 4 Node: Special Operating System Users and Groups on Unix and Linux Special Operating System Users and Groups on Unix and Linux End Level 4 Node: Special Operating System Users and Groups on Unix and Linux
Start Level 5 Node: <sdb_user> (Special Operating System User) <sdb_user> (Special Operating System User) End Level 5 Node: <sdb_user> (Special Operating System User)
Start Level 5 Node: <sdba_group> (Special Operating System Group) <sdba_group> (Special Operating System Group) End Level 5 Node: <sdba_group> (Special Operating System Group)
Start Level 5 Node: Support Group (Special Operating System Group) Support Group (Special Operating System Group) End Level 5 Node: Support Group (Special Operating System Group)
Start Level 2 Node: Analyzing Database Performance Analyzing Database Performance End Level 2 Node: Analyzing Database Performance
Start Level 3 Node: SQL Optimizer SQL Optimizer End Level 3 Node: SQL Optimizer
Start Level 4 Node: How SQL Statements Are Processed How SQL Statements Are Processed End Level 4 Node: How SQL Statements Are Processed
Start Level 4 Node: How the SQL Optimizer Estimates the Costs of SQL Statements How the SQL Optimizer Estimates the Costs of SQL Statements End Level 4 Node: How the SQL Optimizer Estimates the Costs of SQL Statements
Start Level 4 Node: SQL Optimizer Statistics SQL Optimizer Statistics End Level 4 Node: SQL Optimizer Statistics
Start Level 4 Node: Search Conditions Search Conditions End Level 4 Node: Search Conditions
Start Level 5 Node: Equality Condition Equality Condition End Level 5 Node: Equality Condition
Start Level 5 Node: Range Condition Range Condition End Level 5 Node: Range Condition
Start Level 5 Node: IN Condition IN Condition End Level 5 Node: IN Condition
Start Level 5 Node: LIKE Condition LIKE Condition End Level 5 Node: LIKE Condition
Start Level 5 Node: Restrictions for UPDATE Statements Restrictions for UPDATE Statements End Level 5 Node: Restrictions for UPDATE Statements
Start Level 4 Node: Search Strategies Search Strategies End Level 4 Node: Search Strategies
Start Level 5 Node: Sequential Search (Table Scan) Sequential Search (Table Scan) End Level 5 Node: Sequential Search (Table Scan)
Start Level 5 Node: Search Strategies for Key Column Search Conditions Search Strategies for Key Column Search Conditions End Level 5 Node: Search Strategies for Key Column Search Conditions
Start Level 5 Node: Search Strategies for Indexed Column Search Conditions Search Strategies for Indexed Column Search Conditions End Level 5 Node: Search Strategies for Indexed Column Search Conditions
Start Level 5 Node: Search Strategies for Search Conditions Linked with OR Search Strategies for Search Conditions Linked with OR End Level 5 Node: Search Strategies for Search Conditions Linked with OR
Start Level 5 Node: Search Strategies for Joins Search Strategies for Joins End Level 5 Node: Search Strategies for Joins
Start Level 6 Node: JoinSearchLevel Database Parameter JoinSearchLevel Database Parameter End Level 6 Node: JoinSearchLevel Database Parameter
Start Level 5 Node: Postponement of the Search to the FETCH Time Postponement of the Search to the FETCH Time End Level 5 Node: Postponement of the Search to the FETCH Time
Start Level 5 Node: List of All Search Strategies List of All Search Strategies End Level 5 Node: List of All Search Strategies
Start Level 6 Node: CATALOG ACCESS USING USERS TABLE LIST CATALOG ACCESS USING USERS TABLE LIST End Level 6 Node: CATALOG ACCESS USING USERS TABLE LIST
Start Level 6 Node: CATALOG KEY ACCESS CATALOG KEY ACCESS End Level 6 Node: CATALOG KEY ACCESS
Start Level 6 Node: CATALOG SCAN CATALOG SCAN End Level 6 Node: CATALOG SCAN
Start Level 6 Node: CATALOG SCAN USING USER EQUAL CONDITION CATALOG SCAN USING USER EQUAL CONDITION End Level 6 Node: CATALOG SCAN USING USER EQUAL CONDITION
Start Level 6 Node: DIFFERENT STRATEGIES FOR OR-TERMS DIFFERENT STRATEGIES FOR OR-TERMS End Level 6 Node: DIFFERENT STRATEGIES FOR OR-TERMS
Start Level 6 Node: EQUAL CONDITION FOR INDEX EQUAL CONDITION FOR INDEX End Level 6 Node: EQUAL CONDITION FOR INDEX
Start Level 6 Node: EQUAL CONDITION FOR KEY EQUAL CONDITION FOR KEY End Level 6 Node: EQUAL CONDITION FOR KEY
Start Level 6 Node: IN CONDITION FOR INDEX IN CONDITION FOR INDEX End Level 6 Node: IN CONDITION FOR INDEX
Start Level 6 Node: IN CONDITION FOR KEY IN CONDITION FOR KEY End Level 6 Node: IN CONDITION FOR KEY
Start Level 6 Node: INDEX SCAN INDEX SCAN End Level 6 Node: INDEX SCAN
Start Level 6 Node: JOIN VIA INDEXED COLUMN JOIN VIA INDEXED COLUMN End Level 6 Node: JOIN VIA INDEXED COLUMN
Start Level 6 Node: JOIN VIA KEY COLUMN JOIN VIA KEY COLUMN End Level 6 Node: JOIN VIA KEY COLUMN
Start Level 6 Node: JOIN VIA KEY RANGE JOIN VIA KEY RANGE End Level 6 Node: JOIN VIA KEY RANGE
Start Level 6 Node: JOIN VIA MULTIPLE INDEXED COLUMNS JOIN VIA MULTIPLE INDEXED COLUMNS End Level 6 Node: JOIN VIA MULTIPLE INDEXED COLUMNS
Start Level 6 Node: JOIN VIA MULTIPLE KEY COLUMNS JOIN VIA MULTIPLE KEY COLUMNS End Level 6 Node: JOIN VIA MULTIPLE KEY COLUMNS
Start Level 6 Node: JOIN VIA RANGE OF MULTIPLE INDEXED COL. JOIN VIA RANGE OF MULTIPLE INDEXED COL. End Level 6 Node: JOIN VIA RANGE OF MULTIPLE INDEXED COL.
Start Level 6 Node: JOIN VIA RANGE OF MULTIPLE KEY COLUMNS JOIN VIA RANGE OF MULTIPLE KEY COLUMNS End Level 6 Node: JOIN VIA RANGE OF MULTIPLE KEY COLUMNS
Start Level 6 Node: NO RESULT SET POSSIBLE NO RESULT SET POSSIBLE End Level 6 Node: NO RESULT SET POSSIBLE
Start Level 6 Node: NO STRATEGY NOW (ONLY AT EXECUTION TIME) NO STRATEGY NOW (ONLY AT EXECUTION TIME) End Level 6 Node: NO STRATEGY NOW (ONLY AT EXECUTION TIME)
Start Level 6 Node: RANGE CONDITION FOR INDEX RANGE CONDITION FOR INDEX End Level 6 Node: RANGE CONDITION FOR INDEX
Start Level 6 Node: RANGE CONDITION FOR KEY RANGE CONDITION FOR KEY End Level 6 Node: RANGE CONDITION FOR KEY
Start Level 6 Node: SUBQ CONDITION FOR INDEX SUBQ CONDITION FOR INDEX End Level 6 Node: SUBQ CONDITION FOR INDEX
Start Level 6 Node: SUBQ CONDITION FOR KEY SUBQ CONDITION FOR KEY End Level 6 Node: SUBQ CONDITION FOR KEY
Start Level 6 Node: TABLE SCAN TABLE SCAN End Level 6 Node: TABLE SCAN
Start Level 4 Node: Analyzing Search Strategies Using the EXPLAIN Statement Analyzing Search Strategies Using the EXPLAIN Statement End Level 4 Node: Analyzing Search Strategies Using the EXPLAIN Statement
Start Level 5 Node: EXPLAIN Statement for Joins EXPLAIN Statement for Joins End Level 5 Node: EXPLAIN Statement for Joins
Start Level 5 Node: EXPLAIN Statement for Complicated SELECT Statements EXPLAIN Statement for Complicated SELECT Statements End Level 5 Node: EXPLAIN Statement for Complicated SELECT Statements
Start Level 5 Node: EXPLAIN Statement for SELECT Statements with Subqueries EXPLAIN Statement for SELECT Statements with Subqueries End Level 5 Node: EXPLAIN Statement for SELECT Statements with Subqueries
Start Level 5 Node: STRATEGY Column STRATEGY Column End Level 5 Node: STRATEGY Column
Start Level 2 Node: Troubleshooting Troubleshooting End Level 2 Node: Troubleshooting
Start Level 3 Node: Checking the Database Configuration Checking the Database Configuration End Level 3 Node: Checking the Database Configuration
Start Level 3 Node: Log Files Log Files End Level 3 Node: Log Files
Start Level 3 Node: Traces Traces End Level 3 Node: Traces
Start Level 3 Node: Miscellaneous Database Files Miscellaneous Database Files End Level 3 Node: Miscellaneous Database Files
Start Level 3 Node: Checking Database Structures Checking Database Structures End Level 3 Node: Checking Database Structures
Start Level 4 Node: Fixing Errors in the Database Structure Fixing Errors in the Database Structure End Level 4 Node: Fixing Errors in the Database Structure
Start Level 3 Node: Tracking Problem Messages in PTS Tracking Problem Messages in PTS End Level 3 Node: Tracking Problem Messages in PTS
Start Level 3 Node: Getting Support Getting Support End Level 3 Node: Getting Support
Start Level 2 Node: Restoring Databases Restoring Databases End Level 2 Node: Restoring Databases
Start Level 3 Node: Initializing Databases Initializing Databases End Level 3 Node: Initializing Databases
Start Level 3 Node: Restoring from a Group of Parallel Data Carriers Restoring from a Group of Parallel Data Carriers End Level 3 Node: Restoring from a Group of Parallel Data Carriers
Start Level 2 Node: Developing Database Applications Developing Database Applications End Level 2 Node: Developing Database Applications


Administration Editor - SAP Documentation

Background documentation Administration Editor

This editor is used for administrative tasks.

Menu Bar
Entry | Description
Refresh (Refresh) | Updates the information displayed on this page.
ONLINE (ONLINE) ADMIN (ADMIN) OFFLINE (OFFLINE) | Sets the operational state of the database
Administration (Administration) | This menu is a duplicate of the database context menu Administration Tasks (described in the respective sections of this documentation).
Copy (Copy) | Copies the content of the editor or view that is currently displayed to the clipboard.
General Database Information
Property | Description
<database_computer>:<database_name> <operational_state> | Database computer, database name, operational state
Data | Fill level of the data area
Log | Information about the overwrite mode or fill level of the log area
Sessions | Database sessions Note Note If no more database sessions are free, no more database users can log on to the database. To configure the number of available sessions, change the general database parameter MaxUserTasks. For more information, see Changing Database Parameters. End of the note.
Tab Pages

Tab Page

Description

Overview

Displaying the Database Properties

Data Area

Displaying Information About the Data Area

Log Area

Displaying Information About the Log Area

Analyzer

Starting or Stopping Database Analyzer

Task Manager

  • Displaying Information About Tasks

  • Displaying Information About Threads

Activities

Displaying Information About Database Activities

Caches

Displaying Information About Caches (Working Memory Areas)

Parameters

Changing Database Parameters

Backup

Opening the Backup History

Defining Backup Templates

Snapshots

Displaying Information About Snapshots

Command Line

Executing DBM Commands


dbm_stop - SAP Documentation

Background documentation dbm_stop

You end all DBM server connections to the specified database, except the one you use to execute this command.

Caution Caution

Please note that this command also ends the connections to the database which are used by other tools, such as Database Studio.

End of the caution.

You can specifiy the process ID to define only a particular DBM server process to be stopped.

As per the system default, the command for ending all DBM server connection is only successful if the commands that are still being executed within the database, are ended within 2 minutes. If these commands take longer, the system does not close the DBM server connections to the database, and the command for deleting the database fails.

New commands are still accepted at this time, but are no longer executed.

You can enter an option in the command to force the system to close the DBM server connection/s. Instead of waiting until current DBM commands have finished, the system stops the DBM server/s immediately.

Prerequisites

  • You have the server permission InstallMgm.

Structure

dbm_stop [-f] [<PID>]

Option

Description

-f

If you specify this option, all DBM server connections to the database, or the server connection specified by its process ID, will be closed immediately, even if DBM commands are still being executed using the connection/s.

Caution Caution

Therefore, use this command with extreme caution.

End of the caution.

The command line windows in question then no longer function. As soon as you enter another DBM command, an error message is displayed.

<PID>

Process ID of the DBM server which is to be ended.

Result

OK

In the event of errors, see Reply Format.


-8000: SERVERDB must be restarted - SAP Documentation

Background documentation -8000: SERVERDB must be restarted

Explanation

You cannot work on the database instance because it was shut down.

User Response

Start the database instance in the ONLINE operational state.


-10001: System error: <description> - SAP Documentation

Background documentation -10001: System error: <description>

Explanation

Calling a system function generated an error that could not be processed. <description> provides more information about the error.

User Response

  • Check whether you have sufficient operating system resources.

  • Check whether the operating system user who is logged on has the required read, write and execution authorizations.


Sample - SAP Documentation

Background documentation Sample

The system uses samples to estimate the SQL optimizer statistics for a table. The default value for the sample size is 20,000 records.

Sample Type and Size for Updating the SQL Optimizer Statistics
Number of Data Records (Sample Type Rows) | Proportion of Data Records as Percentage of all Data Records in the Table (Sample Size Percent) | Description
0 | 0 | The system does not update any statistics for the table.
0 < Number of data records < Number of data records in the table The default value for the sample size is 20,000 data records. | 0 < Percentage of data records < 100 % For large tables (> 1,000,000 data records) in SAP systems, we recommend a sample size of 5 %. | The system uses the sample size specified to estimate the statistics.
Number of all data records in the table | 100 % | The system calculates the statistics. This usually takes much longer than an estimation using a sample.

More Information

Concepts of the Database System, SQL Optimizer Statistics, Analyzing Search Strategies Using the EXPLAIN Statement

SQL Reference Manual, SAMPLE Definition

Database Administration in CCMS, SQL Optimizer in CCMS, Scheduling Updates of the SQL Optimizer Statistics

SAP Note 927882


Exporting LOB Values - SAP Documentation

Background documentation Exporting LOB Values

You can export LOB values in data streams with the EXPORT TABLE and EXPORT COLUMNS commands. Using the appropriate Loader syntax rules, you can define the data streams to which the LOB values are exported.

Note Note

Special syntax rules for handling LOB values are not required if you use the PAGES or RECORDS formats.

End of the note.

Structure

Syntax Syntax

  1. <export_lobcolumn_spec> ::=
  LOB <outstream_lob_spec>
<oustream_lob_spec> ::=
  OUTSTREAM [FILE] <column_spec> '<stream_name>'
    [<lob_code_spec>]

<column_spec> ::=
  <column_name>
| <column_id>

<lob_code_spec> ::=
  <code_spec>
| BINARY
End of the code.
<column_spec>

You can use the column name (column_name) or the column ID (column_id) for a LOB column that is to be exported. The column ID reflects the position of the column in the column list.

Example Example

Specify the LOB column name INFO

EXPORT TABLE hotel.hotel

DATA OUTSTREAM 'hotel_csv.data'

LOB OUTSTREAM info 'hotel_info.data'

End of the example.

Example Example

Specify the column ID of the LOB column INFO

EXPORT TABLE hotel.hotel

DATA OUTSTREAM 'hotel_csv.data'

LOB OUTSTREAM 5 'hotel_info.data'

End of the example.
<lob_code_spec>

Using the syntax rule lob_code_spec, you can specify the code type for each data stream containing LOB values that are to be exported to a column . Only one code type may be specified in the command for each data stream created.

Example Example

Specify the ASCII code type

EXPORT TABLE hotel.hotel

DATA OUTSTREAM 'hotel_csv.data'

LOB OUTSTREAM info 'hotel_info.data' ASCII

End of the example.
Specifying the LOB Data Stream <stream_name>

The data for LOB values is stored separately from the other data in LOB data streams. These stream_name data streams (name and path of the data stream) are always of data carrier type FILE. When you export LOB values, you must distinguish between the following cases:

  • Each LOB value to be exported is exported to a separate LOB data stream

  • All LOB values to be exported are exported to one LOB data stream

Each LOB Value to be Exported Is Exported to a Separate LOB Data Stream

You use the export command to assign the name of a LOB data stream for each LOB value that is to be exported. After you have specified the LOB column in the export command, you specify the name of the LOB data stream with a number of placeholders for sequential numbering of the generated LOB data streams. If there is no value in a data record for the LOB column you want to export (the value is an empty character string), an empty LOB data stream is generated for this LOB value. Using the unique name generated in this way, the individual LOB data streams can be assigned to the corresponding data record in the target table.

Note Note

Supply a sufficient number of numeric characters at the end of the LOB data stream name as a placeholder. If the upper limit is reached while the data is being exported, but there are still values left to be exported, Loader generates an error message and terminates the export command.

End of the note.

Example Example

EXPORT TABLE hotel.hotel

DATA OUTSTREAM 'hotel_csv.data'

LOB OUTSTREAM info 'hotel_info.data###'

Loader generates the LOB data stream with the name hotel_info.data.001 for the first LOB value to be exported, the data stream hotel_info.data.002 for the second, and so on.

Contents of the data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","hotel_info.data001"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","hotel_info.data002"

End of the example.

See also: Importing LOB Values, Each LOB Value to be Imported Is in a Separate LOB Data Stream

All LOB Values to be Exported are Exported to One LOB Data Stream

In the command for exporting data, you specify the name of a LOB data stream for each LOB column. This data stream contains the LOB values of this LOB column to be exported. If there is no value in a data record for the LOB column you want to export (the value is an empty character string), the position specification for this LOB value is generated as follows: the starting position is the end position of the preceding LOB value in the column plus 1; the end position is the end position of the preceding LOB value in the column. This means that if there is an empty value, the starting position is always one value larger than the end position. The starting and end positions of the generated LOB value in the LOB data stream enable the LOB values to be assigned to data records.

Example Example

EXPORT TABLE hotel.hotel

DATA OUTSTREAM 'hotel_csv.data'

LOB OUTSTREAM info 'hotel_info.data'

Content of the data stream hotel_csv.data (excerpt):

"10","Congress","20005","155 Beechwood St.","1-994"

"20","Long Island","11788","1499 Grove Street","?"

"30","Regency","20037","477 17th Avenue","995-1157"

End of the example.

See: Importing LOB Values, All of a Column’s LOB Values the are to be Imported are in One LOB Data Stream

More Information

Exporting and Importing LOB Values


Installing the SAP MaxDB Database Software Package - SAP Documentation

Background documentation Installing the SAP MaxDB Database Software Package

Using the SAP MaxDB installation programs you can install or update the complete SAP MaxDB database software or individual software components. If you use Installation Manager, the program itself decides whether it is dealing with a new installation or an update.

You can install the database software multiple times on the same computer. This can mean different versions of the database software or several installations of the same version. While installing the software, you can also create a database.

If you plan to use several databases, we recommend that you install the database software once for each database, even if you use the same software version for these databases. Only in this way can you later perform an upgrade using Installation Manager. Otherwise, special upgrade procedures apply which must be performed in the command line.

Installing the database software once for each database also helps you to avoid down-time, since in this case only one database is affected if an error occurs during an upgrade.

Note Note

An upgrade to version 7.8 is possible only for databases whose catalog data is defined in Unicode. Databases whose catalog data has not been defined in Unicode must be migrated before you can upgrade them to version 7.8. This migration must be carried out in the command line. For more information, see Upgrade Strategies.

To determine whether the catalog data is defined in Unicode, display the value of the database parameter UNICODE.

End of the note.

Before you start an installation, update, or upgrade consider the following:

  • Make sure that you have taken precautions against the most common errors that can cause an installation or update to fail. For more information, see Troubleshooting.

  • Decide whether you need one or more databases.

  • Choose the installation program.

Using Installation Manager

Whenever possible use Installation Manager, which offers a graphical user interface and guides you through the installation-, upgrade-, or uninstallation process. Installation Manager offers a preconfigured desktop installation but also an expert mode. This allows you to choose software components and appropriate combinations of them, and it takes into account the dependencies between them.

For details, see Using Installation Manager

Installation, Upgrade, and Uninstalling in the Command Line

If installing in the command line, you are required to know and take into account dependencies between software components. Choose a command line program particularly if a background installation is wanted. For details, see: Installation, Upgrade and Uninstalling in the Command Line


Date Specifications - SAP Documentation

Background documentation Date Specifications

You use this syntax rule to specify the data format of the plain text values in which DATE columns are input and output. This format only applies to the import or export command in which it is specified. If no date format is specified in a Loader command, either the Loader default or a value specified with the SET DATE command is used. You use the SET DATE command to specify the date format for all subsequent commands. In a Loader session, this applies until a new SET command is executed.

Structure

Syntax Syntax

  1. <set_date_command> ::=
  SET DATE <standard_date_mask>

<date_spec> ::=
  DATE <standard_date_mask>
| DATE '<free_mask_date>'

<standard_date_mask> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA
End of the code.
<standard_date_mask>
'YYYY' | Four-digit year format
'MM' | Two-digit month format (01-12)
'DD' | Two-digit day format (01-31)
Format | General Format | Example
EUR | 'DD.MM.YYYY' | '23.01.2008'
INTERNAL | 'YYYYMMDD' | '20080123'
ISO/JIS | 'YYYY-MM-DD' | '2008-01-23'
USA | 'MM/DD/YYYY' | '01/23/2008'

Day and month entries must have two digits. The year must have four digits.

<set_date_command>

This setting of a standardized date mask using the SET DATE command applies to the entire Loader session if the date mask is not changed by another SET DATE command.

<date_spec>

You can change the current date mask for Loader commands by using the syntax element date_spec to define the data format (field_format_spec).

DATE <standard_date_mask>

You use the standard_date_mask to specify the format for plain text values in which DATE columns are input and output (default value: INTERNAL).

DATE '<free_mask_date>'

You use any date mask free_mask_date to specify the format for plain text values in which DATE columns are input and output. Use Y for the year, M for the month, D for the day. Years must have two or four characters, days must have two characters, and months must have two characters.

Example

Example Example

EXPORT TABLE hotel.reservation

DATA OUTSTREAM 'reservation_csv.data'

  DATE ISO

End of the example.

Standard date mask ISO is specified.

Example Example

IMPORT TABLE hotel.reservation

DATA INSTREAM 'reservation_csv.data'

  DATE 'YY-MM-DD'

Example of the content of the data stream:

"100","3000","80","single","05-11-13","05-11-15"

End of the example.

Any mask YY-MM-DD is specified for dates.

More Information

Time Specifications

Time Stamp Specifications

Loader Commands and SQL Statements


-1400: Input parameter cannot be NULL value - SAP Documentation

Background documentation -1400: Input parameter cannot be NULL value

Explanation

The value of an input parameter must not be a null value, because null values are not permitted for the column.

User Response

Change the application or the column definition in the CREATE TABLE statement.


-731: Component name too long - SAP Documentation

Background documentation -731: Component name too long

Explanation

Structure names become longer than 18 bytes by expansion.

User Response

Shorten the structure names in the table definition. If this is not possible, specify the column names separately.


-24969: ERR_XPDIRTY - param file is dirty - SAP Documentation

Background documentation -24969: ERR_XPDIRTY - param file is dirty

Explanation

An attempt has been made to make a change to the database parameters without first checking whether or not a previous change works properly by restarting the database instance.

User Response

Start the database instance and repeat the change you made to the database parameter.

Caution Caution

Restarting the database instance breaks the connection to all users logged on to the database instance or ends all programs that are running on it.

End of the caution.


Deleting View Tables - SAP Documentation

Procedure documentation Deleting View Tables

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the view table or have DROPIN privilege for the schema to which the view table belongs.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the view table in the explorer tree.

  2. In the context menu of the view table, choose Delete.

Result

The system deletes the view table definition along with synonyms, view tables, and privileges that are dependent on this view table. Deleting a view table does not affect the table on which the view table is based.

More Information

SQL Reference Manual, DROP VIEW Statement (drop_view_statement)


-24931: ERR_XPMIN - parameter value smaller than minimum allowed - SAP Documentation

Background documentation -24931: ERR_XPMIN - parameter value smaller than minimum allowed

Explanation

The entered database parameter value exceeds the permitted maximum value.

User Response

Correct your entry, and re-execute the DBM command.


-1113: Too many nested function calls - SAP Documentation

Background documentation -1113: Too many nested function calls

Explanation

The SQL statement contains more nested function calls than can be processed.

User Response

Check whether some of the functions within the nesting can be omitted. If this is not possible, check whether the desired effect can be obtained by using a QUERY expression in the FROM clause or by generating and reusing a named result table that contains part of the functions.


-942: Unknown table name - SAP Documentation

Background documentation -942: Unknown table name

Explanation

A table with the specified name is not known to the current user. This table may not exist; or perhaps it does exist, but you have no privileges for it.

User Response

Use a QUERY statement issued on the system table DOMAIN.TABLES to find out the names of the tables for which you have privileges. Correct the table name. (It may be sufficient to place the missing owner in front of the name). If correction is not possible, create a table with this name. Check why you have no privileges for the existing table.


backup_cancel_req - SAP Documentation

Background documentation backup_cancel_req

This DBM command is only used by DBM client programs.

There is no documentation for this at present.


Configuration - SAP Documentation

Procedure documentation Configuration

In the Administration user menu, you can, among other things, display and change the current configuration values of volumes, the parameters of a database, and backup templates.

Note Note

If a database user is performing configuration functions, the configuration function is locked for all other database users.

End of the note.

Prerequisites

Prerequisites

SAP liveCache Technology: In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Administration [image] Configuration [image] .

Result

The system displays the following:

  • Parameters

  • Parameter History

  • SAP liveCache Technology: Volumes

  • Backup Templates


-25498: Errors processing data for table <table_name>; No data imported/updated. - SAP Documentation

Background documentation -25498: Errors processing data for table <table_name>; No data imported/updated.

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data of a table. See the log file for additional messages describing the cause of the error

User Response

Correct the cause of the error and re-execute the command.


-24945: ERR_TOFEWPARAM - too few parameters - SAP Documentation

Background documentation -24945: ERR_TOFEWPARAM - too few parameters

Explanation

The DBM command has too few parameters.

User Response

Correct your entry according to the documentation for DBM commands, and execute the statement again.


Loader Log Functions - SAP Documentation

Function documentation Loader Log Functions

Loader logs its actions in files and system tables.

Features

  • Loader Log file: Loader logs its export and import actions in the log file loader_<timestamp>.log or loader.log.

  • Loader Transformation History: When working in transport mode, the loader creates a transformation history transport.log in addition to the log file.

  • Additional Log Functions (package_spec): You can obtain a detailed log of a single Loader command using the syntax element package_spec.

  • Loader System Tables: Depending on the data volume, transporting data can take a considerable amount of time. Loader can restart the action if it is interrupted by evaluating the information in the system tables.

More Information

Loader


-28904: DB function containing SQL statements not allowed - SAP Documentation

Background documentation -28904: DB function containing SQL statements not allowed

Explanation

The CREATE INDEX command contains a function which has at least one SQL command. This is not allowed.

User Response

Remove the SQL commands from the function.


-25348: Different byte swap of source and target computer. Löschen - SAP Documentation

Background documentation -25348: Different byte swap of source and target computer. Löschen

Explanation

You executed a command to import data in the PAGES format. The command was terminated due to different storage architectures of the source and target database computer. This type of transport is not supported.

User Response

Import the data to a computer with the same architecture.


-24959: ERR_XPOVERFLOW - value out of margin - SAP Documentation

Background documentation -24959: ERR_XPOVERFLOW - value out of margin

Explanation

The value used for a database parameter is invalid. You have either chosen an invalid data type (for example, you have used text for a numerical parameter) or you have exceeded the maximum values allowed for that data type (for example, you have used too large a number or too much text).

User Response

Correct your entry.f the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


Threads - SAP Documentation

Background documentation Threads

A process consists of one or more threads in which the application is executed. The database generates threads for those tasks that the system is to execute in parallel. A thread is the unit to which the operating system assigns processor time.

Note that on Linux systems without NPTL (Native Posix Thread Library), each thread is simulated by a clone process.

This graphic is explained in the accompanying text.

Threads of a Database

The database system differentiates between two types of threads:

  • User Kernel Threads (UKT)

    UKTs process client requests. They are the threads that use the most processor time. A database generally has several UKTs.

    In general, several tasks share an UKT. The database system controls the sequence in which the tasks run in an UKT, and can therefore avoid conflicts in accessing resources.

    More information: Task Switching

    To distribute tasks optimally to the UKTs, the database system performs internal load balancing between the user kernel threads.

    More information: Load Balancing Between User Kernel Threads

  • Special Threads

    Special threads provide services for the user kernel threads. In special threads, the database system executes tasks whose duration cannot be predicted, such as operating system calls for reading and writing to volumes and connection requests from clients. The database system processes special threads asynchronously to the user kernel threads.

    Special Threads

    Name

    Description

    Coordinator

    The Coordinator thread monitors all threads in the database. It is the first thread that the system creates when the database is started. It coordinates the start processes of the other threads. If errors occur, the Coordinator thread can stop other threads.

    Requester

    The Requester thread accepts user logons to the database and assigns them to a user task within a user kernel thread.

    Console

    The Console thread processes the requests of the XCONS database tool (database console).

    Clock

    Only on Microsoft Windows

    The Clock thread sets a global time variable with which internal time measurements are aligned.

    dev<n>

    Dev Threads are responsible for carrying out write and read requests of the tasks in the volumes.

    The Dev threads are numbered sequentially (dev<n>). The Dev thread dev0 plays a special role here. It coordinates and monitors the other Dev threads.

    The number of Dev threads is primarily dependent on the number of volumes in the database. The database system activates two Dev threads for each data volume and each log volume. If the database trace is on, the database system activates a Dev thread for it as well.

    asdev<i>

    To perform data backups, the database system activates temporary Dev threads asdev<i> for reading and writing the data.

    Timer

    Timer threads are responsible for monitoring the time for time-outs, for internal load balancing and for other time-dependent internal controls.

    Worker

    The Worker thread is responsible for reporting completed asynchronous I/O operations.

To display information about threads, use Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio, Displaying Information About Threads

  • Database Manager CLI, show

  • Database Administration in CCMS, Kernel Threads

More Information

Tasks


OMSPROCEDURESTATISTICS - SAP Documentation

Object documentation OMSPROCEDURESTATISTICS

The system table SYSINFO.OMSPROCEDURESTATISTICS describes the activities of OMS database procedures (DB procedures) since the database system was started.

Structure

OMSPROCEDURESTATISTICS
SCHEMANAME | CHAR(32) | Name of the schema to which the container belongs
PROCEDURENAME | CHAR(32) | Name of the DB procedure = name of the C++ method that implements the DB procedure
CALLCOUNT | FIXED(20) | Number of DB procedure calls
AVGRUNTIME | FIXED(10) | Average execution time (ms)
MINRUNTIME | FIXED(10) | Minimum execution time (ms)
MAXRUNTIME | FIXED(10) | Average execution time (ms)
AVGSTREAMCOMMUNICATIONTIME | FIXED(10) | Average stream communication time (ms)
READCACHEDOBJECTCOUNT | FIXED(20) | Number of read accesses to the object via the OMS heap (contains READOBJECTCOUNT)
READOBJECTCOUNT | FIXED(20) | Number of read accesses to the object that could not be performed via the OMS heap
READOBJECTINVERSIONCOUNT | FIXED(20) | Number of read accesses to the object within an OMS version
READCACHEDOBJECTVIAKEYCOUNT | FIXED(20) | Number of key accesses to the object via the OMS heap (contains READOBJECTVIAKEYCOUNT)
READOBJECTVIAKEYCOUNT | FIXED(20) | Number of key accesses to the object that could not be performed via the OMS heap
UPDATECACHEDOBJECTCOUNT | FIXED(20) | Number of object change notices in the OMS heap
UPDATEOBJECTCOUNT | FIXED(20) | Number of changed objects
DELETECACHEDOBJECTCOUNT | FIXED(20) | Number of object delete notices in the OMS cache
DELETEOBJECTCOUNT | FIXED(20) | Number of deleted objects
LOCKOBJECTCOUNT | FIXED(20) | Number of object lock requests
SCANOBJECTCOUNT | FIXED(20) | Number of container scans
RELEASEOBJECTCOUNT | FIXED(20) | Number of explicitly released objects
RELEASEOBJECTDONECOUNT | FIXED(20) | Number of explicitly released objects actually released by OMS
READOBJECTHISTORYACCESSCOUNT | FIXED(20) | Number of history accesses triggered by read accesses to objects
SCANOBJECTHISTORYACCESSCOUNT | FIXED(20) | Number of history accesses triggered by container scans
CPPEXCEPTIONCOUNT | FIXED(20) | Number of C++ exceptions
OUTOFDATAEXCEPTIONCOUNT | FIXED(20) | Number of exceptions triggered by lock requests for non-current objects
TIMEOUTEXCEPTIONCOUNT | FIXED(20) | Number of timeouts with lock requests
OUTOFMEMORYEXCEPTIONCOUNT | FIXED(20) | Number of occurrences of insufficient memory
TERMINATECOUNT | FIXED(20) | Number of transaction terminations due to unforeseen errors
ROLLBACKSUBTRANSCOUNT | FIXED(20) | Number of undone subtransactions
COMMITSUBTRANSCOUNT | FIXED(20) | Number of successfully completed subtransactions
SUBTRANSACTIONLEVEL | FIXED(5) | Maximum subtransaction depth
READVAROBJECTCOUNT | FIXED(20) | Number of read variable-length objects
UPDATEVAROBJECTCOUNT | FIXED(20) | Number of altered variable-length objects
DELETEVAROBJECTCOUNT | FIXED(20) | Number of deleted variable-length objects
AVGVAROBJECTLENGTH | FIXED(5) | Average length of an object of variable length
CREATEVERSIONCOUNT | FIXED(20) | Number of created OMS versions
OPENVERSIONCOUNT | FIXED(20) | Number of open operations on OMS versions
CLOSEVERSIONCOUNT | FIXED(20) | Number of close operations on OMS versions
DROPVERSIONCOUNT | FIXED(20) | Number of deleted OMS versions
UPDATEOBJECTCOUNTINVERSION | FIXED(20) | Number of objects altered within an OMS version
DELETEOBJECTCOUNTINVERSION | FIXED(20) | Number of objects deleted within an OMS version
READOBJECTCOUNTINVERSION | FIXED(20) | Number of objects read within an OMS version
READOBJECTVIAKEYCOUNTINVERSION | FIXED(20) | Number of key accesses to the object within an OMS version
AVGWAITTIMEFORNEWCONSISTENTVIEW | FIXED(20) | Average wait time for a new consistent view (s)
MINWAITTIMEFORNEWCONSISTENTVIEW | FIXED(20) | Minimum wait time for a new consistent view (s)
MAXWAITTIMEFORNEWCONSISTENTVIEW | FIXED(20) | Maximum wait time for a new consistent view (s)
AVGREADSTREAMBUFFERCOUNT | FIXED(20) | Average number of communications for reading ABAP tables
MINREADSTREAMBUFFERCOUNT | FIXED(20) | Minimum number of communications for reading ABAP tables
MAXREADSTREAMBUFFERCOUNT | FIXED(20) | Maximum number of communications for reading ABAP tables
AVGWRITESTREAMBUFFERCOUNT | FIXED(20) | Average number of communications for writing ABAP tables
MINWRITESTREAMBUFFERCOUNT | FIXED(20) | Minimum number of communications for writing ABAP tables
MAXWRITESTREAMBUFFERCOUNT | FIXED(20) | Maximum number of communications for writing ABAP tables
AVGREADSTREAMROWCOUNT | FIXED(20) | Average number of rows read from ABAP tables
MINREADSTREAMROWCOUNT | FIXED(20) | Minimum number of rows read from ABAP tables
MAXREADSTREAMROWCOUNT | FIXED(20) | Average number of rows read from ABAP tables
AVGWRITESTREAMROWCOUNT | FIXED(20) | Average number of rows written from ABAP tables
MINWRITESTREAMROWCOUNT | FIXED(20) | Minimum number of rows written from ABAP tables
MAXWRITESTREAMROWCOUNT | FIXED(20) | Maximum number of rows written from ABAP tables
MEMORYREQUESTCOUNT | FIXED(10) | Number of lock requests
AVGREQUESTMEMORYCHUNKSIZE | FIXED(10) | Average size of a requested memory block (bytes)
MINREQUESTMEMORYCHUNKSIZE | FIXED(10) | Smallest requested memory block (bytes)
MAXREQUESTMEMORYCHUNKSIZE | FIXED(10) | Largest requested memory block (bytes)
MEMORYRELEASECOUNT | FIXED(10) | Number of memory releases
AVGRELEASEMEMORYCHUNKSIZE | FIXED(10) | Average size of a released memory block (bytes)
MINRELEASEMEMORYCHUNKSIZE | FIXED(10) | Smallest released memory block (bytes)
MAXRELEASEMEMORYCHUNKSIZE | FIXED(10) | Largest released memory block (bytes)
AVGMEMORYDELTA | FIXED(20) | Average memory requirement change per procedure call
MINMEMORYDELTA | FIXED(20) | Minimum memory requirement change for a procedure call
MAXMEMORYDELTA | FIXED(20) | Maximum memory requirement change for a procedure call
COMPONENTSIZE | FIXED(20) | Current size of the component instance the DB procedure belongs to (bytes)
CACHEHITCOUNT | FIXED(20) | Number of read accesses to the object satisfied via the OMS cache
CACHEMISSCOUNT | FIXED(20) | Number of read accesses to the object not satisfied via the OMS cache
MAXCACHEHASHCHAINLENGTH | FIXED(20) | Maximum length of an OMS cache chain
AVGHASHCHAINTRAVERSED | FIXED(5.2) | Average number of chain elements searched for in each object read access
REHASHCOUNT | FIXED(5) | Number of resizings of the OMS cache
LOCKOBJECTCOLLISIONCOUNT | FIXED(20) | Number of lock collisions
AVGLOCKOBJECTWAITTIME | FIXED(20) | Average wait time for the release of locks (µs)


SAP Library - PHP Manual

Start Level 1 Node: PHP Manual PHP Manual End Level 1 Node: PHP Manual
Start Level 2 Node: Creating and Installing the SAP MaxDB PHP Extension on Linux Creating and Installing the SAP MaxDB PHP Extension on Linux End Level 2 Node: Creating and Installing the SAP MaxDB PHP Extension on Linux
Start Level 2 Node: Testing the SAP MaxDB PHP Extension on Linux Testing the SAP MaxDB PHP Extension on Linux End Level 2 Node: Testing the SAP MaxDB PHP Extension on Linux
Start Level 2 Node: Installing the SAP MaxDB PHP Library on Microsoft Windows Installing the SAP MaxDB PHP Library on Microsoft Windows End Level 2 Node: Installing the SAP MaxDB PHP Library on Microsoft Windows
Start Level 2 Node: Testing the PHP Library on Microsoft Windows Testing the PHP Library on Microsoft Windows End Level 2 Node: Testing the PHP Library on Microsoft Windows


-10202: Function sequence error (operation was aborted by disconnect) - SAP Documentation

Background documentation -10202: Function sequence error (operation was aborted by disconnect)

Explanation

The SQLDBC_PreparedStatement::putData method that was called could not be executed, because the connection to the database instance was terminated.

User Action

Log on to the database instance again.


SAP Library - Perl Manual

Start Level 1 Node: Perl Manual Perl Manual End Level 1 Node: Perl Manual
Start Level 2 Node: Configuring the Perl Module Configuring the Perl Module End Level 2 Node: Configuring the Perl Module


-841: Invalid precompiler option - SAP Documentation

Background documentation -841: Invalid precompiler option

Explanation

A precompiler option is incorrect or unknown.

User Response

For the exact error description, see the precompiler log or the SQLERROR file. Check the options and specify them correctly.


SAP Notes - SAP Documentation

Background documentation SAP Notes

There are a number of SAP Notes that could be useful to your work as a database administrator. SAP Notes are part of the SAP Service Marketplace (service.sap.com).

SAP Notes
SAP Note Number | Title
767598 | Available Documentation
826037 | FAQ: MaxDB/liveCache Support
820824 | FAQ: MaxDB/SAP liveCache Technology
1006496 | Feature list liveCache / MaxDB 7.7
1007129 | FAQ: DB Migration with MaxDB as the Target
846890 | FAQ: MaxDB Administration
990602 | FAQ: CCMS for MaxDB / SAP liveCache Technology
819641 | FAQ: MaxDB Performance
928037 | FAQ: MaxDB Indexes
832544 | FAQ: MaxDB Hints
819324 | FAQ: MaxDB SQL Optimization
927882 | FAQ: MaxDB Update Statistics
940420 | FAQ: Database Structure Check (VERIFY)
822239 | FAQ: MaxDB Interfaces
936058 | FAQ: MaxDB Runtime Environment
1014782 | FAQ: MaxDB System Copy
129352 | Homogenous System Copy with MaxDB (SAP DB)
952783 | FAQ: MaxDB High Availability
912905 | FAQ: Storage systems used with MaxDB
830468 | FAQ: Business Warehouse System with MaxDB
1040431 | FAQ: BW Feature Pack
You can find other SAP Notes for SAP MaxDB on the components BC-DB-SDB and BC-DB-LVC.

More Information

Database Administration in CCMS: SAP MaxDB

Database Administration: Overview of Activities

Troubleshooting


-30: Integrity violation - SAP Documentation

Background documentation -30: Integrity violation

Explanation

Insertions or updates would violate integrity constraints specified in the base or view table definition.

User Response

The error message specifies the column which would violate the integrity constraints. Correct the input value for the relevant column.


-27014: Connect not ok - SAP Documentation

Background documentation -27014: Connect not ok

Explanation

An unspecified connection error occurred.

User Response

Contact Support.


VIEWS - SAP Documentation

Example documentation VIEWS

Use of the system table DOMAIN.VIEWS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define view tables. Proceed as described in SQL Tutorial, View Tables.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table VIEWS to determine the following database information, among other things:

  • All privileges of the view table CUSTOMER_ADDR

    SELECT privileges

    FROM DOMAIN.VIEWS

    WHERE schemaname = 'HOTEL'

    AND viewname = 'CUSTOMER_ADDR'

  • All view tables with their comments that the current database user can see without being the owner

    SELECT schemaname, viewname, comment

    FROM DOMAIN.VIEWS

    WHERE owner <> 'MONA'

More Information

Definition text of a view table: see VIEWDEFS

Existence of a view table: see TABLES

Synonym for a view table: see SYNONYMS

Tables and columns forming the basis for a view table: see VIEWCOLUMNS


-25243: Error parsing <time> mask: <error_text> - SAP Documentation

Background documentation -25243: Error parsing <time> mask: <error_text>

Explanation

You have executed a command to export, import, or update data. A date, time, or timestamp format was specified in the command. This format contains errors. The error text describes the cause of the error.

User Response

Correct the time in the command and re-execute it.


-4001: Unknown user name/password combination in operational state ADMIN - SAP Documentation

Background documentation -4001: Unknown user name/password combination in operational state ADMIN

Explanation

The specified combination of user name and password is unknown in the operational state ADMIN. Access to the database system is only possible with the first DBM user.

User Response

Change the user name and the password accordingly.


-25218: No column specified but file format is FWV - SAP Documentation

Background documentation -25218: No column specified but file format is FWV

Explanation

The command to export or import data contains an error.The format FWV was specified for the data stream in a command, but no columns were specified. The FWV format entry requires specification of every column that is to be exported or imported.

User Response

Correct the command and then re-execute it.


-915: No more memory - SAP Documentation

Background documentation -915: No more memory

Explanation

There is not enough main memory available to open a database session or execute the database procedure.

User Response

  1. Increase the memory that is available to your database.

  2. You can only open a session when at least one other user has terminated their session. Reduce the number of sessions if possible.

  3. Try to execute the database procedure at a later stage.

  4. Check the system table MEMORYALLOCATORSTATISTICS for details on memory consumption.

More Information

System Tables, MEMORYALLOCATORSTATISTICS


-7005: Lower bound greater than upper bound not allowed - SAP Documentation

Background documentation -7005: Lower bound greater than upper bound not allowed

Explanation

In the case of an upper and lower limit specification for a range of values, the lower limit is greater than the upper limit.

User Response

Correct the values.


-4007: Unknown synonym name - SAP Documentation

Background documentation -4007: Unknown synonym name

Explanation

There is no synonym with the specified name.

User Response

You can display a list of existing synonym names using a QUERY statement based on the DOMAIN.TABLES system table. Change the name of the domain in the SQL statement accordingly.


-24927: ERR_TOOLCHK: external backup tool not found - SAP Documentation

Background documentation -24927: ERR_TOOLCHK: external backup tool not found

Explanation

The backup tool could not be found or has been installed incorrectly.

User Response

  • Attempt to fix the problem with the help of the extended error description.

  • If you do not want to use a backup tool from another provider, change the backup template definition accordingly.

  • If you cannot solve the problem, contact Support.


Explain (View) - SAP Documentation

Background documentation Explain (View)

The Explain view is displayed after you have execute an EXPLAIN statement.

Structure of the EXPLAIN Result Table

Column

Description

Data Type

SCHEMANAME

Schema name/owner

CHAR(64)

TABLENAME

Table Name

CHAR(64)

COLUMN_OR_INDEX

Shows which key column, inverted column or index is used by the system for the strategy

CHAR(64)

STRATEGY

Shows which search strategy or strategies the system uses and whether the system generates a result table.

The system generates a result table when RESULT IS COPIED is contained in the last result line of the STRATEGY column.

More information: SQL Optimizer,

  • List of All Search Strategies

  • STRATEGY Column

CHAR(40)

PAGECOUNT

Cost determination result for the selected search strategy

This column shows which sizes are assumed for the tables or, in the case of certain strategies, for the indexes.

These sizes affect which search strategy is selected by the system.

To update the defined sizes, use the UPDATE STATISTICS statement or the relevant database tool function.

You can query the defined sizes by selecting the system table OPTIMIZERINFORMATION. You can query the current sizes of tables or indexes by selecting the TABLESTORAGEDETAILS and INDEXSTORAGEDETAILS system tables. When you discover substantial differences between the values in OPTIMIZERINFORMATION and TABLESTORAGEDETAILS, then execute the UPDATE STATISTICS statement for these tables.

If the system discovers during a search in a table that the values determined by the last UPDATE STATISTICS statement are extremely low, a row is entered in the SYSUPDSTATWANTED system table that contains the table name. In all other cases, rows are entered in this system table that describe columns in tables. The UPDATE STATISTICS statement should be executed for tables and table columns that are described in the SYSUPDSTATWANTED system table.

The last row contains the estimated SELECT cost value in the PAGECOUNT column. This estimated SELECT cost value forms the basis of the COSTLIMIT and COSTWARNING information in the SQL statements for creating and changing users (such as the CREATE USER and ALTER USER statements).

CHAR(10)

More Information

Analyzing SQL Statements (EXPLAIN)


Activating or Deactivating Indexes - SAP Documentation

Procedure documentation Activating or Deactivating Indexes

If you deactivate an index, the database system no longer uses it to access data in the database.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the INDEX privilege for the table for which the index has been defined.

    More information: SQL Reference Manual, Privilege Specification (privilege_specification)

  • The database is in the ONLINE operational state.

Procedure

  1. Open the index overview.

    More information: Displaying Indexes

  2. To activate an index, choose Enable in the context menu of the index.

    To deactivate an index, choose Disable in the context menu of the index.


Scheduling an Action - SAP Documentation

Procedure documentation Scheduling an Action

You can use the DBA Planning Calendar to schedule actions (for example, data backups, log backups, updates of SQL Optimizer statistics, and database structure checks). These are then performed at the specified time.

Prerequisites

DBA Planning Calendar

Procedure

  1. Open the DBA Planning Calendar (Setting Up and Using the DBA Planning Calendar).

  2. You can add new actions by:

    a. Double-clicking a calendar cell.

    b. Positioning the cursor on a calendar cell and selecting Add.

    c. Using Drag & Drop to drag an action from the Action Pad to a calendar cell.

    d. Choosing Select Pattern to select an action pattern.

    Note Note

    You can also Drag & Drop actions inside the calendar. To copy an action, press the CTRL button while using Drag & Drop.

    End of the note.

    You come to a dialog box with an Action Description and other possible entries on the tabs Action Parameters and Repeat.

  3. Action Description: If you have selected option a or b, you can choose the action you want to schedule from the Action field. If you have chosen option c the description of the action is copied from the Action Pad. In the Planned Start field, you can enter the date and time for the action to start.

    Action Pad

    Task Area

    Entry in the Action Pad

    Short Name

    Data and Log Backups

    Complete Data Backup

    Incremental Data Backup

    Activate Automatic Log Backup

    Deactivate Automatic Log Backup

    Log Backup

    Archive Log Backup Files

    DataBackup

    IncrBackup

    AutoLogOn

    AuotLogOff

    LogBackup

    ArchivFiles

    Determining Statistics for the SQL Optimizer

    Select Tables for Update Statistics

    Update Statistics for Selected Tables

    Update All Optimizer Statistics

    PrepUpdStat

    UpdStats

    UpdAllStats

    Database Structure Checks

    Check database structure of the snapshot

    Check the Database Structure

    Check the Database Structure (Tables Only)

    CheckDataSn

    CheckData

    CheckTables

    Determine Table Size and Growth

    Update Table Statistics

    CollTabSize

    Determine Class Container Sizes (SAP liveCache technology only)

    Update Class Container Statistics

    CollClaccCo

    Checking Backups

    Check Complete Data Backup

    Check Incremental Data Backup

    Check Log Backup

    CDataBackup

    CIncrBackup

    ClogBackup

    Execute DBM Commands

    Executing DBM Commands

    DBMExecute

    If you have selected option d, proceed as described in Action Patterns.

  4. Action Parameters: The parameters for the required action are displayed in Action Parameters. These vary, depending on the action. On the Action Parameters tab page, enter or change the basic parameters for the action.

  5. Repeat: Select the tab page Repeat and enter a repeat pattern.

    Parameter

    Description

    Recurrence Pattern

    Interval for the action in weeks, days or hours

    Depending on the selected recurrence pattern, you need to specify the pattern in more detail, that is the days of the week for weeks and the hours of the day for a daily period. The action is repeated at the interval you enter. If you select Once only, the action is executed only once.

    Recurrence Range

    Range of time where the action recurs, that is for a specific time interval or for a limited number of occurrences

    Caution Caution

    The system warns you if there is a conflict with an existing action. This does not stop you from adding the new action, however. You must decide for yourself if the collision of the actions will affect performance or database access. The underlying collision check does not search for actions with the same start times, it searches for actions within a time period of about 30 minutes.

    Follow the planning concept you chose.

    End of the caution.

  6. To schedule the action, select Continue.

Editing Previously Planned Actions

To change an entry in an action already scheduled (start, repeat pattern, action parameters), proceed as described in Changing or Deleting an Action.

If you want to execute an action immediately, regardless of its scheduling, proceed as described in Starting an Action Immediately.

Result

The DBA Planning Calendar's schedule is updated. The system checks for conflicts with previously scheduled activities.

If conflicts are found, the system displays them and does not schedule the action. If no conflicts are found, the system includes the action in the DBA Planning Calendar and schedules a background job (or executes the action).

Checking an Action

You should check, at regular intervals, that the actions scheduled are running correctly. You can display the status of each action using the DBA Planning Calendar (Displaying Actions). The Calendar displays unsuccessful actions in a different color.

More Information

  • Scheduling a Data Backup

  • Scheduling Log Backups

  • Scheduling Updates of the SQL Optimizer Statistics

  • Scheduling a Database Structure Check


auto_load_systab - SAP Documentation

Background documentation auto_load_systab

With this command you can display whether the system tables used by the system are up-to-date. You can also display whether the automatic update function for the system tables is on or off, and you can switch the function on and off.

The system default value of the automatic update function for the system tables is ON.

If this function is on, the system checks, whether the version of the database software and the version of the system tables in the database are identical. This check is done during restart after the database has been transferred to the ONLINE operational state.

If the versions are not identical, the system automatically executes the command for updating the system tables (see also load_systab).

If you swith off this function, the automatic update for the system tables is only deactivated for the next restart. The system re-activates it automaticaly for the next but one restart.

Note Note

Only deactivate the automatic update function for the system tables if you are instructed to do so by technical support.

End of the note.

Prerequisites

Structure

auto_load_systab <option>

<option> :: = SHOW | OFF | ON

Options
Option | Description
ON | Switches on the function for automatically updating the system tables every time the database is started. System default value
OFF | Switches off the function for automatically updating the system tables every time the database is started.
SHOW | Displaying the status of the function for automatically updating the system tables.

Result

OK

[Automatic loading of system tables is <ON | OFF>.]

[The system tables are <TOPICAL | OUTDATED>.]

Values for the Reply Fields
Value | Description
ON | The function for automatically updating the system tables is ON. The system tables are updated each time the database starts.
OFF | The function for automatically updating the system tables in OFF.
VALID | The system tables are up-to- date. The contents are known to the system.
INVALID | The system tables have been changed. The changes are not yet known to the system.

In the event of errors, see Reply Format.


Parameter History - SAP Documentation

Procedure documentation Parameter History

In the Administration user menu of the DBA Cockpit, you can find a list of all changes to database parameters, sorted by change date.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Administration [image] Parameter History [image] .

Result

To view the changes made to a database parameter at a particular point in time, use one of the methods below:

  • Click the symbol at the start of the line that contains the desired time point.

  • Select the time point and choose Expand Subtree.

The system displays a list of the database parameters changed up to this point in time, and their previous and new values. Parameters that are no longer used by the database as of a particular date are assigned <<parameter inactive>> as a new value.

Caution Caution

Changes to database parameters generally do not take effect until the database is restarted.

You can also change some database parameters while the database is running (see the description of individual database parameters for more information). In addition, you can choose how long the change is to be effective for these database parameters:

  • Save: Changes to database parameters do not take effect until the next restart.

  • Activate Temporarily: Changes to database parameters take effect immediately, but only until the next restart.

  • Save and activate: Changes to database parameters take effect immediately and are permanent.

If you change a database parameter whose value is normally calculated by the system, then the set value also remains valid for all subsequent recalculations of database parameter values. The system only recalculates the value when the set value is not within the permitted value range.

End of the caution.

More Information

Parameters

Database Administration, Database Parameters


-602: System error - SAP Documentation

Background documentation -602: System error

Explanation

Normal database operations were disrupted. The database may no longer be consistent. An implicit SHUTDOWN may have been performed.

User Response

Shut down the database and contact support. Send the database trace and other log files to support so that the error can be traced and rectified.


1403: Row not found - SAP Documentation

Background documentation 1403: Row not found

Explanation

There is no (other) table row that meets the specified criteria.

User Response

No user action is required.


-28013: Try to flush object which is header only - SAP Documentation

Background documentation -28013: Try to flush object which is header only

Explanation

Writing a persistent object to the kernel failed, since the object only consists of the header information.

User Response

Contact Support.


-25326: The exported number (column '<column_name>') was truncated - SAP Documentation

Background documentation -25326: The exported number (column '<column_name>') was truncated

Explanation

Error executing the Loader command for exporting data.The number that was exported was truncated by a few decimal places when it was converted into an external data type.This error does not cause the command to terminate.

User Response

No user action required.


-25247: Error: specify CATALOG or DATA stream - SAP Documentation

Background documentation -25247: Error: specify CATALOG or DATA stream

Explanation

You have executed a command to import (IMPORT), update (UPDATE), or export (EXPORT) data. The command was terminated because you have not specified a catalog file or a data file in the command.

User Response

Correct the command and then re-execute it.


25926: Processed command is a PAGES format based transport from database with "ASCII|UNICODE" catalog to database with "UNICODE|ASCII" catalog - SAP Documentation

Background documentation 25926: Processed command is a PAGES format based transport from database with "ASCII|UNICODE" catalog to database with "UNICODE|ASCII" catalog

Explanation

You executed a command to transport data between source and target database computer with different storage architectures in the PAGES format. This type of transport is supported.

User Response

This message merely provides information. A user response is not necessary.


-102: SQL statement canceled - SAP Documentation

Background documentation -102: SQL statement canceled

Explanation

The SQL statement currently executed was terminated by a user.

User Response

No user action required in the dialog. In other cases, use a ROLLBACK statement to reset the transaction.


-729: Source code may be truncated - SAP Documentation

Background documentation -729: Source code may be truncated

Explanation

The precompiler only recognizes text that is placed within the line delimiters. The line delimiters depend on the programming language. The warning means that text outside the line delimiters was discovered. This text is ignored by the precompiler.

User Response

If this effect is desired, the warning may be ignored. Otherwise, the text must be written to the next line or the line delimiters must be modified.


-850: Statement termination expected - SAP Documentation

Background documentation -850: Statement termination expected

Explanation

The termination symbol is missing in the preceding SQL statement. It is set by the precompiler.

User Response

If there are no side effects, insert the termination symbol into the statement.


-24995: ERR_MEM - memory allocation error - SAP Documentation

Background documentation -24995: ERR_MEM - memory allocation error

Explanation

The operating system was unable to provide the DBM server with enough main memory.

User Response

Correct the limit on the DBM server’s user authorizations if one exists.Check the overall condition of your operating system for any problems with main memory management.


-28822: Invalid object file ID (internal error) - SAP Documentation

Background documentation -28822: Invalid object file ID (internal error)

Explanation

While accessing the file-directory it was not possible to find an entry for the specified ID.

User Response

Internal error.


-8013: Order column must be output column - SAP Documentation

Background documentation -8013: Order column must be output column

Explanation

  1. Only column names which are also specified as select column can be specified in the ORDER clause of a QUERY statement with DISTINCT specification.

  2. If column numbers are specified, it must be ensured that this number is not greater than the number of specified output columns.

  3. The number of output columns may have decreased in case of a SELECT * as a result of an ALTER TABLE statement with DROP definition.

User Response

  1. Do not use the DISTINCT specification or specify the column of the ORDER clause in a select column.

  2. Correct the number in the ORDER clause accordingly.


-842: Parameter and indicator do not match - SAP Documentation

Background documentation -842: Parameter and indicator do not match

Explanation

Parameters and indicators are defined with different types (Record - Scalar). Valid combinations of SQL variables and indicator variables are Record - Record, Record - Integerarray and Scalar - Scalar.

User Response

Use indicator variables which have another type.


Defining Foreign Key Dependencies - SAP Documentation

Procedure documentation Defining Foreign Key Dependencies

You define or change a foreign key dependency between two tables. A foreign key dependency is a constraint that all the rows in both tables must fulfill.

A foreign key dependency is also called Foreign Key or referential CONSTRAINT definition.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the ALTER privilege for the table to which the column belongs.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • Columns have been created for the tables already.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the referencing table in the explorer tree.

  2. In the context menu of the referencing table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Open the Foreign Keys tab page.

  5. To define a new foreign key dependency, choose Add Foreign Key in the context menu of the editor window.

    To display the existing foreign key dependencies graphically, choose References in the context menu of the editor window.

    To change the definition of a foreign key dependency, overwrite the relevant property in the editor window.

    Foreign Keys

    Property

    Description (Link to SQL Reference Manual)

    Name

    Foreign key name

    Referencing Columns

    Referencing column

    Referential CONSTRAINT Definition (referential_constraint_definition)

    Reference Schema

    Schema to which the table with the column that is referenced belongs

    Reference Table

    Table to which the column that is referenced belongs

    Reference Column

    Column which is referenced

    Rule

    Rule for behavior of the table referenced if a data record is deleted in the referencing table

    DELETE Rule (delete_rule)

  6. In the context menu of the editor window, choose Create Table (if you are creating a new table) or Alter Table (if the table already exists).

More Information

SQL Reference Manual, Referential CONSTRAINT Definition (referential_constraint_definition)

SQL Tutorial, Foreign Key Dependencies Between Tables


SAP Library - SAP MaxDB Library

Start Level 1 Node: SAP MaxDB Library SAP MaxDB Library End Level 1 Node: SAP MaxDB Library
Start Level 2 Node: Installation Manual
Start Level 2 Node: Database Administration Database Administration End Level 2 Node: Database Administration
Start Level 2 Node: SAP MaxDB Security Guide SAP MaxDB Security Guide End Level 2 Node: SAP MaxDB Security Guide
Start Level 2 Node: Concepts of the Database System Concepts of the Database System End Level 2 Node: Concepts of the Database System
Start Level 2 Node: Tools Tools End Level 2 Node: Tools
Start Level 3 Node: Database Studio Database Studio End Level 3 Node: Database Studio
Start Level 3 Node: Database Administration in CCMS: SAP MaxDB Database Administration in CCMS: SAP MaxDB End Level 3 Node: Database Administration in CCMS: SAP MaxDB
Start Level 4 Node: Database Administration: Overview of Activities Database Administration: Overview of Activities End Level 4 Node: Database Administration: Overview of Activities
Start Level 5 Node: Integrating a Database System Integrating a Database System End Level 5 Node: Integrating a Database System
Start Level 5 Node: Automating Database Administration Activities Automating Database Administration Activities End Level 5 Node: Automating Database Administration Activities
Start Level 5 Node: Executing Performance Analysis in CCMS Executing Performance Analysis in CCMS End Level 5 Node: Executing Performance Analysis in CCMS
Start Level 6 Node: Database Monitoring Database Monitoring End Level 6 Node: Database Monitoring
Start Level 6 Node: Monitoring the Log Area Monitoring the Log Area End Level 6 Node: Monitoring the Log Area
Start Level 6 Node: Monitoring the Data Area Monitoring the Data Area End Level 6 Node: Monitoring the Data Area
Start Level 6 Node: Index Analysis Index Analysis End Level 6 Node: Index Analysis
Start Level 6 Node: SQL Optimizer in CCMS SQL Optimizer in CCMS End Level 6 Node: SQL Optimizer in CCMS
Start Level 5 Node: Troubleshooting Troubleshooting End Level 5 Node: Troubleshooting
Start Level 4 Node: Prerequisites Prerequisites End Level 4 Node: Prerequisites
Start Level 4 Node: DBA Cockpit: SAP MaxDB DBA Cockpit: SAP MaxDB End Level 4 Node: DBA Cockpit: SAP MaxDB
Start Level 5 Node: The DBA Cockpit The DBA Cockpit End Level 5 Node: The DBA Cockpit
Start Level 6 Node: Central System Data Central System Data End Level 6 Node: Central System Data
Start Level 6 Node: Maintenance Actions in the DBA Cockpit Maintenance Actions in the DBA Cockpit End Level 6 Node: Maintenance Actions in the DBA Cockpit
Start Level 6 Node: Configuration of Systems for Remote Monitoring Configuration of Systems for Remote Monitoring End Level 6 Node: Configuration of Systems for Remote Monitoring
Start Level 7 Node: Configuring Systems for Remote Monitoring Using Remote Database Configuring Systems for Remote Monitoring Using Remote Database End Level 7 Node: Configuring Systems for Remote Monitoring Using Remote Database
Start Level 7 Node: Configuring Systems for Remote Monitoring Using the System Lands Configuring Systems for Remote Monitoring Using the System Lands End Level 7 Node: Configuring Systems for Remote Monitoring Using the System Lands
Start Level 5 Node: Properties Properties End Level 5 Node: Properties
Start Level 6 Node: Name of the Database Connection Name of the Database Connection End Level 6 Node: Name of the Database Connection
Start Level 6 Node: Operational State Operational State End Level 6 Node: Operational State
Start Level 6 Node: Standard Database User Standard Database User End Level 6 Node: Standard Database User
Start Level 6 Node: Database Server and Versions Database Server and Versions End Level 6 Node: Database Server and Versions
Start Level 6 Node: Database Name Database Name End Level 6 Node: Database Name
Start Level 6 Node: Bridge System (Teradata/Neoview) Bridge System (Teradata/Neoview) End Level 6 Node: Bridge System (Teradata/Neoview)
Start Level 6 Node: Operating (liveCache) Operating (liveCache) End Level 6 Node: Operating (liveCache)
Start Level 5 Node: Performance Performance End Level 5 Node: Performance
Start Level 6 Node: Activities Overview Activities Overview End Level 6 Node: Activities Overview
Start Level 6 Node: OMS Monitor OMS Monitor End Level 6 Node: OMS Monitor
Start Level 6 Node: Class Containers Class Containers End Level 6 Node: Class Containers
Start Level 6 Node: Schemas Schemas End Level 6 Node: Schemas
Start Level 6 Node: Monitoring Statistics Monitoring Statistics End Level 6 Node: Monitoring Statistics
Start Level 6 Node: Transactions Transactions End Level 6 Node: Transactions
Start Level 6 Node: OMS Versions OMS Versions End Level 6 Node: OMS Versions
Start Level 6 Node: OMS Locks OMS Locks End Level 6 Node: OMS Locks
Start Level 6 Node: Performance: Performance Warehouse Performance: Performance Warehouse End Level 6 Node: Performance: Performance Warehouse
Start Level 7 Node: Performance Warehouse: Reporting Performance Warehouse: Reporting End Level 7 Node: Performance Warehouse: Reporting
Start Level 7 Node: Performance Warehouse: Configuration Performance Warehouse: Configuration End Level 7 Node: Performance Warehouse: Configuration
Start Level 6 Node: Database Analyzer Database Analyzer End Level 6 Node: Database Analyzer
Start Level 7 Node: Bottlenecks Bottlenecks End Level 7 Node: Bottlenecks
Start Level 7 Node: Expert Analysis Expert Analysis End Level 7 Node: Expert Analysis
Start Level 7 Node: Managing Performance Data Managing Performance Data End Level 7 Node: Managing Performance Data
Start Level 6 Node: SQL Locks SQL Locks End Level 6 Node: SQL Locks
Start Level 7 Node: Wait Situations Wait Situations End Level 7 Node: Wait Situations
Start Level 7 Node: Overview of SQL Locks Overview of SQL Locks End Level 7 Node: Overview of SQL Locks
Start Level 6 Node: Kernel Threads Kernel Threads End Level 6 Node: Kernel Threads
Start Level 7 Node: Task Manager Task Manager End Level 7 Node: Task Manager
Start Level 7 Node: Thread Overview Thread Overview End Level 7 Node: Thread Overview
Start Level 7 Node: Thread Statistics Thread Statistics End Level 7 Node: Thread Statistics
Start Level 6 Node: I/O Operations I/O Operations End Level 6 Node: I/O Operations
Start Level 7 Node: I/O Operations Overview I/O Operations Overview End Level 7 Node: I/O Operations Overview
Start Level 7 Node: Backup I/O Backup I/O End Level 7 Node: Backup I/O
Start Level 6 Node: SQL Performance SQL Performance End Level 6 Node: SQL Performance
Start Level 7 Node: Command Monitor Command Monitor End Level 7 Node: Command Monitor
Start Level 7 Node: Resource Monitor Resource Monitor End Level 7 Node: Resource Monitor
Start Level 5 Node: Space Space End Level 5 Node: Space
Start Level 6 Node: Caches Caches End Level 6 Node: Caches
Start Level 6 Node: Heap Usage Heap Usage End Level 6 Node: Heap Usage
Start Level 6 Node: Data Area Data Area End Level 6 Node: Data Area
Start Level 6 Node: Log Area Log Area End Level 6 Node: Log Area
Start Level 6 Node: Snapshots Snapshots End Level 6 Node: Snapshots
Start Level 6 Node: Tables/Views/Synonyms Tables/Views/Synonyms End Level 6 Node: Tables/Views/Synonyms
Start Level 6 Node: Indexes Indexes End Level 6 Node: Indexes
Start Level 6 Node: Table Sizes Table Sizes End Level 6 Node: Table Sizes
Start Level 6 Node: Class Container Sizes Class Container Sizes End Level 6 Node: Class Container Sizes
Start Level 6 Node: Database Fill Level Database Fill Level End Level 6 Node: Database Fill Level
Start Level 6 Node: Database Activities Database Activities End Level 6 Node: Database Activities
Start Level 6 Node: DB Procedures DB Procedures End Level 6 Node: DB Procedures
Start Level 5 Node: Backup and Recovery Backup and Recovery End Level 5 Node: Backup and Recovery
Start Level 6 Node: Backup Templates Backup Templates End Level 6 Node: Backup Templates
Start Level 5 Node: Configuration Configuration End Level 5 Node: Configuration
Start Level 6 Node: System Settings System Settings End Level 6 Node: System Settings
Start Level 6 Node: SYSINFO Views SYSINFO Views End Level 6 Node: SYSINFO Views
Start Level 6 Node: Error Codes Error Codes End Level 6 Node: Error Codes
Start Level 6 Node: Critical Sections Critical Sections End Level 6 Node: Critical Sections
Start Level 6 Node: Logs Logs End Level 6 Node: Logs
Start Level 7 Node: DBA History DBA History End Level 7 Node: DBA History
Start Level 7 Node: System Tables Upgrade System Tables Upgrade End Level 7 Node: System Tables Upgrade
Start Level 7 Node: Kernel Administration Kernel Administration End Level 7 Node: Kernel Administration
Start Level 7 Node: Operating Logs Operating Logs End Level 7 Node: Operating Logs
Start Level 8 Node: Current Log Current Log End Level 8 Node: Current Log
Start Level 8 Node: History History End Level 8 Node: History
Start Level 5 Node: Jobs Jobs End Level 5 Node: Jobs
Start Level 6 Node: Central Calendar Central Calendar End Level 6 Node: Central Calendar
Start Level 6 Node: DBA Planning Calendar DBA Planning Calendar End Level 6 Node: DBA Planning Calendar
Start Level 6 Node: The DBA Log The DBA Log End Level 6 Node: The DBA Log
Start Level 6 Node: Setting Up the DBA Planning Calendar Setting Up the DBA Planning Calendar End Level 6 Node: Setting Up the DBA Planning Calendar
Start Level 5 Node: Alerts Alerts End Level 5 Node: Alerts
Start Level 5 Node: Diagnosis Diagnosis End Level 5 Node: Diagnosis
Start Level 6 Node: Missing Tables and Indexes Missing Tables and Indexes End Level 6 Node: Missing Tables and Indexes
Start Level 6 Node: SELECT Editor SELECT Editor End Level 6 Node: SELECT Editor
Start Level 6 Node: Database Files Database Files End Level 6 Node: Database Files
Start Level 6 Node: OMS Object Browser OMS Object Browser End Level 6 Node: OMS Object Browser
Start Level 6 Node: Messages Messages End Level 6 Node: Messages
Start Level 7 Node: Database Manager Database Manager End Level 7 Node: Database Manager
Start Level 7 Node: Remote SQL Server Remote SQL Server End Level 7 Node: Remote SQL Server
Start Level 6 Node: Kernel Messages Kernel Messages End Level 6 Node: Kernel Messages
Start Level 7 Node: Current Messages Current Messages End Level 7 Node: Current Messages
Start Level 7 Node: Old Messages Old Messages End Level 7 Node: Old Messages
Start Level 7 Node: Error Messages Error Messages End Level 7 Node: Error Messages
Start Level 7 Node: Message History Message History End Level 7 Node: Message History
Start Level 5 Node: Administration Administration End Level 5 Node: Administration
Start Level 6 Node: Parameters Parameters End Level 6 Node: Parameters
Start Level 6 Node: Parameter History Parameter History End Level 6 Node: Parameter History
Start Level 5 Node: Tools Tools End Level 5 Node: Tools
Start Level 6 Node: Database Manager (CLI) Database Manager (CLI) End Level 6 Node: Database Manager (CLI)
Start Level 6 Node: Database Console Database Console End Level 6 Node: Database Console
Start Level 6 Node: Database Trace Database Trace End Level 6 Node: Database Trace
Start Level 6 Node: SQLDBC Trace SQLDBC Trace End Level 6 Node: SQLDBC Trace
Start Level 4 Node: User Menu User Menu End Level 4 Node: User Menu
Start Level 4 Node: DBA Planning Calendar DBA Planning Calendar End Level 4 Node: DBA Planning Calendar
Start Level 5 Node: Setting Up and Using the DBA Planning Calendar Setting Up and Using the DBA Planning Calendar End Level 5 Node: Setting Up and Using the DBA Planning Calendar
Start Level 5 Node: Setting Up the DBA Planning Calendar Setting Up the DBA Planning Calendar End Level 5 Node: Setting Up the DBA Planning Calendar
Start Level 5 Node: Planning Concept Planning Concept End Level 5 Node: Planning Concept
Start Level 5 Node: Scheduling an Action Scheduling an Action End Level 5 Node: Scheduling an Action
Start Level 6 Node: Action Patterns Action Patterns End Level 6 Node: Action Patterns
Start Level 6 Node: Scheduling a Data Backup Scheduling a Data Backup End Level 6 Node: Scheduling a Data Backup
Start Level 6 Node: Scheduling Log Backups Scheduling Log Backups End Level 6 Node: Scheduling Log Backups
Start Level 7 Node: Activating Automatic Log Backup Activating Automatic Log Backup End Level 7 Node: Activating Automatic Log Backup
Start Level 7 Node: Scheduling an Interactive Log Backup Scheduling an Interactive Log Backup End Level 7 Node: Scheduling an Interactive Log Backup
Start Level 6 Node: Archiving Backup Files Archiving Backup Files End Level 6 Node: Archiving Backup Files
Start Level 6 Node: Scheduling Updates of the SQL Optimizer Statistics Scheduling Updates of the SQL Optimizer Statistics End Level 6 Node: Scheduling Updates of the SQL Optimizer Statistics
Start Level 6 Node: Scheduling a Database Structure Check Scheduling a Database Structure Check End Level 6 Node: Scheduling a Database Structure Check
Start Level 5 Node: Changing or Deleting an Action Changing or Deleting an Action End Level 5 Node: Changing or Deleting an Action
Start Level 5 Node: Starting an Action Immediately Starting an Action Immediately End Level 5 Node: Starting an Action Immediately
Start Level 5 Node: Displaying Actions Displaying Actions End Level 5 Node: Displaying Actions
Start Level 4 Node: DBA Action Logs DBA Action Logs End Level 4 Node: DBA Action Logs
Start Level 4 Node: MaxDB/liveCache System Overview MaxDB/liveCache System Overview End Level 4 Node: MaxDB/liveCache System Overview
Start Level 4 Node: Database Assistant Database Assistant End Level 4 Node: Database Assistant
Start Level 5 Node: Properties Properties End Level 5 Node: Properties
Start Level 6 Node: Name of the Database Connection Name of the Database Connection End Level 6 Node: Name of the Database Connection
Start Level 6 Node: Database Name Database Name End Level 6 Node: Database Name
Start Level 6 Node: Database Server and Versions Database Server and Versions End Level 6 Node: Database Server and Versions
Start Level 6 Node: Operational State Operational State End Level 6 Node: Operational State
Start Level 6 Node: Directories Directories End Level 6 Node: Directories
Start Level 6 Node: Files Files End Level 6 Node: Files
Start Level 5 Node: Alert Monitor Alert Monitor End Level 5 Node: Alert Monitor
Start Level 5 Node: Current Status Current Status End Level 5 Node: Current Status
Start Level 6 Node: Activities Overview Activities Overview End Level 6 Node: Activities Overview
Start Level 6 Node: Configuration (Volumes) Configuration (Volumes) End Level 6 Node: Configuration (Volumes)
Start Level 7 Node: Volumes Volumes End Level 7 Node: Volumes
Start Level 6 Node: Kernel Threads Kernel Threads End Level 6 Node: Kernel Threads
Start Level 7 Node: Task Manager Task Manager End Level 7 Node: Task Manager
Start Level 7 Node: Thread Overview Thread Overview End Level 7 Node: Thread Overview
Start Level 7 Node: Thread Statistics Thread Statistics End Level 7 Node: Thread Statistics
Start Level 6 Node: I/O Operations I/O Operations End Level 6 Node: I/O Operations
Start Level 7 Node: I/O Operations Overview I/O Operations Overview End Level 7 Node: I/O Operations Overview
Start Level 7 Node: Backup I/O Backup I/O End Level 7 Node: Backup I/O
Start Level 6 Node: Critical Sections Critical Sections End Level 6 Node: Critical Sections
Start Level 6 Node: Memory Areas Memory Areas End Level 6 Node: Memory Areas
Start Level 7 Node: Caches Caches End Level 7 Node: Caches
Start Level 7 Node: Data Area Data Area End Level 7 Node: Data Area
Start Level 7 Node: Log Area Log Area End Level 7 Node: Log Area
Start Level 6 Node: System Settings System Settings End Level 6 Node: System Settings
Start Level 5 Node: Problem Analysis Problem Analysis End Level 5 Node: Problem Analysis
Start Level 6 Node: Performance Performance End Level 6 Node: Performance
Start Level 7 Node: Database Analyzer Database Analyzer End Level 7 Node: Database Analyzer
Start Level 8 Node: Bottlenecks Bottlenecks End Level 8 Node: Bottlenecks
Start Level 8 Node: Expert Analysis Expert Analysis End Level 8 Node: Expert Analysis
Start Level 8 Node: Managing Performance Data Managing Performance Data End Level 8 Node: Managing Performance Data
Start Level 7 Node: Transactions Transactions End Level 7 Node: Transactions
Start Level 6 Node: SQL Locks SQL Locks End Level 6 Node: SQL Locks
Start Level 7 Node: Wait Situations (Exclusive) Wait Situations (Exclusive) End Level 7 Node: Wait Situations (Exclusive)
Start Level 7 Node: Overview of SQL Locks Overview of SQL Locks End Level 7 Node: Overview of SQL Locks
Start Level 6 Node: SQL Performance SQL Performance End Level 6 Node: SQL Performance
Start Level 7 Node: Command Monitor Command Monitor End Level 7 Node: Command Monitor
Start Level 7 Node: Resource Monitor Resource Monitor End Level 7 Node: Resource Monitor
Start Level 6 Node: Messages Messages End Level 6 Node: Messages
Start Level 7 Node: Kernel Kernel End Level 7 Node: Kernel
Start Level 8 Node: Current Messages Current Messages End Level 8 Node: Current Messages
Start Level 8 Node: Old Messages Old Messages End Level 8 Node: Old Messages
Start Level 8 Node: Error Messages Error Messages End Level 8 Node: Error Messages
Start Level 8 Node: Message History Message History End Level 8 Node: Message History
Start Level 7 Node: Database Manager Database Manager End Level 7 Node: Database Manager
Start Level 7 Node: Remote SQL Server Remote SQL Server End Level 7 Node: Remote SQL Server
Start Level 6 Node: Logs Logs End Level 6 Node: Logs
Start Level 7 Node: DBA History DBA History End Level 7 Node: DBA History
Start Level 7 Node: System Tables Upgrade System Tables Upgrade End Level 7 Node: System Tables Upgrade
Start Level 6 Node: Tables/Views/Synonyms Tables/Views/Synonyms End Level 6 Node: Tables/Views/Synonyms
Start Level 6 Node: Indexes Indexes End Level 6 Node: Indexes
Start Level 6 Node: DB Procedures DB Procedures End Level 6 Node: DB Procedures
Start Level 5 Node: Statistics Statistics End Level 5 Node: Statistics
Start Level 6 Node: Database Fill Level Database Fill Level End Level 6 Node: Database Fill Level
Start Level 6 Node: Database Activities Database Activities End Level 6 Node: Database Activities
Start Level 6 Node: Table Sizes Table Sizes End Level 6 Node: Table Sizes
Start Level 5 Node: Administration Administration End Level 5 Node: Administration
Start Level 6 Node: Configuration Configuration End Level 6 Node: Configuration
Start Level 7 Node: Parameters Parameters End Level 7 Node: Parameters
Start Level 7 Node: Parameter History Parameter History End Level 7 Node: Parameter History
Start Level 7 Node: Backup Templates Backup Templates End Level 7 Node: Backup Templates
Start Level 5 Node: Tools Tools End Level 5 Node: Tools
Start Level 6 Node: Database Manager (CLI) Database Manager (CLI) End Level 6 Node: Database Manager (CLI)
Start Level 6 Node: Database Console Database Console End Level 6 Node: Database Console
Start Level 6 Node: Database Trace Database Trace End Level 6 Node: Database Trace
Start Level 6 Node: SQLDBC Trace SQLDBC Trace End Level 6 Node: SQLDBC Trace
Start Level 6 Node: DBA Planning Calendar DBA Planning Calendar End Level 6 Node: DBA Planning Calendar
Start Level 5 Node: Displaying/Changing Integration Data Displaying/Changing Integration Data End Level 5 Node: Displaying/Changing Integration Data
Start Level 6 Node: Creating a Connection Creating a Connection End Level 6 Node: Creating a Connection
Start Level 6 Node: Changing a Connection Changing a Connection End Level 6 Node: Changing a Connection
Start Level 6 Node: Deleting a Connection Deleting a Connection End Level 6 Node: Deleting a Connection
Start Level 6 Node: User Data User Data End Level 6 Node: User Data
Start Level 7 Node: DBM Operator DBM Operator End Level 7 Node: DBM Operator
Start Level 7 Node: Standard Database User Standard Database User End Level 7 Node: Standard Database User
Start Level 7 Node: Centralized/Decentralized Authorization Centralized/Decentralized Authorization End Level 7 Node: Centralized/Decentralized Authorization
Start Level 6 Node: Automatic Monitoring Automatic Monitoring End Level 6 Node: Automatic Monitoring
Start Level 5 Node: Error Codes Error Codes End Level 5 Node: Error Codes
Start Level 5 Node: System Tables of the SYSINFO Schema System Tables of the SYSINFO Schema End Level 5 Node: System Tables of the SYSINFO Schema
Start Level 4 Node: CCMS Monitoring CCMS Monitoring End Level 4 Node: CCMS Monitoring
Start Level 5 Node: Database Alert Monitor Database Alert Monitor End Level 5 Node: Database Alert Monitor
Start Level 6 Node: Internal Subtree Internal Subtree End Level 6 Node: Internal Subtree
Start Level 5 Node: Properties Properties End Level 5 Node: Properties
Start Level 6 Node: State State End Level 6 Node: State
Start Level 6 Node: Installation Installation End Level 6 Node: Installation
Start Level 5 Node: Space Management Space Management End Level 5 Node: Space Management
Start Level 6 Node: Data Area Data Area End Level 6 Node: Data Area
Start Level 6 Node: Log Area Log Area End Level 6 Node: Log Area
Start Level 5 Node: Performance Performance End Level 5 Node: Performance
Start Level 6 Node: Caches Caches End Level 6 Node: Caches
Start Level 6 Node: User Tasks User Tasks End Level 6 Node: User Tasks
Start Level 6 Node: Monitor Monitor End Level 6 Node: Monitor
Start Level 6 Node: Optimizer Statistics Optimizer Statistics End Level 6 Node: Optimizer Statistics
Start Level 5 Node: Backup/Recovery Backup/Recovery End Level 5 Node: Backup/Recovery
Start Level 6 Node: Last Backup Last Backup End Level 6 Node: Last Backup
Start Level 6 Node: Last Recovery Last Recovery End Level 6 Node: Last Recovery
Start Level 5 Node: SAP Consistency SAP Consistency End Level 5 Node: SAP Consistency
Start Level 5 Node: Health Health End Level 5 Node: Health
Start Level 6 Node: Bad Indexes Bad Indexes End Level 6 Node: Bad Indexes
Start Level 6 Node: Database Structure Check Database Structure Check End Level 6 Node: Database Structure Check
Start Level 5 Node: External Analysis Tools External Analysis Tools End Level 5 Node: External Analysis Tools
Start Level 6 Node: Database Analyzer Database Analyzer End Level 6 Node: Database Analyzer
Start Level 5 Node: Connectivity Connectivity End Level 5 Node: Connectivity
Start Level 4 Node: DB Filling/Tables and Indexes DB Filling/Tables and Indexes End Level 4 Node: DB Filling/Tables and Indexes
Start Level 4 Node: Terms and Procedures Terms and Procedures End Level 4 Node: Terms and Procedures
Start Level 5 Node: SAP Notes SAP Notes End Level 5 Node: SAP Notes
Start Level 5 Node: Using the Central Calendar Using the Central Calendar End Level 5 Node: Using the Central Calendar
Start Level 5 Node: Database Monitor Database Monitor End Level 5 Node: Database Monitor
Start Level 4 Node: Database Administration in CCMS: SAP liveCache Technology Database Administration in CCMS: SAP liveCache Technology End Level 4 Node: Database Administration in CCMS: SAP liveCache Technology
Start Level 5 Node: Authorization Concept Authorization Concept End Level 5 Node: Authorization Concept
Start Level 6 Node: SAP_BC_LVC_USER SAP_BC_LVC_USER End Level 6 Node: SAP_BC_LVC_USER
Start Level 6 Node: SAP_BC_LVC_OPERATOR SAP_BC_LVC_OPERATOR End Level 6 Node: SAP_BC_LVC_OPERATOR
Start Level 6 Node: SAP_BC_LVC_ADMINISTRATOR SAP_BC_LVC_ADMINISTRATOR End Level 6 Node: SAP_BC_LVC_ADMINISTRATOR
Start Level 6 Node: SAP_BC_LVC_SUPERUSER SAP_BC_LVC_SUPERUSER End Level 6 Node: SAP_BC_LVC_SUPERUSER
Start Level 5 Node: liveCache Assistant liveCache Assistant End Level 5 Node: liveCache Assistant
Start Level 6 Node: Integration Integration End Level 6 Node: Integration
Start Level 7 Node: Creating a Connection Creating a Connection End Level 7 Node: Creating a Connection
Start Level 7 Node: Changing a Connection Changing a Connection End Level 7 Node: Changing a Connection
Start Level 7 Node: Deleting a Connection Deleting a Connection End Level 7 Node: Deleting a Connection
Start Level 7 Node: User Data User Data End Level 7 Node: User Data
Start Level 8 Node: DBM Operator DBM Operator End Level 8 Node: DBM Operator
Start Level 8 Node: Standard liveCache User Standard liveCache User End Level 8 Node: Standard liveCache User
Start Level 8 Node: Centralized/Decentralized Authorization Centralized/Decentralized Authorization End Level 8 Node: Centralized/Decentralized Authorization
Start Level 7 Node: Administration Reports Administration Reports End Level 7 Node: Administration Reports
Start Level 7 Node: Automatic Monitoring Automatic Monitoring End Level 7 Node: Automatic Monitoring
Start Level 6 Node: liveCache: Monitoring liveCache: Monitoring End Level 6 Node: liveCache: Monitoring
Start Level 7 Node: Properties Properties End Level 7 Node: Properties
Start Level 8 Node: Name of the Database Connection Name of the Database Connection End Level 8 Node: Name of the Database Connection
Start Level 8 Node: Database Name Database Name End Level 8 Node: Database Name
Start Level 8 Node: Database Server and Versions Database Server and Versions End Level 8 Node: Database Server and Versions
Start Level 8 Node: Operational State Operational State End Level 8 Node: Operational State
Start Level 8 Node: Directories Directories End Level 8 Node: Directories
Start Level 8 Node: Files Files End Level 8 Node: Files
Start Level 7 Node: Alert Monitor Alert Monitor End Level 7 Node: Alert Monitor
Start Level 7 Node: Current Status Current Status End Level 7 Node: Current Status
Start Level 8 Node: Activities Overview Activities Overview End Level 8 Node: Activities Overview
Start Level 8 Node: Configuration (Volumes) Configuration (Volumes) End Level 8 Node: Configuration (Volumes)
Start Level 9 Node: Volumes Volumes End Level 9 Node: Volumes
Start Level 8 Node: Kernel Threads Kernel Threads End Level 8 Node: Kernel Threads
Start Level 9 Node: Task Manager Task Manager End Level 9 Node: Task Manager
Start Level 9 Node: Thread Overview Thread Overview End Level 9 Node: Thread Overview
Start Level 9 Node: Thread Statistics Thread Statistics End Level 9 Node: Thread Statistics
Start Level 8 Node: I/O Operations I/O Operations End Level 8 Node: I/O Operations
Start Level 9 Node: I/O Operations Overview I/O Operations Overview End Level 9 Node: I/O Operations Overview
Start Level 9 Node: Backup I/O Backup I/O End Level 9 Node: Backup I/O
Start Level 8 Node: Critical Sections Critical Sections End Level 8 Node: Critical Sections
Start Level 8 Node: Memory Areas Memory Areas End Level 8 Node: Memory Areas
Start Level 9 Node: Caches Caches End Level 9 Node: Caches
Start Level 9 Node: Heap Usage Heap Usage End Level 9 Node: Heap Usage
Start Level 9 Node: Data Area Data Area End Level 9 Node: Data Area
Start Level 9 Node: Log Area Log Area End Level 9 Node: Log Area
Start Level 8 Node: System Settings System Settings End Level 8 Node: System Settings
Start Level 7 Node: Problem Analysis Problem Analysis End Level 7 Node: Problem Analysis
Start Level 8 Node: Performance Performance End Level 8 Node: Performance
Start Level 9 Node: Database Analyzer Database Analyzer End Level 9 Node: Database Analyzer
Start Level 10 Node: Bottlenecks Bottlenecks End Level 10 Node: Bottlenecks
Start Level 10 Node: Expert Analysis Expert Analysis End Level 10 Node: Expert Analysis
Start Level 10 Node: Managing Performance Data Managing Performance Data End Level 10 Node: Managing Performance Data
Start Level 9 Node: OMS Monitor OMS Monitor End Level 9 Node: OMS Monitor
Start Level 9 Node: Class Containers Class Containers End Level 9 Node: Class Containers
Start Level 10 Node: Class Name Class Name End Level 10 Node: Class Name
Start Level 10 Node: Class ID Class ID End Level 10 Node: Class ID
Start Level 10 Node: Container Number Container Number End Level 10 Node: Container Number
Start Level 10 Node: File ID File ID End Level 10 Node: File ID
Start Level 10 Node: Object Size Object Size End Level 10 Node: Object Size
Start Level 10 Node: Container Size Container Size End Level 10 Node: Container Size
Start Level 10 Node: Free Container Pages Free Container Pages End Level 10 Node: Free Container Pages
Start Level 10 Node: Key Pages Key Pages End Level 10 Node: Key Pages
Start Level 10 Node: Container Usage Container Usage End Level 10 Node: Container Usage
Start Level 9 Node: Schema Schema End Level 9 Node: Schema
Start Level 9 Node: Monitor Monitor End Level 9 Node: Monitor
Start Level 9 Node: Transactions Transactions End Level 9 Node: Transactions
Start Level 9 Node: OMS Versions OMS Versions End Level 9 Node: OMS Versions
Start Level 8 Node: OMS Locks OMS Locks End Level 8 Node: OMS Locks
Start Level 8 Node: SQL Locks SQL Locks End Level 8 Node: SQL Locks
Start Level 9 Node: Wait Situations (Exclusive) Wait Situations (Exclusive) End Level 9 Node: Wait Situations (Exclusive)
Start Level 9 Node: Overview of SQL Locks Overview of SQL Locks End Level 9 Node: Overview of SQL Locks
Start Level 8 Node: SQL Performance SQL Performance End Level 8 Node: SQL Performance
Start Level 9 Node: Command Monitor Command Monitor End Level 9 Node: Command Monitor
Start Level 9 Node: Resource Monitor Resource Monitor End Level 9 Node: Resource Monitor
Start Level 8 Node: Messages Messages End Level 8 Node: Messages
Start Level 9 Node: Kernel Kernel End Level 9 Node: Kernel
Start Level 10 Node: Current Messages Current Messages End Level 10 Node: Current Messages
Start Level 10 Node: Old Messages Old Messages End Level 10 Node: Old Messages
Start Level 10 Node: Error Messages Error Messages End Level 10 Node: Error Messages
Start Level 10 Node: Message History Message History End Level 10 Node: Message History
Start Level 9 Node: Database Manager Database Manager End Level 9 Node: Database Manager
Start Level 9 Node: Remote SQL Server Remote SQL Server End Level 9 Node: Remote SQL Server
Start Level 8 Node: Logs Logs End Level 8 Node: Logs
Start Level 9 Node: Operating Logs Operating Logs End Level 9 Node: Operating Logs
Start Level 10 Node: Current Log Current Log End Level 10 Node: Current Log
Start Level 10 Node: History History End Level 10 Node: History
Start Level 9 Node: DBA History DBA History End Level 9 Node: DBA History
Start Level 9 Node: System Tables Upgrade System Tables Upgrade End Level 9 Node: System Tables Upgrade
Start Level 9 Node: Kernel Administration Kernel Administration End Level 9 Node: Kernel Administration
Start Level 8 Node: Tables/Views/Synonyms Tables/Views/Synonyms End Level 8 Node: Tables/Views/Synonyms
Start Level 8 Node: Indexes Indexes End Level 8 Node: Indexes
Start Level 8 Node: DB Procedures DB Procedures End Level 8 Node: DB Procedures
Start Level 7 Node: Statistics Statistics End Level 7 Node: Statistics
Start Level 8 Node: Table Sizes Table Sizes End Level 8 Node: Table Sizes
Start Level 8 Node: Class Container Sizes Class Container Sizes End Level 8 Node: Class Container Sizes
Start Level 7 Node: Administration Administration End Level 7 Node: Administration
Start Level 8 Node: Configuration Configuration End Level 8 Node: Configuration
Start Level 9 Node: Parameters Parameters End Level 9 Node: Parameters
Start Level 9 Node: Parameter History Parameter History End Level 9 Node: Parameter History
Start Level 9 Node: Configuring Volumes Configuring Volumes End Level 9 Node: Configuring Volumes
Start Level 10 Node: Configuring the Data Area Configuring the Data Area End Level 10 Node: Configuring the Data Area
Start Level 10 Node: Configuring the Log Area Configuring the Log Area End Level 10 Node: Configuring the Log Area
Start Level 9 Node: Backup Templates Backup Templates End Level 9 Node: Backup Templates
Start Level 8 Node: Operating Operating End Level 8 Node: Operating
Start Level 9 Node: Starting liveCache Starting liveCache End Level 9 Node: Starting liveCache
Start Level 9 Node: Stopping liveCache Stopping liveCache End Level 9 Node: Stopping liveCache
Start Level 9 Node: Initializing liveCache Initializing liveCache End Level 9 Node: Initializing liveCache
Start Level 9 Node: Registering LCApps Registering LCApps End Level 9 Node: Registering LCApps
Start Level 7 Node: Tools Tools End Level 7 Node: Tools
Start Level 8 Node: Database Manager (CLI) Database Manager (CLI) End Level 8 Node: Database Manager (CLI)
Start Level 8 Node: Database Console Database Console End Level 8 Node: Database Console
Start Level 8 Node: Database Trace Database Trace End Level 8 Node: Database Trace
Start Level 8 Node: SQLDBC Trace SQLDBC Trace End Level 8 Node: SQLDBC Trace
Start Level 8 Node: DBA Planning Calendar DBA Planning Calendar End Level 8 Node: DBA Planning Calendar
Start Level 7 Node: Users Users End Level 7 Node: Users
Start Level 7 Node: Error Codes Error Codes End Level 7 Node: Error Codes
Start Level 7 Node: System Tables of the SYSINFO Schema System Tables of the SYSINFO Schema End Level 7 Node: System Tables of the SYSINFO Schema
Start Level 6 Node: Console Console End Level 6 Node: Console
Start Level 6 Node: liveCache: Alert Monitor liveCache: Alert Monitor End Level 6 Node: liveCache: Alert Monitor
Start Level 6 Node: Start Application for liveCache: Monitoring Start Application for liveCache: Monitoring End Level 6 Node: Start Application for liveCache: Monitoring
Start Level 5 Node: CCMS Monitoring CCMS Monitoring End Level 5 Node: CCMS Monitoring
Start Level 6 Node: liveCache Alert Monitor liveCache Alert Monitor End Level 6 Node: liveCache Alert Monitor
Start Level 7 Node: Internal Subtree Internal Subtree End Level 7 Node: Internal Subtree
Start Level 6 Node: Properties Properties End Level 6 Node: Properties
Start Level 7 Node: State State End Level 7 Node: State
Start Level 7 Node: Installation Installation End Level 7 Node: Installation
Start Level 6 Node: Space Management Space Management End Level 6 Node: Space Management
Start Level 7 Node: Data Area Data Area End Level 7 Node: Data Area
Start Level 7 Node: Log Area Log Area End Level 7 Node: Log Area
Start Level 7 Node: Memory Memory End Level 7 Node: Memory
Start Level 6 Node: Performance Performance End Level 6 Node: Performance
Start Level 7 Node: Caches Caches End Level 7 Node: Caches
Start Level 7 Node: User Tasks User Tasks End Level 7 Node: User Tasks
Start Level 7 Node: Monitor Monitor End Level 7 Node: Monitor
Start Level 7 Node: Optimizer Statistics Optimizer Statistics End Level 7 Node: Optimizer Statistics
Start Level 6 Node: Backup/Recovery Backup/Recovery End Level 6 Node: Backup/Recovery
Start Level 7 Node: Last Backup Last Backup End Level 7 Node: Last Backup
Start Level 7 Node: Last Recovery Last Recovery End Level 7 Node: Last Recovery
Start Level 6 Node: Health Health End Level 6 Node: Health
Start Level 7 Node: Bad Indexes Bad Indexes End Level 7 Node: Bad Indexes
Start Level 7 Node: Database Structure Check Database Structure Check End Level 7 Node: Database Structure Check
Start Level 6 Node: External Analysis Tools External Analysis Tools End Level 6 Node: External Analysis Tools
Start Level 7 Node: Database Analyzer Database Analyzer End Level 7 Node: Database Analyzer
Start Level 6 Node: Connectivity Connectivity End Level 6 Node: Connectivity
Start Level 6 Node: liveCache Applications liveCache Applications End Level 6 Node: liveCache Applications
Start Level 5 Node: Terms and Procedures Terms and Procedures End Level 5 Node: Terms and Procedures
Start Level 6 Node: Performance Analysis in CCMS: SAP liveCache Performance Analysis in CCMS: SAP liveCache End Level 6 Node: Performance Analysis in CCMS: SAP liveCache
Start Level 7 Node: Monitoring the Main Memory Areas Monitoring the Main Memory Areas End Level 7 Node: Monitoring the Main Memory Areas
Start Level 7 Node: Monitoring OMS Versions Monitoring OMS Versions End Level 7 Node: Monitoring OMS Versions
Start Level 6 Node: Backing Up liveCache: Background Processing Backing Up liveCache: Background Processing End Level 6 Node: Backing Up liveCache: Background Processing
Start Level 6 Node: Function Module for Starting/Stopping/Initializing Function Module for Starting/Stopping/Initializing End Level 6 Node: Function Module for Starting/Stopping/Initializing
Start Level 6 Node: OneDB OneDB End Level 6 Node: OneDB
Start Level 3 Node: Database Manager CLI Database Manager CLI End Level 3 Node: Database Manager CLI
Start Level 3 Node: Loader Loader End Level 3 Node: Loader
Start Level 3 Node: SQLCLI SQLCLI End Level 3 Node: SQLCLI
Start Level 3 Node: Database Analyzer Database Analyzer End Level 3 Node: Database Analyzer
Start Level 3 Node: Global Listener and X Servers Global Listener and X Servers End Level 3 Node: Global Listener and X Servers
Start Level 3 Node: XUSER XUSER End Level 3 Node: XUSER
Start Level 3 Node: XCONS XCONS End Level 3 Node: XCONS
Start Level 2 Node: Interfaces Interfaces End Level 2 Node: Interfaces
Start Level 3 Node: ADO.NET Interface ADO.NET Interface End Level 3 Node: ADO.NET Interface
Start Level 3 Node: Java Manual Java Manual End Level 3 Node: Java Manual
Start Level 3 Node: ODBC Manual ODBC Manual End Level 3 Node: ODBC Manual
Start Level 3 Node: Perl Manual Perl Manual End Level 3 Node: Perl Manual
Start Level 3 Node: PHP Manual PHP Manual End Level 3 Node: PHP Manual
Start Level 3 Node: Python Manual Python Manual End Level 3 Node: Python Manual
Start Level 3 Node: SQLDBC Manual SQLDBC Manual End Level 3 Node: SQLDBC Manual
Start Level 3 Node: WebDAV Servlet WebDAV Servlet End Level 3 Node: WebDAV Servlet
Start Level 2 Node: Tutorials Tutorials End Level 2 Node: Tutorials
Start Level 3 Node: SQL Tutorial SQL Tutorial End Level 3 Node: SQL Tutorial
Start Level 3 Node: Loader Tutorial Loader Tutorial End Level 3 Node: Loader Tutorial
Start Level 2 Node: Reference Reference End Level 2 Node: Reference
Start Level 3 Node: SQL Reference Manual SQL Reference Manual End Level 3 Node: SQL Reference Manual
Start Level 3 Node: Messages Messages End Level 3 Node: Messages
Start Level 2 Node: Glossary Glossary End Level 2 Node: Glossary


-853: Precompiler syntax check only - SAP Documentation

Background documentation -853: Precompiler syntax check only

Explanation

Although the precompiler option CHECK was specified, the syntax of this statement could only be checked for the precompiler run. No entries were made to the database catalog of the database instance.

User Response

To obtain information about possible errors, run the application with the TRACE option.


-25347: Encoding type of source and target database do not match: source = <type>, target = <type> - SAP Documentation

Background documentation -25347: Encoding type of source and target database do not match: source = <type>, target = <type>

Explanation

You executed a command to import data in the PAGES format. The command was terminated because the database from which the export data is taken had a different code type than the database that should be the target location of the import.This type of migration is not supported.

User Response

Make sure that the code type of the target database corresponds to the code type of the source database and re-execute the command.


-7022: Columns from more than one table not allowed - SAP Documentation

Background documentation -7022: Columns from more than one table not allowed

Explanation

In certain cases, columns from more than one table may not be addressed within an expression.

User Response

Consider whether issuing other SQL statements could produce the desired result.


-8004: Constant must be compatible with column type and length - SAP Documentation

Background documentation -8004: Constant must be compatible with column type and length

Explanation

The specified constant does not match the data type for this column.

User Response

Use a QUERY statement issued on the system table DOMAIN.COLUMNS to find out the definition of the affected column. Specify a constant with the correct data type.


Showing or Hiding Databases - SAP Documentation

Procedure documentation Showing or Hiding Databases

Databases are displayed in the Database Studio explorer tree. You can add databases to the explorer tree or remove databases from the explorer tree.

Procedure

Showing Additional Databases (Registering Databases)

  1. In the explorer tree, select Servers.

  2. In the context menu, choose [image] Add [image] Server/Database [image] .

  3. Enter the name or IP address of the database computer.

  4. Select the database.

Hiding Databases (Unregistering Databases)

  1. In the explorer tree, select the computer on which the database is installed.

  2. In the context menu, choose Properties.

  3. Choose Registration.

  4. Deselect the database that you want to hide.

More Information

Logging On to a Database

Database Studio Screen Areas


Displaying Information About Installed Software - SAP Documentation

Background documentation Displaying Information About Installed Software

Choose Start Menu -> SAP MaxDB -> Installation Manager -> Show SAP MaxDB Installations to display information about the installed software components, their versions, and their storage directories.

The installed software contains other tools, which you can use to display more information:

  • Database Studio

    In the Start Menu choose All Programs -> SAP MaxDB -> Database Studio to call the SAP MaxDB administration tool. For details on how to display information, see the Database Studio documentation.

  • Command Line Tools

    On Windows, use the Command Line Prompt shortcut of the relevant installation in the Start Menu under All Programs -> SAP MaxDB, which opens a command prompt for this software installation and therefore uses any program you call of exactly this version.

Note Note

If you request general information about all existing installations (for example using the inst_enum command), you can use the Command Line Prompt of any of your installations. However, we recommend that you use the Command Line Prompt of the highest software version available. This way you make sure that the most recent output scheme is used to display the requested information.

End of the note.

Example Example

If you call the DBMCLI tool in the Command Line Prompt of a version 7.8.00.01 instalation, you connect per default to the DBM server of that version. If you enter the db_create command in this command prompt to create a database, this database will be of software version 7.8.00.01 as well.

End of the example.

Using Database Manager CLI, you can execute the indicated commands to request information about installations and databases:

SDBREGVIEW is another command line tool for displaying information about the installed software.

Listing All Registered Server and Client Installations

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the installation of your highest SAP MaxDB version and enter the following:

>dbmcli inst_enum

Listing the Client Installations

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the installation of your highest SAP MaxDB version and enter the inst_enum command using the -s option:

>dbmcli -s inst_enum

Displaying the Parameters of an Installation

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the desired SAP MaxDB installation and enter the following:

>dbmcli inst_enum <installation_path>

Displaying the Installation Directories of an Installation

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the desired SAP MaxDB installation and enter the following:

>dbmcli -s dbm_getpath

Displaying Information About the Database Manager of an Installation

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the desired SAP MaxDB installation and enter the following:

>dbmcli -s dbm_version

Displaying the Software Components Installed on the Computer

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the installation of your highest SAP MaxDB version and enter the following:

>sdbregview -l

Displaying the Installed Global Software Components

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the installation of your highest SAP MaxDB version and enter the following:

>sdbregview -l -i GLOBAL

Displaying the Installed Version-Dependent Software Components of an Installation

In the Start Menu under All Programs -> SAP MaxDB, open the Command Line Prompt of the desired SAP MaxDB installation and enter the following:

>sdbregview -l -i <installation_name>

More Information

Database Manager CLI, inst_enum, dbm_getpath, dbm_version


SQLMODE() - SAP Documentation

Function documentation SQLMODE()

SQLMODE() is a string function that outputs the SQL mode that is currently being used. The SQL mode is output as a character string with the data format CHAR(8) ASCII. If unnecessary function arguments are specified, errors will be output when the function is called.

More Information

CONNECT Statement (connect_statement)

SQL Mode ORACLE

Glossary, SQL Mode


-28608: Invalid reply for stored procedure - SAP Documentation

Background documentation -28608: Invalid reply for stored procedure

Explanation

The reply packet is invalid for the query.

User Response

Contact your local support.


-4013: Unknown user group name - SAP Documentation

Background documentation -4013: Unknown user group name

Explanation

There is no user group of that specified name.

User Response

Use a QUERY statement issued on the system table DOMAIN.USERS to see a list of the existing user group names. Change the user group name in the SQL statement accordingly.


-11116: Wrong parameter type. Expected: <description> - SAP Documentation

Background documentation -11116: Wrong parameter type. Expected: <description>

Explanation

The type of PHP variables you have bound with the MaxDB PHP function maxdb_bind_param() or the function maxdb_stmt_bind_param() does not match the type identifier of maxdb_bind_param().

User Response

Change the type identifier of maxdb_bind_param() or maxdb_stmt_bind_param() so that it matches the type in the description <description>.


Activities Overview - SAP Documentation

Procedure documentation Activities Overview

The Current Status user menu contains, among other things, an overview of the database activities since the last start of database monitoring. You can reset the monitoring data.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Current Status [image] Activity Overview [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Activities Overview [image] .

Result

The system displays the following information in the overview:

SQL Statements

In the SQL Statements area, you can find information about the executed SQL statements:

SQL Statements | Number of SQL statements sent to the database system to be executed. A direct indication of database activity.
Prepares | Number of dynamic SQL statements.
Executes | Number of executed dynamic SQL statements.
Rollbacks | Unsuccessful database operations, usually caused by crashed applications
Commits | Successful database operations.
Updates, Selects and Fetches, Creates, Alters, Drops, Deletes, Inserts | Number of individual SQL statements, possibly with row information

The number of SQL statements is a direct indication of database activity. The ratio of ROLLBACK actions to COMMIT actions may indicate logical inconsistencies in one or more SQL statements.

I/O Activity

In the I/O Activity area, you can see information about the I/O activities that were triggered by the database system. This includes information about the logical and physical read and write transactions. In a physical read or write activity, the system accesses a volume directly. A logical read or write activity, on the other hand, uses data stored in the data cache or another cache.

More information: I/O Operations

Lock Activity

The Lock Activity area gives you information about the maximum number of available database locks (entries) as well as the number of locks set since the start of database monitoring. If the number of locks set approaches the number of available locks, it is a good idea to raise the value of the MAXLOCKS general database parameter.

Escalations shows the total number of rows locked by a single user session. If more than a certain percentage of the rows of a table are locked by a single user session, the database system locks the entire table. The threshold for escalations follows the MAXLOCKS values for this database.

If a locked object is requested again, a lock conflict occurs. If a large number of collisions occurs in your system, this means that a specific lock is being held too long, or multiple users are trying to access the same part of the database too often. The values for lock owner and lock requester refer to the locks at the time the transaction is executed.

More information: SQL Locks

Logging Activity

The Logging Activity area shows you, among other things, the number of log pages (written log pages, such as pages filled with redo log entries). If the value of Log I/O Queue Overflow is greater than 0, increase the space available for log queues. You can configure the size of log queues with the LOG_IO_QUEUE special database parameter and the number of the log queues with the LOG_QUEUE_COUNT support database parameter.

More information: Concepts of the Database System, How Databases Log Data Changes

Scan and Sort Activity

The Scan and Sort Activity area shows you, among other things, information about table scans and data record sorting. Keep the number of table scans to a minimum, since a high number of sequential scans can have a negative effect on database performance.

More information: Bottlenecks

Resetting Monitor Data

If you want to monitor the database status at the current time, choose [image] Activity Monitor [image] Reset Monitor Data [image] . All relevant database system tables are initialized and the statistical data for Database Monitoring is collected from that time forward.

More Information

  • Database Activities

  • DBA Cockpit: SAP MaxDB, Activities Overview

  • Concepts of the Database System,

    SQL

    How Databases Store Data and Log Entries

    Locks

  • Database Administration,

    General Database Parameters

    Monitoring Databases


-11101: Initialization failed [<description>]. - SAP Documentation

Background documentation -11101: Initialization failed [<description>].

Explanation

The system could not perform an initialization.

Examples:

  • Due to the problems with the memory allocation, the system could not create the variable of an internal data structure.

  • The pointer of an internal variable has a value of 0 even though the system expects a value not equal to 0.

For more information, see the <description>.

User Response

Try to fix the error using the information in the <description>. If that is not possible, consult the MaxDB mailing list.


-24981: ERR_HIENTRYNOTFOUND - backup history entry not found - SAP Documentation

Background documentation -24981: ERR_HIENTRYNOTFOUND - backup history entry not found

Explanation

The required entry does not exist in the backup history.

User Response

Correct the parameters of your DBM command to read the backup history.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-24955: ERR_BANOSAVETYPE - backup type not defined - SAP Documentation

Background documentation -24955: ERR_BANOSAVETYPE - backup type not defined

Explanation

The backup medium definition contains no backup type ( LOG, DATA or PAGES).

User Response

Correct the medium definition, or enter the backup type explicitly for the failed command.


Parameters - SAP Documentation

Procedure documentation Parameters

The Administration user menu of the DBA Cockpit contains, among other things, a display of the current database or SAP liveCache database parameters and changes to these parameters. You can change database parameters.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Administration [image] Parameters [image] .

Result

The general database parameters are displayed in the simple view.

If you want to display all database parameters, choose [image] Goto [image] Expert View [image] .

Choose [image] Goto [image] Group View [image] if you want to display all database parameters sorted into the groups General Parameters, Extended Parameters, and Support Parameters.

To display the changes made to a database parameter to date, use one of the methods below:

  • Click on the symbol at the start of the row that contains the parameter.

  • Select the parameter name and choose Expand Subtree.

The system displays a list of the change data and values to which the database parameter was set.

Changing Parameters

If necessary, switch to change mode.

Double-click on a parameter name. You see additional details for that parameter and can change it if necessary. The new database parameter values are checked and saved.

Caution Caution

Changes to database parameters generally do not take effect until the database is restarted.

You can also change some database parameters while the database is running (see the description of individual database parameters for more information). In addition, you can choose how long the change is to be effective for these database parameters:

  • Save: Changes to database parameters do not take effect until the next restart.

  • Activate Temporarily: Changes to database parameters take effect immediately, but only until the next restart.

  • Save and activate: Changes to database parameters take effect immediately and are permanent.

If you change a database parameter whose value is normally calculated by the system, then the set value also remains valid for all subsequent recalculations of database parameter values. The system only recalculates the value when the set value is not within the permitted value range.

End of the caution.

Note Note

You can also use Database Studio or the Database Manager to change database parameters. If you have changed the database parameters with the Database Manager, but these have not yet taken effect, the system may display different parameter values in the CCMS and at operating system level.

End of the note.

More Information

Parameter History

Database Administration, Database Parameters


-7074: Cycle in granted roles not allowed - SAP Documentation

Background documentation -7074: Cycle in granted roles not allowed

Explanation

Possible reasons:

  1. You tried to assign a role to itself.

  2. You tried to assign role definitions cyclically.

User Response

Check for typing errors. If you do not find any, check whether the roles that would result in the cycle can be combined into one role.


backup_ext_ids_forget - SAP Documentation

Background documentation backup_ext_ids_forget

The backup IDs requested by a backup tool are stored in the working memory. By using this DBM command, you release this area of the working memory and so increase the amount of free memory.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

backup_ext_ids_forget

Result

OK

In the event of errors, see Reply Format.

More Information

Glossary, Backup IDs


-530: Referential integrity violated - SAP Documentation

Background documentation -530: Referential integrity violated

Explanation

Possible reasons:

  1. An INSERT or UPDATE statement issued on a table that is the referencing table in a referential CONSTRAINT definition produces a row that is not a matching row of the CONSTRAINT definition.

  2. Deleting rows from a referenced table in a referential CONSTRAINT definition using ON DELETE RESTRICT in the DELETE rule produces a matching row.

User Response

  1. Display the definition of the referential CONSTRAINT definition using a QUERY statement issued on the DOMAIN.FOREIGNKEYCOLUMNS system table. Change the INSERT or UPDATE statement according to this definition.

  2. Use a suitable QUERY statement to find out which row of the referencing table prevents the required rows from being deleted from the referenced table.


Demo Data for the SQL Tutorial - SAP Documentation

Procedure documentation Demo Data for the SQL Tutorial

The demo data for the SQL Tutorial represents an extremely basic hotel administration system with information on the hotel’s visitors, location, vacancies, room prices, and so on. The basic demo data is sufficient for you to understand all the examples in this SQL Tutorial.

Note Note

You can change the basic demo data to suit your needs. However, your results may then deviate from the example results given in this tutorial.

End of the note.

Prerequisites

  1. Install the database software and tools. To do so, proceed as described in your installation documentation. For more information, see Glossary, Installation.

  2. Create the demo database DEMODB. Do NOT load all of the demo data. You can use Database Studio or Installation Manager to create the demo database (See also: Glossary, Installation Manager).

    Database Studio, Creating the Database

Procedure

You can use a number of tools to execute the SQL statements (Database Studio, SQLCLI, Loader etc.).

Creating the MONA database user

The following sections describe how to enter the SQL statements for creating the database user MONA with the Database Studio.

  1. Log on to the demo database DEMODB as a database system administrator using the Database Studio (Logging on to a Database). If you transferred the default values when creating the demo database DEMODB, the database system administrator will contain the following user data: name of the database system administrator: DBADMIN, password: SECRET

  2. Use the Database Studio to create the database user MONA with the following SQL statement (Working with SQL Statements: Overview):

    CREATE USER mona PASSWORD red DBA NOT EXCLUSIVE

Creating the HOTEL demo schema along with its data

The following sections explain how to execute the SQL statements specified for the HOTEL demo schema for creating the database objects and their contents (basic demo data) with the Database Studio.

  1. Log on to the demo database DEMODB as the database user MONA with the password RED using the Database Studio (Logging on to a Database).

  2. Create the HOTEL demo schema and the required tables and fill these with values using the Database Studio (Entering and Executing SQL Statements). Use the SQL statements as specified in SQL Statements for the HOTEL Demo Schema to create the basic demo data.

Result

The database user MONA has been created in the demo database DEMODB as a database administrator (DBA) with the password RED. The database administrator MONA can open several database sessions at once (NOT EXCLUSIVE). The HOTEL demo schema has been created. A series of simply-structured tables have been assigned to the HOTEL demo schema. The tables are filled with basic demo data.

Note Note

If you want to learn to administer databases using the DEMODB or test SQL statements or Loader commands using existing demo data, you can load the complete set of demo data into the database DEMODB by executing specified scripts. To load the complete demo data in this case, select the corresponding Load Tutorial option when creating a database in the Installation Manager or in the Database Studio.

End of the note.

More Information

Explanation of the Tables in the HOTEL Demo Schema

Concepts of the Database System, Demo Database, Objects in the HOTEL Schema


Heap Usage - SAP Documentation

Procedure documentation Heap Usage

In the Space user menu of the DBA Cockpit, you can find, among other things, a display of the OMS heap usage since the last start of the liveCache Monitoring.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Space [image] Heap Usage [image] .

Result

The OMS Heap configuration parameters are displayed: OMS_HEAP_LIMIT, OMS_HEAP_THRESHOLD, OMS_HEAP_BLOCKSIZE, OMS_HEAP_COUNT

The current values of the following memory areas are displayed: Data Cache, Converter, maximum heap usage, and system heap

The system displays information on OMS heap usage.

Heap area | Name of the OMS heap
Size | Size of the memory controlled by the OMS heap
Currently occupied | Size of the memory actually occupied by the OMS heap
Memory requests | Number of memory requests in the OMS heap
Memory releases | Number of memory releases in the OMS heap
Requests through block allocator | Number of OMS heap memory requests through the corresponding block allocator
Releases through block allocator | Number of OMS heap memory releases through the corresponding block allocator
Spinlocks | Number of synchronizations through spinlocks
Conflicts | Number of collisions that occurred during synchronizations through spinlocks
Spinloops, Yieldloops, MAX Spinloops, MAX Yieldloops | An interpretation of these details requires knowledge of spinlock implementation.

More Information

liveCache Alert Monitor, Memory

Monitoring the Main Memory Areas

Database Administration, SAP liveCache Database Parameters

Glossary, OMS Heap


-878: Unknown record name - SAP Documentation

Background documentation -878: Unknown record name

Explanation

The name of the record is not known.

User Response

Correct the name or declare a record.


Deleting Tables - SAP Documentation

Procedure documentation Deleting Tables

You delete a table in the explorer tree.

Note Note

To delete tables, you can also use SQL statements.

More information:

  • Entering and Executing SQL Statements

  • SQL Reference Manual, DROP TABLE Statement (drop_table_statement)

End of the note.

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the table or have the DROPIN privilege for the schema to which the table belongs.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the Explorer.

  2. Choose Delete in the context menu of the table.

    Delete Options

    Option

    Description

    Cascade

    All of the metadata and rows in the table are deleted, along with the view tables, indexes, privileges, synonyms, and referential CONSTRAINT definitions derived from the table.

    Restrict

    The system can only delete the table if no dependencies exist.

    Example: The table cannot be deleted if a view table is based on it.

    Delete Catalog Object

    Deletes both the table definition (in the database catalog) and the table contents.

    Delete All Rows

    Only deletes the table content, but not the table definition.

    The system deletes all data records, the table definition, and all view tables, privileges, synonyms, and referential constraint definitions derived from the table.

More Information

Creating Tables


Checking the Database Configuration - SAP Documentation

Procedure documentation Checking the Database Configuration

Over time, the recommended settings for the configuration of the database may change. You can perform a check to see whether your database configuration still complies with the current recommendations for you system.

The following settings are checked:

  • Whether the most important database parameters are set according to the recommendations for your system

  • Whether there are any broken indexes

  • Whether the database trace is activated

  • Whether there are tables for which no statistical information is stored in the file directory

  • Whether logging is activated and overwriting of the log area is deactivated

  • Whether the data cache size corresponds to the recommendations for your system

Procedure

In SAP systems, proceed as described in SAP Note 1111426 (Parameter check for liveCache/MaxDB instances).

In other systems, download the Parameter Check File from the SAP MaxDB download area on SCN (https://www.sdn.sap.com/irj/scn/maxdb-downloads) and proceed as described there.


Tasks - SAP Documentation

Background documentation Tasks

The database kernel executes all central database tasks, for example:

  • Establishing connections

  • Reading and writing data (I/O operations)

  • Monitoring the database

  • Processing SQL queries

Task Types

Name

Description

Database Analyzer task

Tasks for Database Analyzer

Database Analyzer tasks are taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter. More information: Support Parameter

Event task

Tasks for events

Event tasks are also taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter.

Floating Service task

Database Analyzer and Event tasks are taken from the floating service task pool, which is limited by the FloatingServiceTasks parameter.

Idle task

Used for internal task scheduling

Log Writer

Log Writers write log entries from the log queue to the log area, for example after a COMMIT or during a savepoint.

There is a log writer for each log partition. More information: Log Area

You define the maximum number of log writers with the special database parameter MaxLogWriterTasks. More information: Special Database Parameters

Pager (formerly Data Writer)

Pagers write the data from the data cache to the data volumes at each savepoint. Writing a savepoint can take a long time for a large data cache. If necessary, Pagers also become active between savepoints, to write the changed data asynchronously.

During a restart of the database, Pagers read the converter pages from the data volumes into the converter.

The system calculates the number of Pagers required. It is primarily dependent on the size of the data cache and the number of data volumes.

Server task

Server tasks parallelize database functions. They are required, for example, to back up data and log entries, create indexes and to permanently delete tables. During a restart of the database, Server tasks import log entries and process transactions in parallel.

You can configure the number of Server tasks that are available using the MaxServerTasks special database parameter.

Server tasks can have special names that reflect how they are used, for example Savepoint, BackupMedium, BackupVolume, AutosaveCoordinator, AutosaveMedium.

Timer task

The Timer task is responsible for time-outs of SQL lock requests and checks whether log entries can be backed up.

Trace Writer task

The Trace Writer task writes the trace entries in the working memory when the database trace is switched on.

User task

User tasks execute SQL statements.

When a database user opens a database session, the database system assigns one User task to this database user.

User tasks create the main load for the processor.

You can configure the number of available User tasks using the special database parameter MaxUserTasks.

Utility task

The Utility task performs administration tasks.

Task States
Old Name | New Name (as of software version 7.7.03.15 ) | Description
AsynClose | Stream Close | Task is closing I/O ports after backup or restore.
AsynCntl | - | Task is determining parameters or initializing a backup device.
AsynIO | Stream IO | Task is executing I/O operation (during backup or restore).
- | Stream Init | Task is initializing backup or restore operation.
AsynOpen | Stream Open | Task is opening I/O ports for backup or restore.
AsynWaitRead/Write | Stream Wait(R)/(W) | Task is waiting for the end of an I/O operation during backup or restore (W: Write, R: Read).
Command reply | Command reply | Task is sending the result of a request to the application.
Command wait | Command wait | Database session without a request.
Connect wait | Connect wait | Task is already running and waiting for the database session to be created.
Continue | Continue | Tasks is in the process of releasing another task from the Stopped state.
DcomObjCalled | LCApp Called | Task is executing an SAP liveCache application routine.
Inactive | Inactive | Task is free (not linked) and cannot run. The task does not have a stack.
InsertEvent | Insert Event | Task is generating an event.
- | IO CPort Wait | Task is waiting for an RTE Completion Port.
- | IO Job Execute | Task is executing an I/O job.
- | IO Job Wait | Task is waiting for the end of an I/O job.
IO wait (W/R) | IO wait (W/R) | Task is waiting for the result of an I/O operation (W: Write, R: Read).
Locked | Locked | Task was locked as the kernel was shut down (to avoid this task being rescheduled).
Mark for Start | Startable | Task is free (not linked) and cannot run. The task already has a stack (system has already allocated all resources) and is waiting for the start.
RescheduleMsec | RescheduleMsec | Short-term wait situation, task will run again automatically after a predefined time span (in microseconds).
Runnable | ShareLck Yield | Task can run now, but has been displaced due to long runtime or priority of another task.
Runnable | ExclLock Yield | Task can run now, but has been displaced due to long runtime or priority of another task.
Running | Running | Task is running, using CPU.
Spinlock loop | Spinlock Loop | Task is trying to obtain a spinlock.
SpinlockYield | Spinlock Yield | Task gives up control voluntarily. This situation occurs when the task has just tried to obtain a spinlock but without success.
Stopped | Stopped | Task was stopped by the kernel and is waiting to run again.
Terminated | Terminated | Task or database session was ended.
UNKNOWN | UNKNOWN | Task state is unknown.
Vattach | Volume Attach | Task is opening I/O ports (volumes, normal operation).
Vbegexcl | Enter ExclLock | Task is waiting to be allowed to enter a protected area exclusively.
Vdetach | Volume Detach | Task is closing I/O ports (volumes).
Vdevsize | - | Task is determining the size of a volume or formatting a volume.
Vdualvectorio | Dual Vector IO | Task is performing a vector I/O operation (read or write) on two volumes in parallel.
vdiaginit | Trace init | Task is initializing the trace volume.
Vendexcl | Leave ExclLock | Task is leaving a protected area.
VenterRWRegion | Enter ShareLck | Task is waiting to be allowed to enter a conditionally shared area.
Vfclose | File Close | Task is closing a file.
Vfopen | File Open | Task is opening a file.
Vfwrite | File Write | Task is writing to a file.
VleaveRWRegion | Leave ShareLck | Task is exiting a protected, conditionally shared area.
- | VolumeFormatW | Task is waiting for a volume to be formatted.
Vopmsg | Message Output | Task is writing a message to one of the following database files: knldiag, knldiag.err, opmsg[n]
Vrelease | Connect Close | Task is ending the database session.
Vshutdown | DB OFFLINE | Task is changing the operational state of the database from ONLINE to OFFLINE.
Vsleep | Sleeping | Short-term wait situation, task will run again automatically after a predefined time span.
Vsuspend | Suspend | Task is suspended and waiting to be awoken explicitly by another task (Vresume). There are special Vsuspend wait situations that are displayed under a specific name. More information: Vsuspend Task States table
Vvectorio | Vector IO | Task is executing a vector I/O operation (read or write).
- | Volume Format | Task is formatting volume(s).
- | IOComPort Wait | Task is waiting for an I/O order confirmation from the I/O completion port.
- | Aborting | Task is exiting the database session.
Yielding | - | Task gives up control voluntarily.
- | Initialized | Task was initialized.
WaitForEvent | Wait For Event | Task is waiting for an event.

To display information about tasks, use Database Studio, Database Manager CLI, or CCMS (in SAP systems only). More information:

  • Database Studio, Displaying Information About Tasks

  • Database Manager CLI, show

  • Database Administration in CCMS, Task Manager

More Information

Task Switching

Threads


-10406: Invalid data length for UCS2 data for parameter/column (<number>) - SAP Documentation

Background documentation -10406: Invalid data length for UCS2 data for parameter/column (<number>)

The UNICODE value (UCS2) of parameter/column <number> could not be read or inserted, because the number of characters is uneven. UNICODE values (UCS2) can only be converted to ASCII if the number of characters to be converted is even.

Explanation
User Response

  • Check the number entered for the LengthIndicator argument for the SQLDBC_PreparedStatement::bindParameter method.

  • Make sure that the concluding 0-byte in the character set is not counted.


-25325: Errors checking compatibility of external and db data types. See Loader server log file for more information - SAP Documentation

Background documentation -25325: Errors checking compatibility of external and db data types. See Loader server log file for more information

Explanation

Error executing the Loader command for exporting data. In the command, for individual columns you can specify the external data type of the values in the data stream. This error message is only a summary of the error. The error messages -25315 and -25323 specify which column descriptions contain errors, and they are only listed in the log file.

User Response

Correct the command and then re-execute it.


-6011: Duplicate constraint - SAP Documentation

Background documentation -6011: Duplicate constraint

Explanation

There is already a CONSTRAINT definition for the specified column.

User Response

Do without adding a CONSTRAINT definition or change the existing CONSTRAINT definition to achieve the desired effect. Use a QUERY statement issued on the system table DOMAIN.CONSTRAINTS to check the existing CONSTRAINT definitions.


-1111: Too many savepoints - SAP Documentation

Background documentation -1111: Too many savepoints

Explanation

Within a transaction, too many savepoints were defined.

User Response

Check how this uncommonly large number of savepoints occurred. Include the missing COMMIT or ROLLBACK statements in the application


-822: Invalid constant definition - SAP Documentation

Background documentation -822: Invalid constant definition

Explanation

The constant definition is invalid.

User Response

Correct the constant definition within the declare section.


-812: Parameter list too short - SAP Documentation

Background documentation -812: Parameter list too short

Explanation

Fewer parameters have been specified in a statement than are needed in the pertinent EXECUTE statement.

User Response

Modify the number of parameters in such a way that it corresponds to the specifications made in the column list.


-3008: Invalid keyword or missing delimiter - SAP Documentation

Background documentation -3008: Invalid keyword or missing delimiter

Explanation

The SQL statement contains an incorrect keyword, or a keyword unknown in the currently valid SQL mode, or a keyword or delimiter is missing

User Response

Correct the SQL statement according to the syntax description and the current SQL mode.


IMPORT USER - SAP Documentation

Background documentation IMPORT USER

You can import user data exported from a database using the EXPORT USER command into a database. Use the IMPORT USER command to do so. The data imported into the database belongs to the database user logged onto the database at the time of the import.

Prerequisites

You can use the demo databases DEMODB and TESTDB. You have exported the required data from demo database DEMODB. In demo database TESTDB, create the data administrator MONA if you have not already done so. Start the Loader and log onto database TESTDB as database administrator MONA with the password RED.

Use the session mode: loadercli -d testdb -u mona,red

Activities

Data for the database user MONA is to be imported into the TESTDB database. You can make entries after the keywords CATALOG and/or DATA to select what is to be imported, the database catalog and/or the application data.

Caution Caution

If you import a table, the Loader also creates all the objects and links (views, foreign key dependencies with other tables…) that are defined for the table. If the necessary objects are not present and the import therefore cannot be executed, the Loader notifies you of this fact. Typical error messages include -25451 and -25392. If these errors occur, the import is terminated at this point.

End of the caution.
Importing the Database Catalog for the Current Database User

You can import the user-specific database catalog information belonging to the application.

IMPORT USER

  CATALOG INSTREAM 'mona_ddl.catalog'

The database catalog (CATALOG) is imported in the DDL (default value) format.

See also: Loader, Data Stream

Importing the Application Data for the Current Database User

You can import the user-specific application data.

IMPORT USER

  DATA INSTREAM 'mona_pages.data'

The application data (DATA) is imported in the PAGES format (default value).

IMPORT USER

  DATA INSTREAM 'mona_pages.data' RECORDS

The application data (DATA) is imported in the RECORDS format. A PAGES import uses a database format (based on a page) and does not write Log entries, so it is faster than an import that uses the RECORDS format of the Loader. However, the tables imported in the PAGES format are write-protected until you back up the data.

See also: Loader, PAGES, RECORDS

Importing the Database Catalog and the Application Data for the Current Database User

You can import the data that was exported specifically for a user.

IMPORT USER

  CATALOG INSTREAM 'mona_ddl.catalog'

  DATA INSTREAM 'mona_pages.data'

Note the sequence of the syntax elements. Always enter the syntax element for the import of the database catalog first, and then the syntax element for the import of the application data.

Excluding Tables from the Import

By specifying a data stream after the keyword CONFIGURATION, you can exclude the application data of selected tables that are specified in this data stream. The tables must be identified in the data stream by specifying the schema and table name.

Test the Loader behavior for different tables. When you exclude tables, you must be careful not to violate any dependencies, such as by excluding the tables CITY or HOTEL. You want to exclude the EMPLOYEE table from the import. Create the employee.configuration file with the following contents:

HOTEL,EMPLOYEE

Specify the following import command in the Loader session mode. Note the sequence of the syntax elements. First, enter the syntax element that excludes the table from the import.

IMPORT USER

  CONFIGURATION INSTREAM 'employee.configuration'

  CATALOG INSTREAM 'mona_ddl.catalog'

  DATA INSTREAM 'mona_pages.data'

The database catalog entries of all tables are always imported, regardless of the restrictions made in employee.configuration.

Additional Log Functions

If you specify a data stream after the keyword PACKAGE, the command entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. This is an additional logging option. Always enter the PACKAGE syntax element as the last syntax element.

IMPORT USER

  CATALOG INSTREAM 'mona_ddl.catalog'

  PACKAGE OUTSTREAM 'mona_csv.package'

See also: Loader, Additional Log Functions (package_spec)

Complete Syntax of the IMPORT USER Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

IMPORT USER

  CONFIGURATION INSTREAM FILE 'employee.configuration' CSV ASCII

  CATALOG INSTREAM FILE 'mona_ddl.catalog' DDL

  DATA INSTREAM FILE 'mona_pages.data' PAGES

  PACKAGE OUTSTREAM FILE 'mona_csv.package' CSV

For a complete syntax description, see IMPORT USER command in the Loader documentation.

More Information

Other commands for Importing

Session Mode


-20: Duplicate key - SAP Documentation

Background documentation -20: Duplicate key

Explanation

There is already a table row with the key to be inserted.

User Response

Check whether the existing table row contains the desired values. If this is not the case, check whether values in the existing table row can be replaced with the desired values. If a new table row must be inserted, change the value of the key to be inserted in the SQL statement in order to prevent key collisions.


-7046: Column with length greater than 254 not allowed - SAP Documentation

Background documentation -7046: Column with length greater than 254 not allowed

Explanation

The attempt was made to use a CHAR type column with a length greater than 254 in a statement part that does not allow such a column. This could have happened, for example, if the attempt was made to change a column with a defined length less than 254 into a column with a defined length greater than 254.

User Response

Do not use this column in the statement part. Try to achieve the desired effect by application programming. For a change in the defined length, the desired effect could be achieved by replacing the ALTER definition with a MODIFY definition. Expect this to take significantly longer though. The time required depends on the number of data records in the addressed table and the indexes defined for this table.


-6012: Duplicate default - SAP Documentation

Background documentation -6012: Duplicate default

Explanation

There is already a DEFAULT specified for the specified column.

User Response

Do without adding a default value or change the existing default value to achieve the desired effect.Use a QUERY statement issued on the system table DOMAIN.COLUMNS to find out the definition of the existing default value.


-28538: Inheritance_error: Object has wrong key - SAP Documentation

Background documentation -28538: Inheritance_error: Object has wrong key

Explanation

A keyed object class exists, which is derived from another keyed object class – the key classes of these two classes are different. There is an object of the derived class which has a pointer type of the base class. If the key of the object is accessed the key would be interpreted in the “format” of the base class. Since this is generally erroneous, this type of access is forbidden.

User Response

The object-key can only be accessed by a pointer of the own class.


-3038: Invalid volume size - SAP Documentation

Background documentation -3038: Invalid volume size

Explanation

The value for the size of a volume specified during installation is not a valid number.

User Response

Specify a valid number.


-10329: Invalid serial value requested, must be first or last value - SAP Documentation

Background documentation -10329: Invalid serial value requested, must be first or last value

Explanation

The SQLDBC_Statement::getLastInsertedKey was set with the wrong parameters.

User Response

Check the call in the application program.


-1104: Too complicated SQL statement (KB-stack overflow) - SAP Documentation

Background documentation -1104: Too complicated SQL statement (KB-stack overflow)

Explanation

Within the system, more elements of an internal structure are needed to represent the SQL statement than are available.

User Response

Simplify the SQL statement or split it into several SQL statements.If this is not possible, check whether the database parameter PACKET_SIZE can be increased, because the size of the internal structure depends on the size of that parameter. The structure size will be adapted from a certain limit value of PACKET_SIZE.


-4016: Unknown procedure name - SAP Documentation

Background documentation -4016: Unknown procedure name

Explanation

There is no database procedure of the specified name.

User Response

Use a QUERY statement issued on the DOMAIN.DBPROCEDURES system table to view the database procedures already in use. Change the procedure name in the SQL statement accordingly.


Testing Prepared Statements - SAP Documentation

Procedure documentation Testing Prepared Statements

Prepared statements are used for developing database applications. Prepared statements enable you to use SQL statements with placeholders in methods of the language selected for the database application.

Interfaces for SAP MaxDB: Prepared Statement Support
Interface | Implementation
JDBC | PreparedStatement class
ODBC | SQLPrepare method
SQLDBC | SQLDBC_PrepareStatement class
PHP | maxdb_prepare
Perl | prepare
Python | Method prepare (class SapDB_Session), Class SapDB_Prepared (module sdb.sql)

Prepared statements have the following advantages when compared to simple SQL statements:

  • They are more efficient since the database system only needs to parse them once, even if they are used more than once.

  • They are more secure, because they separate the SQL logic and the data entered by the user and so decrease the risk of a user deliberately specifying invalid values (SQL injection).

In the Database Studio, you can test prepared statements with different variable values and check which strategies the database system uses for different variable values.

Procedure

  1. Enter the SQL statement.

    Use a question mark ? as a placeholder in the SQL statement.

    Example Example

    SELECT zip, name

    FROM hotel.city

    WHERE name = ?

    End of the example.

    More information: Entering and Executing SQL Statements

  2. In the context menu of the SQL editor, choose Prepare Statement.

  3. Enter a value for the placeholder.

  4. In the context menu of the SQL editor, choose Execute SQL.

    The result of the executed SQL statement with this placeholder is displayed.


-24961: ERR_STATE - cannot determine current db state - SAP Documentation

Background documentation -24961: ERR_STATE - cannot determine current db state

Explanation

The operating state of the database instance could not be determined properly. This means that the validity of the DBM commands can no longer be determined.

User Response

Check the database processes using the operating system tools. Try to connect to the database instance through a database application, for example, SQL Studio. If this succeeds, the database instance is in the ONLINE state and is ready for (maybe limited) use.Use some of the other options available, for example, log files, to check the state of the database instance. Contact Support if necessary. If your applications or users can no longer connect to the database instance, you should make sure that the database instance has a proper operating state by restarting it.


-11105: Cannot get column name for column <number>. - SAP Documentation

Background documentation -11105: Cannot get column name for column <number>.

Explanation

The metadata of the column with the number <number> is missing the column name.

User Response

Check whether calling a MaxDB PHP function, which expects a column index as the parameter, has transferred the correct column index.


diag_histlist - SAP Documentation

Background documentation diag_histlist

Use this DBM command to display the available log files.

If you execute the command without specifying a time stamp, the system displays a list of all available log files with their time stamps and the directory they are stored in.

If you specify a time stamp in addition to the DBM command, the system displays the file IDs of the log files that have this time stamp. You can display the contents of a file by using the file ID (see: file_getfirst).

You can, however, also use the information about the directory to access log files using operating system commands. The path of the directory that contains the log files is defined by the value of the special database parameter DiagnoseHistoryPath.

Prerequisites

You have the server permission DBFileRead.

Structure

diag_histlist [<YYYYMMDDHHMMSS>]

Options
Option | Description
<YYYYMMDDHHMMSS> | Time format for the change date of the backup history: Year Month Day Hours Minutes Seconds

Result

After Entering a Command Without a Time Stamp

OK

<timestamp> <directory>

<timestamp> <directory>

...

The system displays a list of all available log files.

Values for the Reply Fields
Value | Description
<timestamp> | Time stamp
<directory> | File directory
After Entering a Command with a Time Stamp

OK

<timestamp>\<file_ID>

<timestamp>\<file_ID>

...

The system displays the file IDs of all available log files.

Values for the Reply Fields
Value | Description
<file_ID> | File ID

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB.

Display the list of the log files available for this database:

>dbmcli -u OLEG,MONDAY -d DEMODB diag_histlist

OK

20080922131308 C:\Documents and Settings\All Users\Application Data\sdb\data\wrk\DEMODB\DIAGHISTORY\DEMODB_20080922_13-13-08

20080922131308 C:\Documents and Settings\All Users\Application Data\sdb\data\wr k\DEMODB\DIAGHISTORY\DEMODB_20081008_16-39-48

or

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB.

Display the file IDs of the log files:

>dbmcli -u OLEG,MONDAY -d DEMODB diag_histlist 20081008163948

OK

DIAGHIST#20081008_16-39-48\knldump

DIAGHIST#20081008_16-39-48\KnlMsg

DIAGHIST#20081008_16-39-48\knltrace

DIAGHIST#20081008_16-39-48\rtedump

More Information

Database Administration, Log Files


-27006: Incompatible data types - SAP Documentation

Background documentation -27006: Incompatible data types

Explanation

One of the following situations occurred:

  • An SQL read statement attempted to read a value from the database instance to an incompatible host variable

or

  • An SQL write statement attempted to write the value of an incompatible host variable to the database instance.

User Response

Contact Support.


Database Administration: Overview of Activities - SAP Documentation

Background documentation Database Administration: Overview of Activities

The required and recommended database administration activities (DBA activities) are described in the SAP MaxDB documentation Database Administration.

Activities

The table below provides an overview of the DBA activities that are described in the Database Administration documentation, and, if appropriate, links the DBA activities to SAP CCMS functions that are available to perform these activities.

Note Note

The documentation for the SAP MaxDB database system also generally applies to SAP liveCache technology. If there are functional differences, these are explained.

End of the note.

Database Administration

Some Database Administration Options with CCMS Tools

Creating Databases

Use the SAP MaxDB tools available to you to create a database. You can use the CCMS transactions (Integrating a Database System) as an entry point to administer the desired database.

Periodic Administration Tasks

Use the DBA Planning Calendar to schedule important DBA activities:

  • Scheduling a Data Backup

  • Activating Automatic Log Backup

  • Scheduling Interactive Log Backups

  • Archiving Backup Files

  • Scheduling Updates of the SQL Optimizer Statistics

  • Scheduling a Database Structure Check

Automating Administration Tasks

Automating Database Administration Activities

Changing Database Properties

Use the SAP MaxDB tools available to you. You can also change some database properties with CCMS tools:

  • User Data

  • Data Area

  • Log Area

  • Database Parameters

  • Scheduling Updates of the SQL Optimizer Statistics

  • Activating Automatic Log Backup

Monitoring Databases

General information about Database Monitoring and more detailed information:

  • Monitoring the Data Area

    Monitoring the Log Area

  • Monitoring accesses to Caches

  • Monitoring backups, for example with the DBA History

  • Monitoring database activities using the Activities Overview

  • Monitoring the number of database sessions, for example with the User Tasks alert display

Backing Up Databases

Backing Up Databases:

  • Designing a Planning Concept

  • Creating Backup Templates

  • Scheduling Data Backups and Log Backups.

  • Checking the backup actions, for example with the DBA History and the DBA Planning Calendar (Displaying Actions, Scheduling an Action)

Making Snapshots of the Data Area

Use the SAP MaxDB tools available to you to administer snapshots.

Exporting and Importing

Use the SAP MaxDB tools available to you to export and import data.

Managing Users

Use the SAP MaxDB tools available to you. You can also change some user properties with CCMS tools: User Data

Analyzing Database Performance

Executing Performance Analysis in CCMS

Troubleshooting

Troubleshooting

Restoring Databases

  • Check the existing backups, for example using the DBA History.

  • Use the SAP MaxDB tools available to you to restore a database.

  • You can use the CCMS Index Analysis to determine which indexes might be missing.

Replication and High Availability

Use the SAP MaxDB tools available to you to make settings for replication and high availability.

Developing Database Applications

Use the SAP MaxDB tools available to you. For SAP liveCache applications, you can Register LCApps, specify Administration Reports, and analyze the liveCache Applications alert display in the CCMS.

More Information

  • Terms and Procedures

  • Database Administration in CCMS: SAP MaxDB

  • Database Administration

    Concepts of the Database System

    SAP MaxDB Security Guide

    Glossary

  • SAP Notes


-1115: Too many intern columns - SAP Documentation

Background documentation -1115: Too many intern columns

Explanation

An ALTER TABLE statement or a CREATE VIEW statement generates a table description either containing more columns than allowed or whose rows exceed the maximum length. Under certain circumstances, this situation can occur because of columns that are invisible to the user.

User Response

For a CREATE VIEW statement, check whether some output columns can be omitted. For an ALTER TABLE statement, check whether the specified column width can be decreased. Check also whether previous ALTER TABLE statements generated so many invisible columns that MODIFY DEFINITION should be used to remove invisible columns instead of ALTER DEFINITION. However, this leads to the copying of the table, a procedure which requires considerable space and time.


-4024: Unknown name - SAP Documentation

Background documentation -4024: Unknown name

Explanation

There is no database object with the specified name.

User Response

Use QUERY statements issued on system tables to find out which objects you are authorized to see.


-25304: Columns for key (KEY) or search condition missing - SAP Documentation

Background documentation -25304: Columns for key (KEY) or search condition missing

Explanation

Error in the command for importing data.No entries were made in one or more of the key fields of a table that is to be imported. The data record affected is specified in the next message.

User Response

Correct the data and re-execute the command.


TRANSFORMATIONMONITOR - SAP Documentation

Object documentation TRANSFORMATIONMONITOR

The system table SYSLOADER.TRANSFORMATIONMONITOR describes the resource consumption of a Loader transformation.

Structure

TRANSFORMATIONMONITOR
PACKAGEGUID | CHAR(24) | Unique identification of the transformation package
ROWCOUNT | FLOAT(38) | Number of transformed rows
TRANSACTIONSIZE | FIXED(6,0) | Minimum number of rows that are to be transformed before the status of the transformation step is logged
SYSTEMDURATION | FLOAT(38) | System performance
KERNELDURATION | FLOAT(38) | Kernel performance
LOADERDURATION | FLOAT(38) | Loader performance
DATADURATION | FLOAT(38) | Pager performance
LOGDURATION | FLOAT(38) | Total time required for the management of actions within a transformation step
IODURATION | FLOAT(38) | Total I/O time within a transformation step

More Information

Loader, Loader System Tables

Definitions of the System Tables


Using the Central Calendar (SAP Library - SAP MaxDB Library)

 Start of Content Area

Procedure documentation Using the Central Calendar Locate the document in its SAP Library structure

Use

You can use the Central Calendar in the DBA Cockpit to view actions on all the databases of your SAP Systems.

Prerequisites

· You have defined the systems to be displayed in the Central Calendar by double-clicking the required system in the screen DBA Cockpit: System Configuration Maintenance and selecting Collect Central Planning Calendar Data.

For more information, see Configuring Systems for Remote Monitoring Using Remote Database Connections.

· In an ABAP system, make sure that you schedule the jobs for the remote database in the central monitoring system. Jobs that have been scheduled in the remote system are not displayed.

· In the DBA Planning Calendar of the DBA Cockpit where you call the Central Calendar, you have planned the action Central Calendar Log Collector to run regularly. This collects information from the defined remote systems for display in the Central Calendar.

For more information, see Setting Up the DBA Planning Calendar.

Procedure

...

1. Start the Central Calendar from the DBA Cockpit by choosing Jobs ® Central Calendar.

The Central Calendar is displayed. If you have already run or planned actions, you see entries by day, one for each system.

Here is an example of entries for Thursday February, 08 affecting two systems, FUD and FIB:

3 | FUD | 2
4 | FIB | 1

On system FUD for Thursday 8th January, there were three actions planned, two of which had the highest status severity. For example, the highest status severity for FUD might be “Finished with warning”, in which case the entry for FUD is displayed with a yellow background. This means that two actions ended with a warning.

On system FIB for the same day, there were four actions planned, one of which ended with the highest severity. For example, the highest severity for FIB might be “Finished with error”, in which case the entry for FIB is displayed with a red background. This means that one action ended with an error.

The following table shows the color-coded statuses in the Central Calendar, which you can also see by choosing Legend:

Color | Status
Light blue | Planned
Dark blue | Running
Green | Finished successfully
Yellow | Finished with warning
Red | Finished with error
Dark yellow | No longer available
Dark red | Scheduling failed

2. To see a summary of the actions for a day, double-click the day header.

The system displays a summary of the actions and status for each system on the day you selected, as in the following example:

System | Total | No longer available | Scheduled | Running | Finished | Warning | Error | Overdue
FUD | 3 | 1 |  | 2 |  |  |  |
FIB | 4 |  | 3 |  |  |  | 1 |

3. To see the individual actions for a system, double-click the entry for the system on the required day.

You see the relevant day in the DBA Planning Calendar. You can perform all usual functions in the DBA Planning Calendar.

4. To refresh the display for the system from which you called the Central Calendar, choose Refresh.

5. To refresh the display for all systems, choose Remote Refresh.

You can remotely refresh the display as follows:

Method | How the Refresh Runs
Run in Dialog | Runs in dialog mode, which can take a long time, so not normally recommended
Start immediately | Runs immediately in the background as a job
Schedule at | Runs in the background at the time that you specify

We recommend that you schedule action Central Calendar Log Collector to run regularly, as described above in “Prerequisites”.

6. If required, you can customize the calendar display as follows:

○ Specify a factory calendar in Calendar ID.

Holidays are displayed in the same background color as weekend days. This in no way restricts the planning of actions in the DBA Planning Calendar.

○ Switch to day, week, or month view by choosing Administration ® View Day, Administration ® View Week, or Administration ® View Month.

○ Choose Save Settings and change Number of Weeks or Entries per Day in the display.

End of Content Area


Space - SAP Documentation

Background documentation Space

The following user menus in the DBA Cockpit provide information about saving and/or utilizing memory in caches, volumes and database objects.

Caution Caution

For SAP NetWeaver 7.1, the submenus for the Space menu are partly different.

End of the caution.

  • Caches

  • SAP liveCache Technology: Heap Usage

  • Data Area

  • Log Area

  • Snapshots

  • Tables/Views/Synonyms

  • Indexes

  • Table Sizes

  • SAP liveCache Technology: Class Container Sizes

  • DB Fill Level (not for SAP NetWeaver 7.1)

  • DB Activities (not for SAP NetWeaver 7.1)

  • DB Procedures

  • SAP NetWeaver 7.1: Volumes

More Information

DBA Cockpit: SAP MaxDB


-25390: Error generating CREATE TABLE/INDEX statements. Table name is ambiguous (different users have a table with this name) - SAP Documentation

Background documentation -25390: Error generating CREATE TABLE/INDEX statements. Table name is ambiguous (different users have a table with this name)

Explanation

A table or an index with the same name already exists.

User Response

Resolve the naming conflict by renaming or deleting the existing table.


-28838: Wrong sorting of an old sequence - SAP Documentation

Background documentation -28838: Wrong sorting of an old sequence

Explanation

The method omsNewConsistentView was called with an amount of OIDs. These OIDs are not sorted correctly and therefore it cannot be assured that no deadlocks occur. This is the reason why the operation was cancelled.

User Response

Make sure that the OIDs passed to omsNewConsistentView are always sorted correctly. A correct sorting is given when two successive OIDs have a smaller or equal previous OID (concerning the defined OID-type operator “<=”).


Reference - SAP Documentation

Background documentation Reference

Reference Documentation
Title of the Documentation | Contents
SQL Reference Manual | SQL statements and their syntax Descriptions of system tables Special features of the SQL mode ORACLE
Messages | List of all messages in the database system: responses and error messages from the database kernel and the database tools Includes short explanations of possible causes of errors, and tips for the user on how to react.


-25281: Syntax error at position <position> (<error_text>). Check for typing errors - SAP Documentation

Background documentation -25281: Syntax error at position <position> (<error_text>). Check for typing errors

Explanation

The Loader discovered a syntax error in the command when it was parsed.

User Response

Correct the command and then re-execute it.


-4000: Unknown result table - SAP Documentation

Background documentation -4000: Unknown result table

Explanation

There is no result table of that specified name.

User Response

Use a QUERY statement issued on the DOMAIN.TABLES system table to view the names of the existing result tables. Correct the name of the result table or check why the result table with the specified name was already deleted.A COMMIT statement issued in the ANSI and DB2 SQL modes implicitly closes all result tables. You can prevent this behavior in the DB2 SQL mode by specifying "WITH HOLD".Except for the ORACLE SQL mode, a ROLLBACK statement implicitly closes all result tables generated within this transaction.


backup_history_append - SAP Documentation

Background documentation backup_history_append

This DBM command is an internal system command.

There is no documentation for this at present.


RAID - SAP Documentation

Background documentation RAID

You can use RAID systems for the data and log volumes of your database.

More Information

Database Administration, Planning Databases

SAP Note 869267 (FAQ: MaxDB Log Area)


-25342: Error restoring table <table_name>; table exists but source table schema and target table schema are different - SAP Documentation

Background documentation -25342: Error restoring table <table_name>; table exists but source table schema and target table schema are different

Explanation

Error in the Loader command for importing data.The specified table already exists in the database instance. The Loader has established that the structures of the source and target table are different. This means that the data cannot be imported.

User Response

Change the target table so that the schemas match. Execute the command again.


-23071: Convert object created by older SQL Studio Version - SAP Documentation

Background documentation -23071: Convert object created by older SQL Studio Version

Explanation

You can convert the object from the SQL Studio into the format of a newer program version.

User Response

Choose Yes if you want to convert the object. Saving the object gives it the same format as the newer version of the SQL Studio. Once the object has been converted, you can no longer process it with an older version.Choose No if you do not want to convert the object.


-7072: More than one column with default SERIAL not allowed - SAP Documentation

Background documentation -7072: More than one column with default SERIAL not allowed

Explanation

You tried to assign the DEFAULT SERIAL DEFAULT specification more than once when defining a base table. In each base table, there may not be more than one column with the DEFAULT SERIAL default specification.

User Response

Choose a column from which this definition can be omitted. Then repeat the modified SQL statement.


-28001: Access via NIL OID - SAP Documentation

Background documentation -28001: Access via NIL OID

Explanation

Invalid OMS operation, for example, dereferencing (omsDeref) when specifying the NIL Oid. This is not allowed.

User Response

Contact Support.


-25214: The specification of a separator/delimiter is not allowed together with FWV - SAP Documentation

Background documentation -25214: The specification of a separator/delimiter is not allowed together with FWV

Explanation

The command to export or import data contains an error.When FWV is specified as the format of a data stream in a command, you cannot additionally specify separators or delimiters in the statement.

User Response

Correct the entries and re-execute the command.


-1103: Too complicated SQL statement - SAP Documentation

Background documentation -1103: Too complicated SQL statement

Explanation

The number of operations, functions and conditions is too large.

User Response

Simplify the SQL statement. You may also want to try to obtain the effect of the SQL statement with several SQL statements.


-4030: Unknown schema - SAP Documentation

Background documentation -4030: Unknown schema

Explanation

No schema with the specified name is recognized.

User Response

Use a QUERY statement issued on the system table DOMAIN.SCHEMAS to find out the names of all known schemas.


-817: Incompatible data types - SAP Documentation

Background documentation -817: Incompatible data types

Explanation

The data type of the SQL variable or parameter is not compatible with the database system’s data type.

User Response

Change the data type of the SQL variable or parameter to match the database system’s data type for the table column. If this message is returned during precompilation and the data types are compatible, precompile with NOCHECK option.


-8038: Prepared statement not prepared - SAP Documentation

Background documentation -8038: Prepared statement not prepared

Explanation

The given variable of datatype PREPAREDSTATEMENT cannot be executed, because it has not been prepared before.

User Response

Execute a PREPARE statement for the given variable.


info - SAP Documentation

Background documentation info

With this command you can display information about a database. Specify the information to be displayed using the info ID.

The most important info IDs are described below. You can display a list of available info IDs by entering the info ID INFOS.

Prerequisites

  • You have the server permission DBInfoRead.

  • You have opened a database session (see: db_connect).

Structure

info <info_ID>

Option | Description
<info_ID> | ID of the information to be displayed The most important info IDs are: CACHES | DATA | LOG | STATE | VERSIONS | INFOS CACHES: Accesses to the cashes and hit rates DATA: Path, size, and load of the data volumes LOG: Comprehensive information about the log area STATE: Information about the current state of the database VERSIONS: Database software version INFOS: All available info IDs

Result

OK

END|CONTINUE

<description_record> <info_record> <info_record>

Values for the Reply Fields
Value | Description
END | The complete result set was output.
CONTINUE | More results data is available.
<description_record> | Name of the fields of the subsequent information lines
<info_record> | Information

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, and display the version of the database software:

>dbmcli -u OLEG,MONDAY -d DEMODB info VERSIONS

OK

END

Name | Value

Kernel = Kernel 7.6.00 Build 016-123-109-428

Runtime Environment = W32/INTEL 7.6.00 Build 016-123-109-428


-837: Data definition not allowed - SAP Documentation

Background documentation -837: Data definition not allowed

Explanation

The syntax of the SQL data type is incorrect or the SQL data type is invalid.

User Response

Correct the data definition or construct a valid alternative.


-28530: omsTerminate called - SAP Documentation

Background documentation -28530: omsTerminate called

Explanation

The omsTerminate method was called.This cancelled all component instances in the relevant session, and reset the current transaction.

User Response

Contact Support.


-10414: Conversion from binary value to string is not supported for parameter/column (<number>) - SAP Documentation

Background documentation -10414: Conversion from binary value to string is not supported for parameter/column (<number>)

Explanation

A BYTE parameter was supplied for an ASCII/UNICODE variable, or a CHAR ASCII/CHAR UNICODE parameter was supplied for a binary variable.

User Response

Check the parameters supplied.


-32: View violation - SAP Documentation

Background documentation -32: View violation

Explanation

An INSERT statement or UPDATE statement was specified for a view table. At least one of the rows specified in the SQL statement does not satisfy the search conditions of all underlying view tables defined using WITH CHECK OPTION.

User Response

Display the definition of the view table using a QUERY statement issued on the DOMAIN.VIEWDEFS system table. Correct the INSERT or UPDATE statement according to this definition.


-8002: User already connected to this user task - SAP Documentation

Background documentation -8002: User already connected to this user task

Explanation

A user already connected to the database instance entered another CONNECT statement.

User Response

If you want to continue working under another user name, you must specify first a RELEASE statement and then a CONNECT statement.


Transport Mode - SAP Documentation

Function documentation Transport Mode

In transport mode, the user is interactively prompted for input to export application data from one database and import it into another database. The input parameters and the Loader configuration file are used to generate (phase generate) and execute (phase execute) the syntax of the Loader commands. The generated Loader commands can be displayed on the console. The user can then use them as templates for custom commands. In transport mode, no knowledge of the syntax of Loader is required.

Features

In transport mode, the user designs a transformation package in an interactive menu by entering the direction of the transport (export from one database, import into a database or transport between databases), the database connection parameters and the database part to be transported. This information defines the contents of the package to be transported. When designing the package, the user may also define the data carrier type and the format in which the application data is to be transported.

You can start Loader CLI in interactive transport mode. To do this, enter the following command:

Syntax Syntax

  1. loadercli –p [<package_timestamp>]
End of the code.

With package_timestamp, you specify the name of the generated package (phase generate) for which an export or transport can be executed (phase execute) or the name of a package created during an export (phase execute) that can be imported. The default value for package_timestamp is the time stamp that specifies when the package was generated.

Note Note

The transport mode is available for 32 bit platforms only.

End of the note.

Activities

A transformation package is designed for an export in transport mode. In addition to the design data, the package consists of the appropriate database catalog data and application data, and the corresponding runtime data of the transformation, such as the transport log file.

  • You can execute this transformation package. That is, Loader processes the sequence of Loader commands (the transformations) determined by the transformation package step by step (phase execute).

  • You do not have to execute a designed transformation package immediately; you can choose to generate only the sequence of Loader commands (phase generate). You can execute this generated transformation package at a later time either as is or with minor modifications (phase execute). You can execute a generated transformation package either interactively or by means of the corresponding transport mode options.

After an export, you can start the import of the transformation package to another database by specifying the package name (interactively or by specifying the name of the transformation package after the option -p). In this case, you can also either generate the import package or execute it immediately. You can design and generate and even execute an export and its corresponding import package together if you choose the transport transformation type.

Generated Design Data
Command file | <timestamp>.EXPORT <timestamp>.IMPORT | This file contains the sequence of Loader commands generated from the design data. The user can modify the file and execute it in Loader command file mode
Internal files | <timestamp>.xml <timestamp>.pkg <timestamp>.par <timestamp>.cfg | These files contain internal data and may not be changed.

The database catalog data of a transformation package includes one or more CATALOG files, depending on the granularity of the database catalog chosen for the export.

Database Catalog Data
CATALOG file | <database_name>.CATALOG | All metadata of the specified database was transformed.
CATALOG file | <database_user>.CATALOG | The metadata owned by the specified user was transformed.
CATALOG file | <schema_name>.CATALOG | The metadata of the specified schema was transformed.
CATALOG file | <table_name>.CATALOG | The metadata of the specified table was transformed.

The application data of a transformation package includes one or more catalog files, depending on the granularity of the database catalog chosen for the export.

Application Data
Mapping file | <database_name>.DATA0000 <database_user>.DATA0000 <schema_name>.DATA0000 | The application data from the specified database, user or schema has been transformed.
Data file | <database_name>.DATA000[<FILENO>] <database_user>.DATA000[<FILENO>] <schema_name>.DATA000[<FILENO>] | FILENO is the sequential number of the files for the application data if the data set of a file exceeds 2 GB. Numbering starts with 1. The application data from the specified database, user or schema has been transformed.
Table data file | <table_name>.DATA | The application data from the specified table except for the values of the LOB columns has been transformed.
Table LOB data file | <table_name><column_name>.DATA[<ROWNO>] | ROWNO is the sequential number of the data files, starting with 1, if the LOB values for the column value are exported to a separate file. The application data of the specified LOB column of the table has been transformed.
Runtime Data

PACKAGE file

<timestamp>.PACKAGE

The runtime data of a package is contained in the PACKAGE file
Result

The requested commands are designed, generated and executed, if applicable. Each transformation package is given a time stamp package_timestamp that shows when the package was generated or executed for the first time. If the default values are not changed, this time stamp is also the name of the transformation package. The export and import packages are stored in the package directory <loader_user_data>\packages in the following subdirectories:

  • EXPORT directory: export\<database_computer>\<database_name>\<package_timestamp>

  • IMPORT directory: import\<database_computer>\<database_name>\<package_timestamp>

  • TRANSPORT directory: EXPORT and IMPORT directory are used.

Logging

Loader writes the following logs in transport mode:

  • loader_<timestamp>.log: Loader Log File

  • transport.log: Loader Transformation History

Configuration

Configuration of the transformation packages using configuration file loader.cfg provides the user with the option of making individual settings. Configuration file loader.cfg is located in directory <loader_application_data>\config. In the section [PACKAGE], you can for example, configure settings for creating the transformation package (how the name is chosen, where the packages are stored, and so on). Note the differences in upper and lowercase spelling when making entries in the configuration file.

Example

Loader Tutorial, Transport Mode

Example Example

Starting Loader in transport mode

loadercli —p

Information about the default Loader transformation history (Microsoft Windows)

Package history: 'C:\Users\D019124\AppData\Roaming\sdb\loader\log\transport.log'

Location of the configuration file (Microsoft Windows)

C:\Users\D019124\AppData\Roaming\sdb\loader\config\loader.cfg

End of the example.

More Information

Command File Mode

Opening a Session: Loader CLI Options

Transformation


Setting the Environment Variable NSR_ENV - SAP Documentation

Background documentation Setting the Environment Variable NSR_ENV

To enable the Database Manager and Loader on the database computer to access the configuration file for NetWorker, you must define the absolute path of the file in the environment variable NSR_ENV using Database Manager CLI.

If you do not set the the NSR_ENV variable, the system uses one of the following files as the configuration file, depending on the operating system:

Default Values for Configuration Files
Operating System | File
Unix | /nsr/sapdb/env
Microsoft Windows | C:\Program Files\nsr\sapdb\env

Structure

>dbmcli -d <database_name> -n <database_computer> -u <dbm_operator>,<dbm_operator_password> dbm_configset -raw NSR_ENV <value>

Options
Option | Description
<value> | Value of the environment variable NSR_ENV

More Information

Database Manager CLI, dbm_configset


-25009: Failure in db communication (<type>): <return_code> = <error_text> - SAP Documentation

Background documentation -25009: Failure in db communication (<type>): <return_code> = <error_text>

Explanation

Communication between the Loader and the database instance takes place through the synchronous exchange of communication packages. Here, the Loader sends the database instance a package with the command that has to be processed to. This is known as a Request. While the database instance processes the command, the Loader waits for the package of the database instance to be returned with the result. This is known as a Receive.Errors may occur during this process if the connection from the Loader to the database instance is lost or if the database instance is no longer available.

User Response

Use the error text to determine why the communication failed. Fix the cause or the error and restart the Loader.


-10500: Result set is closed - SAP Documentation

Background documentation -10500: Result set is closed

Explanation

The method that was called could not be executed, because there is no result set or because the result set was closed using the SQLDBC_ResultSet::close method.

User Response

Only call the following methods if a result set exists:absolutebindColumnclearColumnsclosefirstGetResultSetMetaDatagetRowSetgetUpdatableRowSetlastnextrelativesetFetchSizesetRowSetSize


-25354: LOBFILE specification missing or incorrect - SAP Documentation

Background documentation -25354: LOBFILE specification missing or incorrect

Explanation

Error in the Loader command for importing or updating data, if all of a column’s LONG values to be inserted are in a LONG data stream.The Loader was unable to locate any position specifications in the source data stream for the values in the LOB data stream.

User Response

Correct the data stream and re-execute the command.


-25343: Column name(s) or number(s) do not match column names/numbers in select list: (<column_names>) - SAP Documentation

Background documentation -25343: Column name(s) or number(s) do not match column names/numbers in select list: (<column_names>)

Explanation

Error executing the Loader command for exporting data.The column list contains the column names, but they are missing from the SELECT statement. These are not exported and therefore cannot be saved in the data stream.

User Response

If you want to export these columns as well, you must include them in the SELECT statement. Otherwise delete the column names from the column list.Execute the command again.


-25391: SQL statement is too long - SAP Documentation

Background documentation -25391: SQL statement is too long

Explanation

The length of an SQL statement exceeds the package size of the order interface.

User Response

Increase the package size of the order interface and re-execute the SQL statement.


-24997: ERR_FILE - file handling error - SAP Documentation

Background documentation -24997: ERR_FILE - file handling error

Explanation

A file was not accessed properly.

User Response

This might happen because you do not have the user authorizations required. Check the DBM server installation and its current authorizations.You should also check whether the file is damaged.


-911: Work rolled back - SAP Documentation

Background documentation -911: Work rolled back

Explanation

Your transaction was implicitly canceled and rolled back by an implicit ROLLBACK statement. The following possible reasons are possible:

  1. The user failed to carry out any operations in the database within a certain period of time, but was holding locks which other users were waiting for.

  2. The database instance was in a deadlock situation.This is a situation in which two or more users hold locks and request further locks that are held by the other users. In the simplest case of two users, one user holds one lock at least and requests another lock. But this lock is held by another user who, on the other hand, waits for the lock held by the first user. This situation can only be resolved if one of the users releases the lock already obtained.

User Response

In some cases, the error message contains a more detailed description of the error.In both cases, the lock requests must be checked and modified, if necessary. Repeat the last transaction.


-724: Duplicate substructure name - SAP Documentation

Background documentation -724: Duplicate substructure name

Explanation

The name specified for the search for an SQL variable is not unique, because it identifies a substructure.

User Response

Specify the name of the complete structure with the SQL variable.


From -6000 to -6999 - SAP Documentation

Background documentation From -6000 to -6999

Database Kernel Error Messages
-6000 | Duplicate table name
-6001 | Duplicate column name
-6002 | Duplicate privilege
-6003 | Duplicate result table name
-6006 | Duplicate name
-6008 | Duplicate index name
-6011 | Duplicate constraint
-6012 | Duplicate default
-6013 | Duplicate trigger definition
-6014 | Duplicate value
-6016 | Duplicate format code
-6018 | Duplicate datasource name


OMS Object Browser - SAP Documentation

Procedure documentation OMS Object Browser

The Diagnosis user menu of the DBA Cockpit contains, among other things, the OMS Object Browser. The OMS Object Browser provides you with a lot of detailed information on the OMS objects used in the SAP liveCache.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] OMS Object Browser [image] . Enter the desired Object ID and choose Display Object.

Result

The following information is displayed:

  • Show / hide output history

    If you have requested information on several OMS objects (during your analysis) by entering the object ID, this information remains in the output history. You can select the required object ID and display detailed information on the selected OMS object.

    You can show or hide the output history and delete information from the output history.

  • Show / hide object information

    The system displays general information about the specified OMS object, such as class ID, class name, object type, schema name, and total size of the object.

    You can display or hide the object information.

  • If you want more detailed information, choose Complete Object or Indexes/Key.

    • The Complete Object display contains a list of fields (members) of an OMS object (Show/Hide Members). You can also view the hexadecimal display for the specified object.

    • The Indexes display contains a list of the indexes for the specified object. With an object of type OMS_KEYED_OBJECT, the fields (members) of the key and the hexadecimal display of the key are shown in the Key display.

More Information

Class Containers


-4027: Unknown session - SAP Documentation

Background documentation -4027: Unknown session

Explanation

The database trace should be switched on for a special database session. The specified session number does not exist.

User Response

Correct the session number.


-25344: Incorrect field length for column '<column_name>', minimum length <length_value> - SAP Documentation

Background documentation -25344: Incorrect field length for column '<column_name>', minimum length <length_value>

Explanation

Error in the Loader command for exporting data.The output length defined for the column is too small to display the values that are possible according to the column definition in the database instance.

User Response

Correct the output length for the column specified and re-execute the command.


25913: Table <schema_name>. <table_name> not imported - SAP Documentation

Background documentation 25913: Table <schema_name>. <table_name> not imported

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data of a table. See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


-25336: Error restoring multiple tables using data file with single table data; specify data file created using EXPORT DB or EXPORT USER - SAP Documentation

Background documentation -25336: Error restoring multiple tables using data file with single table data; specify data file created using EXPORT DB or EXPORT USER

Explanation

Error in the Loader command for importing data.The data was exported with the EXPORT TABLE command. This command exports only one table. This can only be imported using the relevant IMPORT TABLE command.

Note Note

You cannot import more than one table using this data.

End of the note.
User Response

If you want to import all tables, or those belonging to a particular database user, you must first export them using the EXPORT DB or EXPORT USER command.


Input and Output: Loader CLI Options - SAP Documentation

Function documentation Input and Output: Loader CLI Options

In Command File Mode and Session Mode you can specify Loader CLI options for defining version information.

in_output_options
-o[w|a] <file_name> | Name of output file
-cs <separator> | Command separator
-ps<number> <string> | Substitution parameter
-E <number> | Maximum number of errors allowed
-o[w|a] <file_name>

If you are working in command file mode, this option enables you to ensure that Loader output is written to the specified file file_name. In session mode, Loader does not evaluate this option. Default: if you do not specify the option, Loader outputs to the screen.

  • Option -ow <file_name>: The file is opened for writing and any existing entries are deleted.

  • Option -oa <file_name>: The file is opened for writing and output is appended to the end of the file without any previous entries being deleted.

Note Note

This option refers to output from Loader only . Loader also writes a log file.

End of the note.
-cs <command_separator>

With this option you can define which characters of Loader CLI should be recognized as command separator. A command separator completes a Loader command, which can then be processed by Loader. A command separator must contain at least one and no more than two characters.

  • Command file mode: Default: Individual commands end with a line, preceded by two forward slashes //. If you specify a command separator with the –cs option, the command ends with this command separator (see also: Command File).

  • Session mode: Default: Commands end when you press ENTEREnter a simple slash (/) at the end of the line to continue a command on the next line. If you specify a command separator with the –cs option, the command ends with this command separator. Press ENTER at the end of the line to continue a command on the next line (see also: Session Mode).

Example Example

loadercli -b command.dat -d demodb -u mona,red –cs ;

End of the example.

You call Loader CLI in command file mode using ; as command separator.

-ps<number> <string>

You use this option to specify values for placeholders in the command file. Value number defines the numbers of the placeholder to be substituted in the command file (1<=n<=9). You use string to specify the value the placeholder is to replace. This value can be any string. You can specify nine different parameters (and placeholders) for each command file. In the command file, enter the placeholder in the form &<number>.

Example Example

loadercli –b command.dat –d demodb –u mona,red –ps1 HOTEL

End of the example.

You call Loader CLI in command file mode. The system replaces the placeholders that have the form &1 with the string HOTEL in command file command.dat.

-E <number>

You use this option to specify how many (number) commands with errors should be allowed before Loader stops processing the command file.

Example Example

loadercli -b command.dat -d demodb -u mona,red –E 20

End of the example.

You call Loader CLI in command file mode. Loader processes the Loader commands and SQL statements contained in the command file command.dat. If errors occur (return code <> 0), processing of the command file is terminated when 20 commands have been terminated with an error.

Example

Loader Tutorial, Command File Mode, Session Mode

More Information

Opening a Session: Loader CLI Options


-11104: Session not connected. - SAP Documentation

Background documentation -11104: Session not connected.

Explanation

The system attempted to communicate with the database kernel. Here the system detected that there is no longer a connection to the database kernel.

User Response

Reconnect to the database kernel with the function maxdb_connect().


-1026: Too many differences between old and new view definition - SAP Documentation

Background documentation -1026: Too many differences between old and new view definition

Explanation

A CREATE VIEW statement was specified with the REPLACE option. A view table with the specified name already exists. The existing view definition differs so much from the specified view definition that the definitions depending on this view table can no longer be maintained in a consistent state. The CREATE VIEW statement therefore fails.

User Response

Do not modify the specified view table or check which of the depending definitions, e.g. view tables, privileges, and so on; do not match the new view definition. If there are some, delete them before re-executing the CREATE VIEW statement, and recreate them afterwards in an appropriate format.


IOJOBS - SAP Documentation

Object documentation IOJOBS

The system table SYSINFO.IOJOBS contains information about the I/O jobs.

Structure

IOJOBS
OWNERNAME | CHAR(32) | Name of the owner
JOBID | CHAR(8) | Identification of I/O job
ASYNCHRONOUS | CHAR(3) | I/O job proceeds asynchronously (YES | NO)
OPERATION | CHAR(16) | Name of the I/O operation
IOPRIORITY | CHAR(6) | I/O operation priority (LOW | MEDIUM | HIGH)
STARTBLOCK | FIXED(10) | Description of the block where the I/O operation begins on one volume
BLOCKCOUNT | FIXED(10) | Number of successive blocks used for reading/writing within the I/O operation
STATE | CHAR(7) | I/O operation status (PENDING | RUNNING | FAILED | SUCCESS | RETIRED SUCCESS | RETIRED FAILED)
COMPLETEDCOUNT | FIXED(10) | Number of transferred blocks
QUEUEID | FIXED(10) | Identification of the queue containing the I/O job
WORKERNAME | CHAR(32) | Name of the work thread that is processing or has processed the I/O job
PATH | CHAR(256) | Path of the volume or data medium


Database Studio Preferences: Query Result - SAP Documentation

Background documentation Database Studio Preferences: Query Result

Query Result
Property | Comments
Limit for LOB columns (Bytes) | Maximum number of bytes that Database Studio should load from the database for one LOB column
Limit for zoom (Bytes) | Maximum number of bytes that Database Studio should display when you zoom in the LOB column of a results table
Representation of null value | Characters with which Database Studio displays NULL values
Separate exported data with | Separators between values exported from the SQL editor
Replace non chars in LOB columns | Characters in LOB columns that cannot be displayed are replaced by blanks
Copy cell in result by using shortcut [CTRL] C | Only the selected cell is copied when you press CtrlC. System default: The entire selected row is copied when you press CtrlC. Note Note In the SQL editor, the entire row is always displayed as selected. End of the note.
Copy result with column header | Determines whether column headers are also copied when you copy from the results table
Append exported data to file | When you export a result table to a file, the system attaches the content of this result table to the existing file content.
Display char byte value as hex | Database Studio displays data of the data type CHAR BYTE as hexadecimal digits. If you do not choose this option, Database Studio displays this data in binary format.
Determine last row in result | Determines whether Database Studio defines the number of result rows before a results table is displayed Note Note Set this option for short results tables only. End of the note.
Use thousand separator for numbers | -
Display the duration of fetching a result row | -
Use forward only result cursor | For fetching results, Database Studio uses a forward-only cursor.


Displaying the Database Properties - SAP Documentation

Procedure documentation Displaying the Database Properties

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator.

  • The database is in the ONLINE operational state.

    Note that in ADMIN operational state, not all database properties are displayed.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Overview tab page.

    Database: Properties

    Area

    Property

    Description

    General

    Name

    Database name

    <database_computer>:<database_name>

    State

    Operational state of the database

    Version

    Version of the database software

    Operating System

    Operating system of the database computer

    Installation Path

    Installation path of the database software

    Global Program Path

    More information: Glossary, Directory

    Global Data Path

    More information: Glossary, Directory

    Private Data Path

    More information: Glossary, Directory

    Run Directory Path

    Run Directory

    Warnings

    Displays warnings, for example if you need to carry out a backup.

    Settings

    To change settings, choose the corresponding link (where available).

    Automatic Log Backup

    Activating or Deactivating Automatic Log Backup

    Command Monitor

    You can use the command monitor to analyze long-running SQL statements and identify bottlenecks.

    Resource Monitor

    You can use the resource monitor to monitor resource usage in the database and identify expensive SQL statements.

    Database Trace

    Creating a Database Trace

    Database Analyzer

    Starting or Stopping Database Analyzer

    Data Area Extension

    Activating or Deactivating Automatic Extension of the Data Area

    Automatic Recreation of Bad Indexes

    Activating or Deactivating the Automatic Recreation of Damaged I

    Automatic Statistics Update

    Activating or Deactivating the Automatic SQL Optimizer Statistics Update

    Database Event Dispatcher

    Managing Database Events

    Snapshots

    Making Snapshots of the Data Area

    Data Cache

    Size

    Size

    Hit Rate

    The lower the hit rate, the poorer your system's performance.

    We recommend a hit rate of > 99% for the data cache.

More Information

Database Administration, Creating Databases


-50: Lock request timeout - SAP Documentation

Background documentation -50: Lock request timeout

Explanation

The lock request or an implicit lock conflicts with the locks of another user. The maximum waiting time for being granted the lock has elapsed (special database parameter RequestTimeout).

User Response

In some cases, the error message contains a more detailed description of the error.The lock request can be reissued. To avoid possible deadlock situations, it is advisable to roll back the transaction using a ROLLBACK statement.


Monitoring Databases in a Database Landscape - SAP Documentation

Procedure documentation Monitoring Databases in a Database Landscape

Database landscapes are used for managing multiple database computers (servers).

Prerequisites

In Database Studio, you are logged on to the databases that you want to monitor.

Procedure

Opening the Databases Monitor

  1. In the explorer tree, go to the top level using the Up One Level (Up One Level) button.

  2. Select the database landscape that you want to monitor.

  3. In the context menu of the database landscape, choose Databases Monitor.

Adding or Removing Columns

  1. Next to Editor Menu (Editor Menu), open the dropdown menu.

  2. Choose Columns...

  3. Select or deselect columns.

Database Properties (In Alphabetical Order)
Property | Description | More Information
Automatic Log Backup | Shows whether automatic log backup has been activated. | Activating or Deactivating Automatic Log Backup
Build | Build number of the software version of the installation to which the database belongs |
Data Area | Fill level of the data area | Displaying Information About the Data Area
Data Cache Hit Rate | The data cache hit rate shows whether the data cache has been configured sufficiently large. The lower the hit rate, the poorer your system's performance. Recommendation Recommendation Data cache hit rate > 99% End of the recommendation. | Concepts of the Database System, Working Memory Areas
Database Name | Database Name |
Database Server | Name of the database computer |
Dependent Path | For software version <7.8: Dependent path |
Global Data Path | Global data path | Glossary, Directory
Global Program Path | Global programs path | Glossary, Directory
Independent Data Path | For software version <7.8: Independent data path |
Independent Program Path | For software version <7.8: Independent program path |
Installation Path | Installation path | Glossary, Directory
Kernel | Kernel variant | Glossary, Kernel Variant
Last Refresh | Last refresh of the information about the database |
Log Area | Information about the overwrite mode or the filling level of the log area | Displaying Information About the Log Area
Name | <computer_name>:<database_name> |
Next Refresh | Next refresh of the information about the database |
Operating System | Operating system of the database computer |
Operational State | Operational state of the database | Starting or Stopping Databases
Private Data Path | Private data path | Glossary, Directory
Refresh Interval | Refresh interval for the information about the database |
Run Directory Path | The run directory of a database is the directory where the database system saves the configuration and log files of the database. | Glossary, Run Directory
Sessions | Database sessions Note Note If no more database sessions are free, no more database users can log on to the database. To configure the number of available sessions, change the general database parameter MaxUserTasks. End of the note. | Changing Database Parameters
Started On | Time and date of the last database start |
User Name | Name of the user with which Database Studio is currently connected to the database (login) |
Status | Number of warnings |
Version | Software version of the installation to which the database belongs |
Sorting by Warning Level

  1. Add the Status column.

  2. Click the Status column header.

Changing the Properties of the Databases Monitor

  1. Next to Editor Menu (Editor Menu), open the dropdown menu.

  2. Choose Properties...

  3. Specify your properties.

    Databases Monitor: Properties

    Property

    Description

    Refresh interval

    Specifies how often the status information for the databases is refreshed (in seconds)

    Maximum number of threads to use

    Only relevant for large database landscapes

    Maximum number of threads that the system uses to update the status of the individual databases

    Restore databases monitor on startup

    To open the Databases Monitor after starting Database Studio, select this option.
Changing the Refresh Interval for Individual Databases

  1. In Databases Monitor, choose Properties in the context menu of the database.

  2. Change the refresh interval.

More Information

Managing Database Landscapes


Initializing Databases - SAP Documentation

Procedure documentation Initializing Databases

You initialize the data and log volumes of a database. During this process, the database catalog, application data, and the database log entries are deleted. However, the database configuration (database parameters, number, and definition of volumes and so on) is retained.

Initializing the database is necessary in the following cases:

  • Certain recovery situations

    Example Example

    After a training course, you want to restore the training course to its original state by importing a data backup that contains the original database state. By initializing the database before you restore the database, you delete the redo log entries, thus ensuring that all changes to the course database made by course participants are discarded.

    End of the example.

  • Testing

    Example Example

    For your daily tests, you need an empty database. By initializing the database before each test, you do not need to create and configure a new database for each test.

    End of the example.

  • Creating a database copy

  • Setting up a standby database

Procedure

To initialize a database, use Database Studio or Database Manager CLI.

More information:

  • Database Studio, Initializing Databases

  • Database Manager CLI, db_activate

More Information

  • Restoring Databases

  • Database Copy

  • Standby Database


Determining Version Information: Loader CLI Options - SAP Documentation

Function documentation Determining Version Information: Loader CLI Options

In Command File Mode or Session Mode you can specify Loader CLI options for getting version information.

version_options
-V | Version of Loader server
-v | Version of Loader CLI
-R <installation_path> | Directory containing the programs that are dependent on the version of the database software
-R <installation_path>

If multiple versions of Loader are installed on the computer, you can start a specific version. To do this, specify the name of the directory installation_path on the computer on which Loader is installed containing the version of the programs that are dependent on the database software. If you do not specify a directory name, Loader starts the latest version of the database software.

More Information

Opening a Session: Loader CLI Options

Glossary, Directory


25608: Restart file <file_name> not found; starting import from the beginning - SAP Documentation

Background documentation 25608: Restart file <file_name> not found; starting import from the beginning

Explanation

A warning appears when you use the Loader command for importing data. The syntax element RESTART was specified in the command. The Loader is unable to find the necessary restart information. It restarts the import again from the beginning. This warning does not cause the command to terminate.

User Response

No user action required.


db_unreg - SAP Documentation

Background documentation db_unreg

Use this command to delete the registration of the current database. The database files of this database are however retained on the database computer. This way, it is possible to revoke the deletion of the registration if necessary (see db_reg).

In Microsoft Windows, the relevant entry in the registry is deleted. In Unix, the file databases.ini in the directory <independent_data_path>/config is updated.

The db_unreg command can only be executed successfully if all DBM server connections to the specified database are closed, apart from that one you use to execute this DBM command.

As per the system default, the command for deleting the registry is only successful if all other commands, which are still being executed, are ended within 2 minutes. New commands are still accepted during that time, but are no longer executed. If one or more of those commands take longer than 2 minutes to be terminated, the system does not close the DBM server connections to the database, and the db_unreg command fails.

You can enter an option in the command to force the system to close the DBM server connection/s. Instead of waiting for running DBM commands to terminate, the system stops the DBM server/s immediately.

Prerequisites

  • The database is in the OFFLINE operational state.

  • You have the server permission InstallMgm.

  • The scheduler is OFF (see scheduler_stop).

Structure

db_unreg [-f]

Options

Option

Description

-f

If you specify this option, all connections between the DBM server and the database are closed immediately, and the registration of the database is deleted.

The respective command line windows no longer function. As soon as you enter another DBM command in such a window, an error message is displayed.

If you do not specify the option -f and DBM commands are still being executed in the database, the command db_unreg fails.

Result

OK

In the event of errors, see Reply Format.


Renaming View Tables - SAP Documentation

Procedure documentation Renaming View Tables

Note Note

You can only change names of view tables, but not any other properties.

End of the note.

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the view table and have CREATIN privilege for the schema to which the view table belongs.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the view table in the explorer tree.

  2. In the context menu of the view table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Change the name of the view table.

  5. In the context menu of the editor window, choose Alter View.

More Information

SQL Reference Manual, RENAME VIEW Statement (rename_view_statement)


Output Column - SAP Documentation

Background documentation Output Column

The syntax elements used for Loader output columns are described below.

Structure

Syntax Syntax

  1. <export_column_spec> ::=
  <map_column_field>
| <field_assignment>

<map_column_field> ::=
  <column_spec> <field_spec> <field_function> <null_assign>

<field_assignment> ::=
  '<literal>' <field_spec>

<column_spec> ::=
  <column_name>
| <column_id>

<field_function> ::=
  <field_type> [HEX]
| <numerical_functions>
| <field_type> [HEX] <numerical_functions>
<numerical_functions> ::=
  <scale_spec>
| <round_or_trunc_spec>
| <scale_spec> <round_or_trunc_spec>
<scale_spec> ::=
  SCALE <unsigend_integer>
<round_or_trunc_spec> ::=
  ROUND <unsigend_integer>
| TRUNC <unsigend_integer>
End of the code.

The syntax element export_column_spec is used in the EXPORT COLUMNS command. Syntax elements such as column_name and field_spec (position description) are also used in the column description of other Loader commands.

<map_column_field>

In export commands, the syntax element map_column_field. is used to assign the data fields of the data stream to the columns of the source table. You specify the external data types and the conditions for exporting the application data. Syntax rule column_spec specifies the column name or column ID.

Example Example

EXPORT COLUMNS cno, name, zip, address FROM hotel.customer

MAP COLUMNS

  cno      01-05

  name     06-15

  zip      16-20

  address   21-45

DATA OUTSTREAM 'customer_fwv.data' FWV

End of the example.

The column name column_name denotes the column in the SELECT expression.

Example Example

EXPORT COLUMNS cno, name, zip, address FROM hotel.customer

MAP COLUMNS

  1  01-05

  2  06-15

  3  16-20

  4  21-45

DATA OUTSTREAM 'customer_fwv.data' FWV

End of the example.

The column ID column_id denotes the position of the column in the SELECT expression.

<field_function>

In a command for exporting or importing application data, you use the field_function syntax rule to specify the data fields in the data stream (external data type, position, and so on). You can use the syntax rule numerical_functions to scale (<scale_spec> ::= SCALE <unsigned_integer>: Scaling factor unsigned_integer can be positive or negative; value to which the syntax rule refers is multiplied by the corresponding power of ten), round and/or truncate numeric data values (<round_or_trunc_spec> ::= ROUND/TRUNC <unsigned_integer> : unsigned_integer defines the number of decimal places; value must be between 0 and 18; function does not have any effect if the number does not have any decimal places) when you import data from the data stream to the target table or export data from the source table to the data stream.

Note Note

You always have to specify scale_spec before round_or_trunc_spec.

End of the note.

You use the syntax rule round_or_trunc_spec to specify the number of decimal places for a number.

  • ROUND <unsigned_integer>: The value is rounded off at the (<unsigend_integer>+1)th decimal place. If this number is >= 5, the value is rounded up. If it is < 5, the value is rounded down. The result is a number in which the (<unsigend_integer>+1)th and all subsequent decimal places are equal to 0. However, the first digits in the number may have been changed by rounding.

  • TRUNC <unsigned_integer>: The (<unsigend_integer>+1)th and all subsequent decimal places of the value are set to 0. The first unsigned_integer decimal places remain unchanged.

Example Example

EXPORT COLUMNS * FROM hotel.room

MAP COLUMNS

  hno 1

  type 2

  free 3

  price 4 SCALE —1 TRUNC 2

DATA OUTSTREAM 'room_csv.data'

End of the example.
<field_assignment>

You can use the syntax element field_assignment to define literals for output in addition to the output values in the export command. The literal is specified in single quotation marks in place of the column name or column ID.

Example Example

EXPORT COLUMNS * FROM hotel.customer

MAP COLUMNS

  'customer number:' 01-16

  cno       17-21

  title     22-28

  firstname  29-38

  name      39-48

  zip       49-53

  address    54-78

DATA OUTSTREAM 'customer_fwv.data' FWV

End of the example.

Example

EXPORT COLUMNS

More Information

EXPORT COLUMNS Command

Column Description


-815: Trace file open error - SAP Documentation

Background documentation -815: Trace file open error

Explanation

The trace file could not be opened. Writing of the trace file was disabled. The statement in which the error occurred was not executed.

User Response

Check the file attributes and change them, if necessary. For the exact error description, see the file appldiag .


-7048: DROP/ALTER USER not allowed while user is connected - SAP Documentation

Background documentation -7048: DROP/ALTER USER not allowed while user is connected

Explanation

The attempt was made to drop a user or to alter the characteristics of a user who was connected. This is only permitted for a user who is not connected.

User Action

Repeat the SQL statement when the user to be dropped or altered is not connected.


Task Manager - SAP Documentation

Procedure documentation Task Manager

The Kernel Threads user menu of the DBA Cockpit contains, among other things, a display of all tasks and their current status. You can end running SQL statements and tasks.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Kernel Threads [image] Task Manager [image] .

Result

The system displays an overview of the database tasks and information about the current state of each individual task. The following views are available:

  • Active Tasks

  • Executable Tasks

  • User Tasks (User task type)

  • System Tasks

  • All Tasks

You obtain the following data, among other things:

ID | Internal Task ID
Thread ID | Thread ID of the corresponding internal task
Application PID | Process ID of the application program linked to the task A * before the PID indicates that the PID is on a separate server.
Task State | Information about the current state of the database task.
LCApps | liveCache Technology: Name of the DB Procedure
Refreshing the Display

You can refresh the display. To do so, choose [image] Edit [image] Refresh [image] .

You can automate this function by choosing [image] Edit [image] Automatic Refresh On/Off [image] . The display for the function for the automatic refresh is above the header line of the table (green symbol: on, red symbol: off). In the field next to this, you can specify the time interval with which the automatic refresh should take place. The default value is 5 seconds.

Displaying Task Details

In the Task Manager, you can display detailed information about a task.

  1. Select a task.

  2. Choose [image] Edit [image] Task Details [image] .

Analyze the display of the task details.

liveCache Technology: The system displays the current name of the running DB procedure here, among other things.

Activating/Deactivating DB Time Measurement

In the Task Manager, you can activate or deactivate the internal time measurement for database activities.

You can use this function to, for example, calculate the average response times for an SQL command.

  1. Choose [image] Edit [image] Activate DB Time Measurement [image] .

  2. Perform the desired time measurements.

  3. Choose [image] Edit [image] Deactivate DB Time Measurement [image] .

Evaluation of measurement data can be done via the analysis of bottlenecks using the Database Analyzer.

Terminating an SQL Command/SQL Session

You can terminate an SQL statement (command) or an SQL session in the Task Manager.

  1. Select a task.

  2. Choose [image] Edit [image] Terminate SQL Command [image] . This terminates the SQL command currently being processed.

    or

    Choose [image] Edit [image] Terminate SQL Session [image] . This terminates the task. If a work process of the SAP system was connected with the terminated task, the work process immediately logs on to a new task.

If you want the affected SQL command to still be recorded in the performance trace after the termination, use one of these options to terminate a running action. If you terminate an action by terminating the corresponding work process (transaction code SM50), the SQL command is not recorded in the trace.

Example

Task | State | Possible Causes | Possible Reactions
Log Writer | I/O wait | I/O bottleneck in the log area | Monitoring the Log Area
User | I/O wait | Data cache too small Low performance of disk I/O | Monitoring Caches Monitoring I/O Operations Further analysis of Bottlenecks
User | Vwait | SQL statements in the application cause SQL locks | Analyzing Wait Situations.

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases


Deleting Synonyms - SAP Documentation

Procedure documentation Deleting Synonyms

Prerequisites

  • You are logged on to the database as a database user.

  • The synonym belongs to the current database user's schema.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the synonym in the explorer tree.

  2. In the context menu of the synonym, choose Delete.

More Information

SQL Reference Manual, DROP SYNONYM Statement (drop_synonym_statement)


-28503: Crash in DB Procedure - SAP Documentation

Background documentation -28503: Crash in DB Procedure

Explanation

When a database procedure was called, a non-handled exception occurred in the method code of the corresponding component instance.For more information, see the liveCache file knldiag.

User Response

Contact Support.


-10602: SQL command contains UNICODE character - SAP Documentation

Background documentation -10602: SQL command contains UNICODE character

Explanation

The SQLDBC_Statement::execute or SQLDBC_PreparedStatement::prepare method that was called could not be executed, because the SQL statement contains UNICODE characters and the database instance was not configured for UNICODE characters.

User Response

Only use 7-bit ASCII SQL statements for ASCII database instances.


25599: Value for usage <number> rows too high to fit into one database page. Ignoring value - SAP Documentation

Background documentation 25599: Value for usage <number> rows too high to fit into one database page. Ignoring value

Explanation

You have executed an IMPORT command and specified in the command how many data records should be saved on a database page when the command is executed. However, the specified value is too great and is therefore ignored by the Loader. In this case the Loader saves the maximum possible number of data records on a particular database page.

User Response

This message merely provides information. A user response is not necessary.


IMPORT USER Command - SAP Documentation

Background documentation IMPORT USER Command

You can use the Loader command IMPORT USER to import data that has been exported for a specific user. This imported data then belongs to the database user logged on to the database at the time of import.

Prerequisites

You have exported the required data using the corresponding EXPORT command.

Structure

Syntax Syntax

  1. <import_user_command> ::=
  IMPORT USER
    [<duplicates_clause>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<catalog_data_instream_part_spec> ::=
  <catalog_instream_spec>
| <data_instream_part_spec>
| <catalog_instream_spec> <data_instream_part_spec>
<catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>
<data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>

<package_spec> ::=
  PACKAGE <oustream_csv_spec>

<restart_spec> ::=
  RESTART <package_guid>
<package_guid> ::=
  <unsigned_integer>
End of the code.
<catalog_instream_spec>, <data_instream_part_spec>

Depending on whether database catalog and/or application data is imported, the following data streams are generated during import:

  • Data stream for database catalog definitions CATALOG <instream_ddl_spec>

  • Data stream for application data DATA <instream_tableformat_spec>

Only one of the formats PAGES or RECORDS is possible for the data stream for the instream_tableformat_spec application data.

See: Data Stream, PAGES, RECORDS

Syntax Syntax

  1. IMPORT USER
  [<duplicates_clause>]
  [<configuration_spec>]
  <catalog_instream_spec> <data_instream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT USER command imports the data that was exported for the specific user (database catalog and application data).

Syntax Syntax

  1. IMPORT USER
  <catalog_instream_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT USER command imports the user-specific database catalog information belonging to the application.

Syntax Syntax

  1. IMPORT USER
  [<duplicates_clause>]
  [<configuration_spec>]
  <data_instream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT USER command imports the user-specific application data.

<duplicates_clause>

You use the DUPLICATES clause to specify how to proceed when importing data from a data stream if a row with the same key as the new row already exists in the table. This clause is not evaluated if the data is imported into the database in PAGES format.

REJECT DUPLICATES | The new line is rejected with an error message (default value).
IGNORE DUPLICATES | The new line is not inserted.
UPDATE DUPLICATES | The new line overwrites the existing line.
<configuration_spec>

You can exclude tables from the import.

  • If you do not specify a data stream using CONFIGURATION <instream_csv_spec>, all the application data is imported.

  • If you specify a data stream using CONFIGURATION <instream_csv_spec>, you can exclude the application data of selected tables from the import of the instream_tableformat_spec application data. The tables must be identified in the data stream by specifying their schema and table name. The information about which tables are not exported is stored in the system tables. One way of displaying this information is to display the system table SYSLOADER.TRANSFORMATIONMODEL. The tables excluded from the export of the application data have the value TRUE in the EXCLUDE column.

The database catalog entries CATALOG <instream_ddl_spec> of all tables are always imported, regardless of the restrictions set using CONFIGURATION <instream_csv_spec>.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

<restart_spec>

You can restart the export or import using the package_guid (ID created by Loader for every command at runtime. This integer is always 24 bytes long). The user can determine the package_guid of the corresponding export or import commands from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command with the corresponding package_guid using the restart_spec syntax element.

See: Restarting

Result

The application data and/or database catalog are imported to the data_instream_part_spec and catalog_instream_spec data streams. If necessary, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to the package_spec data stream.

Errors: The import cannot be completed successfully. In this case, Loader logs the cause of the error in the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, IMPORT USER

More Information

Importing: Loader Commands

EXPORT USER Command

Loader Log File

Loader System Tables


-11113: Number of parameters does not match number of result columns. - SAP Documentation

Background documentation -11113: Number of parameters does not match number of result columns.

Explanation

When calling the MaxDB PHP function maxdb_bind_param() or the function maxdb_stmt_bind_param() the system detected that the number of PHP variables that have to be bound does not match the number of parameters in the corresponding SQL statement.

User Response

Make sure that the number of PHP variables that have to be bound corresponds to the number of parameters.


-28806: Nil page pointer - SAP Documentation

Background documentation -28806: Nil page pointer

Explanation

The container directory is inconsistent.This is an internal liveCache error that cannot be caused by incorrect handling of the OMS API.

User Response

Contact Support.


USE SCHEMAMAP Command - SAP Documentation

Background documentation USE SCHEMAMAP Command

You can use the Loader command USE SCHEMAMAP to specify the schema map of the current user.

Prerequisites

You have generated schema maps with the CREATE SCHEMAMAP statement. The required entries are therefore in the MAPSCHEMANAMES system table (see CREATE/DROP SCHEMAMAP Statement, SQL Reference Manual, MAPSCHEMANAMES).

Structure

Syntax Syntax

  1. <use_schema_map_command> ::=
  USE SCHEMAMAP <schema_map_name>

<schema_map_name> ::=
  <identifier>
End of the code.

You can use the USE SCHEMAMAP command to specify which schema map (schema_map_name) the current database user will use. If the name of the schema map is identical to a keyword, or if upper and lowercase notation is relevant, the name must be placed in double quotation marks.

This setting for the Loader session is valid as long as no other schema map is specified by a USE SCHEMAMAP command or an IMPORT SCHEMA command.

Example

Example Example

USE SCHEMAMAP hotel_to_mona

End of the example.

The current database user uses the HOTEL_TO_MONA schema map.

More Information

Opening a Session: Loader Commands


Troubleshooting for the SAP MaxDB JDBC Driver and Java Classes - SAP Documentation

Procedure documentation Troubleshooting for the SAP MaxDB JDBC Driver and Java Classes

Procedure

Displaying the Version of the SAP MaxDB JDBC Driver

  1. Go to the directory where the JDBC driver has been installed.

  2. On the command line, enter the following command:

    java -jar sapdbc.jar -V package com.sap.dbtech.jdbc

    package com.sap.dbtech.jdbc, MaxDB JDBC Driver, SAP AG, 7.6.06 Build 005-000-008 -935 (Make-Version: 7.8.01 Build 001-103-208-806)

    The make version is the version of the SAP MaxDB installer that installed the JDBC driver.

Displaying All Command Line Options

  1. Go to the directory where the JDBC driver has been installed.

  2. On the command line, enter the following command:

    java -jar sapdbc.jar --help

Using the JDBC Trace

More information: JDBC Trace


-1017: Too many joins - SAP Documentation

Background documentation -1017: Too many joins

Explanation

The number of join predicates in a search condition must not exceed 64.

User Response

The expected result can be achieved by issuing several QUERY statements and creating the respective result tables as temporary results. It is also possible to change the SQL statement in such a way that temporary results are implicitly created when a QUERY expression is used in a FROM clause.


bye | exit | quit | release - SAP Documentation

Background documentation bye | exit | quit | release

Use this command to close the Database Manager CLI program.

Structure

bye | exit | quit | release

Result

OK

In the event of errors, see Reply Format.


-24915: ERR_NOADDD - configuration update not allowed (param file is inactive) - SAP Documentation

Background documentation -24915: ERR_NOADDD - configuration update not allowed (param file is inactive)

Explanation

The database configuration cannot be changed as changes were made to the parameter file, but these changes are not yet activated.

User Response

To activate the changes to the parameter file, change the database state to OFFLINE and then to ONLINE.To undo changes in the parameter file, use DBM command param_restore.


autolog_cancel - SAP Documentation

Background documentation autolog_cancel

With this command you can cancel an automatic log backup while it is running. Use this command to prevent technical problems with the data carrier, for example.

If you execute this command, the automatic log backup function is switched off, too.

If you want the log area to be backed up automatically again later, then you have to explicitly re-activate the automatic log backup (see: autolog_on).

Prerequisites

You have the server permissionBackup.

Structure

autolog_cancel

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, cancel the automatic log backup for this database:

>dbmcli -u OLEG,MONDAY -d DEMODB autolog_cancel

OK

More Information

Database Administration, Backing Up Log Entries


I/O Operations Overview - SAP Documentation

Procedure documentation I/O Operations Overview

The I/O Operations user menu of the DBA Cockpit contains a display of disk activities.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] I/O Operations [image] Overview [image] .

You can refresh the display. To do so, choose [image] Edit [image] Refresh [image] .

You can automate this function by choosing [image] Edit [image] Automatic Refresh On/Off [image] . The display for the function for the automatic refresh is above the header line of the table (green symbol: on, red symbol: off). In the field next to this, you can specify the time interval with which the automatic refresh should take place. The default value is 5 seconds.

Result

The system displays an overview of the activities on the disks on which the volumes are stored.

You can use the number of read and write accesses to determine how many I/O operations take place in your database. You can analyze in detail the processes that cause the I/O operations on the volumes.

  • If wait queues (Queue) are displayed for accesses to a disk area, this indicates a bottleneck in accessing this disk area.

  • Choose [image] Goto [image] I/O Details [image] to display which thread accessed the individual volumes and to obtain information about the I/O wait queues for the individual volumes.

    You can use this display to find out whether there are bottlenecks in the I/O system. The columns Queue Length and Maximum Queue Length provide information about whether there are currently or were previously large queues of I/O requests.

More Information

Executing Performance Analysis in CCMS


-25349: Error exporting <type> data of table <table_name>. See Loader server log file for more information - SAP Documentation

Background documentation -25349: Error exporting <type> data of table <table_name>. See Loader server log file for more information

Explanation

You executed a command to export data in the format PAGES. The command was terminated because data of the specified type (possible types of primary data, LOB data) could not be exported. See the log file for additional messages describing the cause of the error.

User Response

Fix the cause of the error and re-execute the command.


-873: Unknown constant name - SAP Documentation

Background documentation -873: Unknown constant name

Explanation

The name of the constant is not known.

User Response

Correct or declare the name.


SAP Library - Java Manual

Start Level 1 Node: Java Manual Java Manual End Level 1 Node: Java Manual
Start Level 2 Node: Installing the SAP MaxDB JDBC Driver and Java Classes Installing the SAP MaxDB JDBC Driver and Java Classes End Level 2 Node: Installing the SAP MaxDB JDBC Driver and Java Classes
Start Level 2 Node: SAP MaxDB JDBC Driver SAP MaxDB JDBC Driver End Level 2 Node: SAP MaxDB JDBC Driver
Start Level 3 Node: Loading the JDBC Driver Loading the JDBC Driver End Level 3 Node: Loading the JDBC Driver
Start Level 3 Node: Connecting to a Database Connecting to a Database End Level 3 Node: Connecting to a Database
Start Level 4 Node: java.sql.DriverManager.getConnection Method java.sql.DriverManager.getConnection Method End Level 4 Node: java.sql.DriverManager.getConnection Method
Start Level 4 Node: com.sap.dbtech.jdbcext.DataSourceSapDB Class com.sap.dbtech.jdbcext.DataSourceSapDB Class End Level 4 Node: com.sap.dbtech.jdbcext.DataSourceSapDB Class
Start Level 4 Node: Connection URL Connection URL End Level 4 Node: Connection URL
Start Level 4 Node: Testing the Connection to the Database Testing the Connection to the Database End Level 4 Node: Testing the Connection to the Database
Start Level 4 Node: Setting Up an SSL Connection Setting Up an SSL Connection End Level 4 Node: Setting Up an SSL Connection
Start Level 4 Node: Examples: Connecting to a Database Examples: Connecting to a Database End Level 4 Node: Examples: Connecting to a Database
Start Level 3 Node: Executing SQL Statements Executing SQL Statements End Level 3 Node: Executing SQL Statements
Start Level 3 Node: Example: HelloMaxDB Example: HelloMaxDB End Level 3 Node: Example: HelloMaxDB
Start Level 3 Node: Error Handling (JDBC Driver) Error Handling (JDBC Driver) End Level 3 Node: Error Handling (JDBC Driver)
Start Level 2 Node: DBM Java Classes DBM Java Classes End Level 2 Node: DBM Java Classes
Start Level 3 Node: com.sap.dbtech.powertoys.DBM Class com.sap.dbtech.powertoys.DBM Class End Level 3 Node: com.sap.dbtech.powertoys.DBM Class
Start Level 4 Node: com.sap.dbtech.powertoys.DBM.dbrootDBM Method com.sap.dbtech.powertoys.DBM.dbrootDBM Method End Level 4 Node: com.sap.dbtech.powertoys.DBM.dbrootDBM Method
Start Level 4 Node: com.sap.dbtech.powertoys.DBM.dbDBM Method com.sap.dbtech.powertoys.DBM.dbDBM Method End Level 4 Node: com.sap.dbtech.powertoys.DBM.dbDBM Method
Start Level 4 Node: com.sap.dbtech.powertoys.DBM.cmd Method com.sap.dbtech.powertoys.DBM.cmd Method End Level 4 Node: com.sap.dbtech.powertoys.DBM.cmd Method
Start Level 4 Node: com.sap.dbtech.powertoys.DBM.cancel Method com.sap.dbtech.powertoys.DBM.cancel Method End Level 4 Node: com.sap.dbtech.powertoys.DBM.cancel Method
Start Level 4 Node: com.sap.dbtech.powertoys.DBM.release Method com.sap.dbtech.powertoys.DBM.release Method End Level 4 Node: com.sap.dbtech.powertoys.DBM.release Method
Start Level 3 Node: Error Handling (DBM Java Classes) Error Handling (DBM Java Classes) End Level 3 Node: Error Handling (DBM Java Classes)
Start Level 3 Node: Example: Displaying the Operational State of a Database Example: Displaying the Operational State of a Database End Level 3 Node: Example: Displaying the Operational State of a Database
Start Level 2 Node: Loader Java Classes Loader Java Classes End Level 2 Node: Loader Java Classes
Start Level 3 Node: com.sap.dbtech.powertoys.Loader Class com.sap.dbtech.powertoys.Loader Class End Level 3 Node: com.sap.dbtech.powertoys.Loader Class
Start Level 4 Node: com.sap.dbtech.powertoys.Loader.dbLoader Method com.sap.dbtech.powertoys.Loader.dbLoader Method End Level 4 Node: com.sap.dbtech.powertoys.Loader.dbLoader Method
Start Level 4 Node: com.sap.dbtech.powertoys.Loader.cmd Method com.sap.dbtech.powertoys.Loader.cmd Method End Level 4 Node: com.sap.dbtech.powertoys.Loader.cmd Method
Start Level 4 Node: com.sap.dbtech.powertoys.Loader.cancel Method com.sap.dbtech.powertoys.Loader.cancel Method End Level 4 Node: com.sap.dbtech.powertoys.Loader.cancel Method
Start Level 4 Node: com.sap.dbtech.powertoys.Loader.release Method com.sap.dbtech.powertoys.Loader.release Method End Level 4 Node: com.sap.dbtech.powertoys.Loader.release Method
Start Level 3 Node: Error Handling (Loader Java Classes) Error Handling (Loader Java Classes) End Level 3 Node: Error Handling (Loader Java Classes)
Start Level 3 Node: Example: Exporting a Table Example: Exporting a Table End Level 3 Node: Example: Exporting a Table
Start Level 2 Node: Troubleshooting for the SAP MaxDB JDBC Driver and Java Classes Troubleshooting for the SAP MaxDB JDBC Driver and Java Classes End Level 2 Node: Troubleshooting for the SAP MaxDB JDBC Driver and Java Classes
Start Level 3 Node: JDBC Trace JDBC Trace End Level 3 Node: JDBC Trace
Start Level 4 Node: Activating the JDBC Trace Activating the JDBC Trace End Level 4 Node: Activating the JDBC Trace
Start Level 4 Node: Deactivating the JDBC Trace Deactivating the JDBC Trace End Level 4 Node: Deactivating the JDBC Trace


-8034: Order column must be number - SAP Documentation

Background documentation -8034: Order column must be number

Explanation

In a QUERY statement with the outermost QUERY expression containing at least one UNION, INTERSECT or EXCEPT, the ORDER clause must not contain column specifications.

User Respone

Replace the column specifications with the corresponding numbers of the output columns or with the result column name (result_column_name) used in the first QUERY specification of the outer QUERY expression.


Authorization - SAP Documentation

Background documentation Authorization

For a complete syntax description of the SQL statements for authorization, see Authorization in the SQL reference manual. Find out about the user concept of the database system (Managing Users).

The database system administrator is generated when a database is created. The database system administrator can generate additional database users, including database administrators. All database administrators can create database users and grant privileges. This enables you to control data access for each individual user. Below are just a few examples of key SQL statements for authorization.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Example

Examples of Database Users

If the DEMODB database was created with the default values, the database system administrator has the name DBADMIN and password SECRET. The database user MONA was created with the following CREATE USER statement:

CREATE USER mona PASSWORD red DBA NOT EXCLUSIVE

  • The name of the database user (MONA) is specified after the keywords CREATE USER and the password (RED) after the keyword PASSWORD.

  • The user class DBA (Database Administrator) is defined for the database user MONA.

  • NOT EXCLUSIVE specifies that the database administrator MONA is permitted to open several database sessions at the same time.

In the DEMODB database, the HOTEL demo schema belongs to database administrator MONA. The HOTEL schema contains the tables CITY, CUSTOMER, HOTEL, ROOM, RESERVATION as well as other database objects created by database administrator MONA, if any: indexes, database procedures, View tables, etc.

Other Examples

Database Users and Their Privileges

Roles

Schemas


Adding Data Volumes - SAP Documentation

Procedure documentation Adding Data Volumes

The data of a database is permanently stored in the data volumes (data area). If the data area of a database is full, the database stops working. Therefore, you need to monitor the database fill level and add new data volumes as required.

Note Note

You can configure the database system to add data volumes automatically as required.

More information: Activating or Deactivating Automatic Extension of the Data Area.

End of the note.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for accessing database parameters or utility sessions.

    More information: Glossary, Server Permission

  • To create a new data volume, the database parameter value MaxDataVolumes must be at least as high as the sum of the number of existing data volumes and the number of data volumes that are to be defined.

    More information: Changing Database Parameters

    Note Note

    Every time the database is started, the system checks whether there is enough space available for at least one volume of each type. If not, it automatically increases the value of the appropriate database parameter by 1.

    End of the note.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Data Area tab page.

  4. Choose New.... .

  5. Enter the required data.

    Volumes: Properties

    Property

    Description

    Size

    Minimum size: 1000 pages or 8000 KB

    Device/File

    Device/path and file name

    Type

    Type of physical memory

    • FILE (F)

      A volume can be a part of a physical hard disk, a complete physical hard disk, or a storage system consisting of several storage units.

      Can be used on all operating systems

    • LINK (L)

      Can only be used on Unix and Linux

    • RAW (R)

      Raw device

      Can only be used on Unix and Linux
    Data Volume: Example

    Property

    Sample Data

    Name

    DISKD0001

    Size

    256 MB

    Device/File

    C:\ProgramData\sdb\globaldata\DEMODB\volumes\data\DISKD0001

    Type

    FILE

More Information

Database Administration, Planning the Database

Concepts of the Database System,

  • Volumes (Permanent Storage)

  • Data Area


-10601: SQL command is the empty string - SAP Documentation

Background documentation -10601: SQL command is the empty string

Explanation

The SQLDBC_Statement::execute or SQLDBC_PreparedStatement::prepare method that was called could not be executed, because no SQL statement was entered, or because 0 was specified as the length.

User Response

The following options are available:

  • Transfer the SQL statement as a character set in the sql parameter of the SQLDBC_Statement::execute r SQLDBC_PreparedStatement::prepare method.

  • Set the correct length in the sqlLength parameter.

  • If you are using UNICODE data, configure the correct character set (Encoding) for the SQL statement.


-955: Duplicate name - SAP Documentation

Background documentation -955: Duplicate name

Explanation

There is already a data object with the specified name.

User Response

Repeat the SQL statement with another name.


25940: Error at record <record_count> in input file for table <table_name> - SAP Documentation

Background documentation 25940: Error at record <record_count> in input file for table <table_name>

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data of a table. An error occurred in the data record <record_count>. See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


param_addvolume - SAP Documentation

Background documentation param_addvolume

Note Note

Use the DBM command param_addvolume only when creating a database, when changing the log mode of the database from SINGLE to DUAL, or in consultation with technical support.

Extend an existing database using the DBM command for adding volumes (see: db_addvolume).

End of the note.

Use this DBM command to change the volume parameters in the database parameter file. The new parameter value is registered by the system, and is adopted as the effective value when the database is next restarted.

Change the volume parameters in two steps:

  1. Change the entries for the parameters in the parameter file.

  2. Transfer the corresponding information to the database kernel with an administrative command (see: db_execute).

    Caution Caution

    If this command fails, remove the entries made in database parameter file.

    No check is made of whether there is sufficient disk capacity available to add the volume.

    If you create a mirror volume with this DBM command, also set the value of the general database parameter UseMirroredLog to YES (see: param_put).

    End of the caution.

Prerequisites

You have the server permission ParamFull.

Structure

param_addvolume <vol_no> <vol_mode> <vol_name> <vol_type> <size> [<partition_no>]

Options

Option

Description

<vol_no>

Number of the volume

<vol_mode>

Mode of the volume

Possible values are: DATA | LOG | MLOG

DATA: data volume, the number of the data volume is assigned by the system as a four-digit number with leading zeros when the volume is created

LOG: log volume, the number of the log volume is assigned by the system as a three-digit number with leading zeros when the volume is created

MLOG: mirror log volume

<vol_name>

Name of the device/file

If you are using Microsoft Windows, note that you must not compress volumes, which are files, nor can you store them in a compressed operating system directory.

<vol_type>

Type of device/file, which is to be added

Possible values are: F | L | R

F: file

L: link

R: raw device

<size>

Size of the volume in pages

<partition_no>

Number of the log partition

Result

OK

In the event of errors, see Reply Format.

More Information

Concepts of the Database System, Log Area, Volumes (Permanent Storage)


-840: Invalid numeric macro value - SAP Documentation

Background documentation -840: Invalid numeric macro value

Explanation

The macro number is invalid.

User Response

Specify a number between 1 and 128 for the macro.


-24911: ERR_INVDBNAME - database name <database_name> is reserved - SAP Documentation

Background documentation -24911: ERR_INVDBNAME - database name <database_name> is reserved

Explanation

You selected an invalid name for your database instance.

User Response

Use a different name for your database instance.


-7045: Parameter spec not allowed - SAP Documentation

Background documentation -7045: Parameter spec not allowed

Explanation

A parameter was specified, although this database component or this kind of application programming only allows the use of constants.

User Response

Replace the parameter with a constant.


Checking Backups - SAP Documentation

Procedure documentation Checking Backups

You are checking whether the system can access the backup and read the data.

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Check Backup...

  3. Select which backup you want to check:

    • Check last backup

    • Check specified backup from history

      Choose a backup from the backup history.

    • Check a medium

      Choose a data carrier from the list of available data carriers.

  4. Start the check.

Result

If the check discovers an error, an error message is displayed. The most common error messages are listed in the following table.

Messages
Error Message Number | Error message text | Explanation
-24927 | ERR_TOOLCHK: the external backup tool was not found | The backup tool could not be found or has been installed incorrectly.
-24926 | ERR_MEDIUMCHK: the medium cannot be used with this external backup tool | The backup template specified cannot be used with this backup tool.
-24925 | ERR_PREPARE: prepare of the backup operation failed | The preparations required to use the backup tool could not be completed correctly.
-24924 | ERR_DBREQ: cannot start database kernel request | The database was unable to start the backup.
-24923 | ERR_TOOLREQ: cannot start external backup tool correctly | The backup tool could not be started correctly.
-24922 | ERR_OPCHK: cannot check state of backup operation | Unable to check the status of the database or the backup tool.
-24921 | ERR_POSTOP: cannot finish backup operation correctly | Although the backup was successful, the required post-processing steps could not be performed.
-24920 | ERR_BACKUPOP: backup operation was unsuccessful | The backup failed due to a problem with the database or with the backup tool.
-24919 | ERR_CLEANUP: cannot clean up correctly after backup operation | Although the backup was successful, the system resources used during the check could not be released.

More Information

Messages (Explanation of error messages, sorted by message number)


-708: SERVERDB system not available - SAP Documentation

Background documentation -708: SERVERDB system not available

Explanation

The database exists, but it is in the startup or shutdown phase, with the result that a connection cannot be established at the moment.

User Response

Repeat the connection (CONNECT statement) at a later time.


-10304: Parameter/Column (<number>) not found - SAP Documentation

Background documentation -10304: Parameter/Column (<number>) not found

Explanation

The method that was called could not be executed, because no program variable was bound for the parameter or column with the specified number <number>

User Response

Use the SQLDBC_PreparedStatement::bindParameter or SQLDBC_ResultSet::bindColumn method to bind a program variable.


-24942: ERR_USRDELSDBA - cannot delete sysdba - SAP Documentation

Background documentation -24942: ERR_USRDELSDBA - cannot delete sysdba

Explantion

The specified database system administrator (SYSDBA user) has special properties and cannot be deleted.

User Response

You are not allowed to delete this user.If unauthorized persons know the user name and password, change the password of the database system administrator. For example, use the DBM command user_put.


com.sap.dbtech.powertoys.Loader Class - SAP Documentation

Background documentation com.sap.dbtech.powertoys.Loader Class

This Loader Java class is used for establishing and closing the connection to databases, for executing Loader commands for import and export and for executing SQL statements

Methods of the com.sap.dbtech.powertoys.Loader Classes
Method | Task
dbLoader | Connecting Java applications to the Loader
cmd | Executing Loader command or SQL statement
cancel | Canceling Loader command or SQL statement
finalize | This method overwrites the finalize() method of the class java.lang.Object.
release | Ending the connection to the Loader


Managing Users: Overview - SAP Documentation

Background documentation Managing Users: Overview

  • Creating Database Users

  • Changing the Properties of Database Users

  • Deleting Database Users

  • DBM Operators: Creating/Editing/Deleting

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Managing Users


-917: Save/restore write process crash - I/O error - SAP Documentation

Background documentation -917: Save/restore write process crash - I/O error

Explanation

  1. An I/O error occurred while attempting to write to a backup device for a save statement.

  2. An I/O error occurred while attempting to write to a volume for a restore statement.

The restore or save statement was cancelled.

User Response

The error message contains an additional error description which must be interpreted according to the operating system being used.To find out and remove the error cause, consult the documentation on the operating system.


-8053: Software version is too old for version of persistent data - SAP Documentation

Background documentation -8053: Software version is too old for version of persistent data

Explanation

During a restart, the system ascertained that the database software version with which the data was generated does not correspond to the database software version of the current database. The cause of this could be, for example, that you executed a restore with a data backup from a database instance with a newer version of the database software. The restart terminates.

User Response

Ensure that the database software version of your database corresponds to the version of the database software with which the data was created.


-715: Missing username or password for connect - SAP Documentation

Background documentation -715: Missing username or password for connect

Explanation

A user name or password specification is missing in a CONNECT statement, or there is no XUSER file for an implicit CONNECT.

User Response

Enter the user name and password for the CONNECT statement via Options, or open an XUSER file.


Setting up the SAP MaxDB ODBC Driver - SAP Documentation

Procedure documentation Setting up the SAP MaxDB ODBC Driver

You have the following options:

  • Registering the SAP MaxDB ODBC driver in a driver manager.

    You can use the following driver managers:

    • Microsoft Windows: Microsoft ODBC Driver Manager 3.52 or higher

    • Unix and Linux: unixODBC 2.0.9 or higher, iODBC 3.0.5 or higher

  • Linking the SAP MaxDB ODBC driver directly with the application (only on Unix and Linux)

Procedure

Registering the ODBC Driver in a Driver Manager

You can find information about registering an ODBC driver in the driver manager in the documentation provided by the manufacturer of the driver manager.

Linking the ODBC Driver with the Application (only on Unix and Linux)

You can link the SAP MaxDB ODBC driver with the application, either statically (libsdbodbc.a library) or dynamically (libsdbodbc.so library).

In the case of dynamic linkubg, ensure that the system finds the dynamic library libsdbodbc.so when you execute the application by adding the path for libsdbodbc.so to the LD_LIBRARY_PATH environment variable.

Example Example

You compile the application myapp.c with the appropriate ODBC header files:

cc –c myapp.c –I<ODBC_include>

You statically link the ODBC driver with the application:

cc –o myapp myapp.o <ODBC_lib>/libsdbodbc.a

You dynamically link the ODBC driver with the application:

cc –o myapp myapp.o –L<ODBC_lib> -lsdbodbc

End of the example.


-2029: <sequence_name>.CURRVAL is not yet defined in this session - SAP Documentation

Background documentation -2029: <sequence_name>.CURRVAL is not yet defined in this session

Explanation

You attempted to execute <sequence_name>.CURRVAL (Specifying Values (extended_value_spec)) before using <sequence_name>.NEXTVAL in the curret database session.

User Response

Execute <sequence_name>.NEXTVAL first, and then <sequence_name>.CURRVAL.


Logs - SAP Documentation

Procedure documentation Logs

The Configuration user menu of the DBA Cockpit contains, among other things, a display of logs.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] Logs [image] .

Caution Caution

For SAP NetWeaver 7.1, the submenus for the Logs menu are partly different.

End of the caution.

Result

The system shows you the following logs:

  • DBA History

  • System Tables Upgrade

  • SAP liveCache Technology: Kernel Administration (not for SAP NetWeaver 7.1)

  • SAP liveCache Technology: Operating


-24923: ERR_TOOLREQ: error while starting external backup tool - SAP Documentation

Background documentation -24923: ERR_TOOLREQ: error while starting external backup tool

Explanation

The backup tool could not be started correctly.

User Response

Attempt to fix the problem with the help of the extended error description. If you cannot solve the problem, contact Support.


SEQUENCES - SAP Documentation

Example documentation SEQUENCES

Use of the system table DOMAIN.SEQUENCES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define and use sequences. Proceed as described in SQL Tutorial, Number Generators for Tables

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table SEQUENCES to determine the following database information, among other things:

  • All sequences whose incremental value is not +1 and the threshold values of the sequences

    SELECT owner, sequence_name, increment_by, min_value, max_value

    FROM DOMAIN.SEQUENCES

    WHERE increment_by <> 1

  • All sequences with a positive incremental value. The values are not assigned cyclically, and there are, at most, only 1000 free values remaining.

    SELECT owner, sequence_name, last_number, max_value

    FROM DOMAIN.SEQUENCES

    WHERE increment_by > 0

    AND cycle_flag = 'N'

    AND max_value - last_number <= 1000

  • Current value of the sequence SEQU

    SELECT last_number

    FROM DOMAIN.SEQUENCES

    WHERE schemaname = 'HOTEL'

    AND sequence_name = 'SEQU'

  • The last value of the sequence SEQU in the current database session

    SELECT hotel.sequ.currval

    FROM DUAL


-23200: No data sources - SAP Documentation

Background documentation -23200: No data sources

Explanation

No ODBC data sources have been installed on the operating system with the database’s ODBC driver.

User Response

Install a data source with the ODBC administrator.


-10502: Invalid position in result set: after last row - SAP Documentation

Background documentation -10502: Invalid position in result set: after last row

Explanation

The method that was called could not be executed, because the current cursor position of the result set is after the last row of the result set.

User Response

Position the cursor within the result set using one of the following SQLDBC_ResultSet methods (first, last, next, relative, absolute) or the SQLDBC_RowSet::setPos method.


-10807: Connection down: [<description>] - SAP Documentation

Background documentation -10807: Connection down: [<description>]

Explanation

The connection to the database instance was terminated. This error can occur if, for example, the database instance was shut down, or if there are network problems.<description> provides the internal error number and further information about the error.

User Response

  • Check the connection data.

  • Check whether the database instance is ONLINE. If it is online, log on to the database instance again using the SQLDBC_Connection::connect method.


-25504: Error writing file <file_name> : <error_text> - SAP Documentation

Background documentation -25504: Error writing file <file_name> : <error_text>

Explanation

An operating system-dependent text appears in the operating system error message, indicating the error that occurred.

User Response

Fix the cause of the error and restart the Loader to process the terminated command.


-25505: Error erasing file <file_name> : <error_text> - SAP Documentation

Background documentation -25505: Error erasing file <file_name> : <error_text>

Explanation

An operating system-dependent text appears in the operating system error message, indicating the error that occurred.

User Response

No user action is required.


db_execute - SAP Documentation

Background documentation db_execute

Use this command to send an administration command or SQL statement to the database. However, for SQL statements in particular this command is intended to be used via a programming interface.

Unlike when using the DBM command db_executenice, you want the reply to transfer as many data records as possible. The quantity of data transferred is limited by the size of the reply package transferred by the DBM server.

With SELECT statements, the system displays the data records of the reply. If not all the data can be transferred because of the limited size of the reply package, you can use the db_fetch command to transfer another reply package containing data records. However, this is only possible if you are still in the same database session.

If you specify other SQL statements, the execution of the statement is confirmed by the system with an OK message.

When you execute db_execute, the system implicitly opens a session with the database and then ends the session once the command has been executed. This database session is opened in AUTOCOMMIT mode, in other words, each SQL statement you enter is automatically completed with a COMMIT statement.

Recommendation Recommendation

If a series of SQL statements is to be executed and the statements can only be executed by a particular database user, first start an SQL session with the data of this database user (see: db_connect), execute all SQL statements, and then close either the database session (see: db_release) or Database Manager CLI.

End of the recommendation.

For more information about SQL statements, see the SQL Reference Manual and SQL Tutorial.

Prerequisites

  • If you want to execute administration commands, you need the AccessUtility server permission.

  • If you want to execute SQL statements, you need the AccessSQL server permission.

Structure

db_execute [<user_type>] <statement>

Options
Option | Description
<user_type> | User type, possible values are: DBM: the first DBM operator DBA: the database system administrator SAP: a special database user in connection with SAP applications
<statement> | Administration command or SQL statement

Result

OK

[END|CONTINUE]

[<record>

<record>

...]

Values for the Reply Fields
Value | Description
END | The complete reply was output.
CONTINUE | More data records are available but were not transferred due to the limited size of the reply package.
<record> | Result data of the SQL statements The fields in a data record are separated by semicolons. Character strings are output in single quotation marks.

In the event of errors, see Reply Format.

Example

Using db_execute in Command Mode

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB.

Display the column names and comments of the table USERS in the system table COLUMNS in the schema DOMAIN:

>dbmcli -u OLEG,MONDAY -d DEMODB db_execute SELECT columnname, comment FROM domain.columns WHERE tablename = 'USERS'

OK

END

'OWNER';(LOB)

'GROUPNAME';(LOB)

'USERNAME';(LOB)

'USERMODE';(LOB)

'CONNECTMODE';(LOB)

'MAXTIMEOUT';(LOB)

'COSTWARNING';(LOB)

'COSTLIMIT';(LOB)

'DEFAULTCODE';(LOB)

'CREATEDATE';(LOB)

'CREATETIME';(LOB)

'ALTERDATE';(LOB)

'ALTERTIME';(LOB)

'PWCREADATE';(LOB)

'PWCREATIME';(LOB)

'SERVERDB';(LOB)

'SERVERNODE';(LOB)

'USER_ID';(LOB)

'ISREPLICATIONUSER';(LOB)

'COMMENT';(LOB)

Using db_execute in Session Mode

  1. Log on to Database Manager CLI in session mode as the operator OLEG with the password MONDAY, connect to the database DEMODB:

    >dbmcli –u OLEG,MONDAY –d DEMODB

    dbmcli on DEMODB>

  2. Open a database session:

    dbmcli on DEMODB>db_connect

    OK

  3. Display the contents of the system table columns of the schema domain:

    dbmcli on DEMODB>db_execute SELECT * FROM domain.columns

    OK

    CONTINUE

    'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'ALLOCATOR';'OPT';'CHAR';'ASCII';40;(nu

    ll);'YES';'SEL+';(null);(null);(null);(null);1;(null);2;'20060406';'00145007';'2

    0060406';'00145007';'SYSTEM';(null)

    'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'USED_BYTES';'OPT';'FIXED';'';20;0;'YES

    ';'SEL+';(null);(null);(null);(null);2;(null);3;'20060406';'00145007';'20060406'

    ;'00145007';'SYSTEM';(null)

    'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'MAXUSED_BYTES';'OPT';'FIXED';'';20;0;'

    YES';'SEL+';(null);(null);(null);(null);3;(null);4;'20060406';'00145007';'200604

    06';'00145007';'SYSTEM';(null)

    'DBADMIN';'DBADMIN';'ALLOCATORSTATISTIC';'ALLOCATED_BYTES';'OPT';'FIXED';'';20;0

    ;'YES';'SEL+';(null);(null);(null);(null);4;(null);5;'20060406';'00145007';'2006

    0406';'00145007';'SYSTEM';(null)

    ...

    ...

  4. Transfer the next reply package:

    dbmcli on DEMODB>db_fetch

    OK

    CONTINUE

    'DBADMIN';'DBADMIN';'LOCKSTATISTICS';'REQTIMEOUT';'OPT';'CHAR';'UNICODE';10;(nul

    l);'YES';'SEL+';(null);(null);(null);(null);10;(null);11;'20060406';'00145007';'

    20060406';'00145007';'SYSTEM';(null)

    'DBADMIN';'DBADMIN';'LOCKSTATISTICS';'LASTWRITE';'OPT';'CHAR';'UNICODE';10;(null

    );'YES';'SEL+';(null);(null);(null);(null);11;(null);12;'20060406';'00145007';'2

    0060406';'00145007';'SYSTEM';(null)

    ...

    ...

  5. Transfer the next reply package:

    dbmcli on DEMODB>db_fetch

    OK

    CONTINUE

    ...

    ...

    ...

  6. Transfer the next reply package:

    dbmcli on DEMODB>db_fetch

    OK

    END

    ...

    ...

    'HOTEL';'MONA';'ROOM';'FREE';'OPT';'FIXED';'';3;0;'YES';'SEL+UPD+';(null);(null)

    ;(null);(null);3;(null);3;'20060406';'00145012';'20060406';'00145012';'TABLE';(n

    ull)

    'HOTEL';'MONA';'ROOM';'PRICE';'OPT';'FIXED';'';6;2;'YES';'SEL+UPD+';(null);(null

    );(null);(null);4;(null);4;'20060406';'00145012';'20060406';'00145012';'TABLE';(null)

  7. End the database session

    dbmcli on DEMODB>db_release

    OK

    dbmcli on DEMODB>

More Information

Concepts of the Database System, SQL


USERS - SAP Documentation

Example documentation USERS

Use of the system table DOMAIN.USERS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define other database users. Proceed as described in SQL Tutorial, Database Users and Their Privileges.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table USERS to determine the following database information, among other things:

  • All defined database users of the database user class STANDARD

    SELECT owner, username

    FROM DOMAIN.USERS

    WHERE usermode = 'STANDARD'

  • All database users who have not changed their passwords for more than 6 months

    SELECT username, pwcreadate, pwcreatime

    FROM DOMAIN.USERS

    WHERE pwcreadate <= subdate(date,183)

  • All database users who are allowed to log on to the database multiple times

    SELECT username, usermode

    FROM DOMAIN.USERS

    WHERE connectmode = 'MULTIPLE'

  • Name of the database on which the current database session was opened. Name of the computer on which this database is running.

    SELECT DISTINCT serverdb, servernode

    FROM DOMAIN.USERS

More Information

Currently active database user: see SESSIONS


-4002: Unknown password - SAP Documentation

Background documentation -4002: Unknown password

Explanation

The specified password is unknown.

User Response

Repeat the ALTER PASSWORD statement using the correct password.


-25217: End position for column <column_name> lower than start position - SAP Documentation

Background documentation -25217: End position for column <column_name> lower than start position

Explanation

You have executed a command to export, import, or update data of a single table in the format FWV. The command was terminated because an end position, which was smaller than the starting position for this column, was entered for the specified column.

User Response

Correct the command and then re-execute it.


-25236: Some positions overlap - SAP Documentation

Background documentation -25236: Some positions overlap

Explanation

Error executing the Loader command for exporting data.The FWV format for the data stream is specified in the command. You must specify all the values to be exported using non-overlapping column position specifications in the command. Otherwise, any values that have already been exported will be overwritten.

User Response

Correct the position specification and re-execute the command.


-4033: Unknown remote column - SAP Documentation

Background documentation -4033: Unknown remote column

Explanation

The CREATE TABLE statement includes a remote column name which does not exist within the specified remote table.

User Response

Correct the misspelling of the remote column name or check which columns belong to the specified remote table.


Logging Users Off from a Database - SAP Documentation

Procedure documentation Logging Users Off from a Database

Note Note

You need this function for troubleshooting only. Normally the system automatically performs the actions described below when you close Database Studio.

End of the note.

The system performs the following actions:

  • It logs off all users which are connected from Database Studio to the database.

  • It closes all views and editors opened by these users.

  • It ends all internal database sessions that Database Studio has implicitly opened for the selected database.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Logout.

    Note Note

    To only log off a certain user, choose Logout in that user's context menu.

    End of the note.

More Information

Logging On to a Database


-7007: Key column not allowed - SAP Documentation

Background documentation -7007: Key column not allowed

Explanation

A key column specification is not allowed here.

User Response

Remove the key column specification from the SQL statement.


450: Lock collision caused by pending locks - SAP Documentation

Background documentation 450: Lock collision caused by pending locks

Explanation

The lock request made by the SQL statement conflicts with locks, which cannot be resolved at present because they belong to a pending transaction. The pending transaction cannot be concluded because there is no connection to the releasing database instance.

User Response

The SQL statement should not be executed again until the pending transaction has been resolved; i.e. until it has been possible to reconnect to the particular database instance.


-23102: Failed to create DBC Pool - SAP Documentation

Background documentation -23102: Failed to create DBC Pool

Explanation

Could not create a database connection pool.

User Response

Contact Support.


-23202: Could not load object description - SAP Documentation

Background documentation -23202: Could not load object description

Explanation

The SQL Studio objects could not be loaded.

User Response

Load the system tables with Database Manager.If you receive the same error message again, contact Support.


25605: No header in binary data file and no record length in command (using computed value of <number> bytes for record length) - SAP Documentation

Background documentation 25605: No header in binary data file and no record length in command (using computed value of <number> bytes for record length)

Explanation

Warning for the Loader command for importing or updating data from binary data streams. Once the Loader has exported the data, the binary data stream contains a header with the length of an individual data record in the data stream. The system was unable to find this header. The length of an individual data record was not specified in the command either. For this reason, the Loader calculates the record length based on the column lengths defined in the command. This warning does not cause the command to terminate.

User Response

No user action is required.


-2001: Key too long - SAP Documentation

Background documentation -2001: Key too long

Explanation

  1. The sum of the key column lengths must not exceed 1024 bytes when using a CREATE TABLE or ALTER TABLE statement.

  2. When defining a named index, the sum of the column lengths for the index must not exceed 1024 bytes.

User Response

  1. Correct the definition of the lengths accordingly, or try to use fewer key columns.

  2. Try to create the named index with fewer columns.


Creating Database Triggers - SAP Documentation

Procedure documentation Creating Database Triggers

A database trigger is a special database procedure (sequence of statements) that the system executes after an SQL statement changes data in a table (or a view table based on this table).

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the table for which you want to create the database trigger.

  • You are authorized to perform the actions defined within the trigger.

  • The database is in the ONLINE operational state.

Procedure

  1. Open the SQL editor.

    More information: Entering and Executing SQL Statements

  2. To create the database trigger, create the CREATE TRIGGER statement.

    More information: SQL Reference Manual, CREATE TRIGGER Statement (create_system_trigger_statement)

Result

The database trigger is displayed in the Explorer (as read-only) in the Triggers directory.

Example

If you change a hotel number in the hotel table, the following database trigger ensures that the system also changes the hotel number in the room table.

CREATE TRIGGER hotel_update FOR hotel.hotel AFTER UPDATE EXECUTE

(TRY

IF NEW.hno <> OLD.hno

THEN UPDATE hotel.room SET hno = :NEW.hno WHERE hno = :OLD.hno;

CATCH

IF $rc <> 100

THEN STOP ($rc, 'unexpected error');)

More Information

SQL Tutorial, Database Triggers


-8007: Column must be key column - SAP Documentation

Background documentation -8007: Column must be key column

Explanation

The specification of a non-key column is not allowed here.

User Response

Use a QUERY statement issued on the system table DOMAIN.COLUMNS to find out the columns which belong to the table key. Only these columns can be specified at this position within the SQL statement.


-10102: Invalid value for PACKETCOUNT (<description>) - SAP Documentation

Background documentation -10102: Invalid value for PACKETCOUNT (<description>)

Explanation

You entered a value that is not allowed for the PACKETCOUNT option of property SQLDBC_ConnectProperties for method SQLDBC_Connection::connect.<description> provides more information about the error.

User Response

Check the value that yu entered for the PACKETCOUNT option.


-10325: Stream parameter (<number>) is not an input|output parameter - SAP Documentation

Background documentation -10325: Stream parameter (<number>) is not an input|output parameter

Explanation

The database procedure is referencing a liveCache stream as input but the application is treating the stream as output, or vice versa.

User Response

Check the database procedure and/or the application.


Class Containers - SAP Documentation

Procedure documentation Class Containers

The SAP liveCache data is organized into classes. Each class can consist of different containers. The OMS objects in a class can be distributed across multiple containers. Each container can consist of multiple page chains. Each OMS object has a unique object ID (OID) which an application, for example, can use to request the object.

From the Performance user menu of the DBA Cockpit you can, among other things, choose to display information about class containers since the last start of liveCache Monitoring.

You will find more detailed information on the OMS objects in the OMS Object Browser.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] Class Container [image] .

You can select the displays as follows:

  • Selection of class containers (restriction by entering class name, schema name and/or container number. You do not need to enter the complete name or number. You can enter ranges, such as S* or similar)

  • All class containers (do not specify restriction)

Result

The system displays information about class containers. Every class container contains OMS objects for exactly one persistent class. The system displays information from the OMS intermediate layer and the liveCache basis layer.

OMS Intermediate Layer

The OMS (Object Management System) intermediate layer manages the data (that is, the OMS objects) that are held in the application-specific OMS heap. The application always accesses its OMS data through the OMS intermediate layer and not directly with the SAP liveCache basis layer. If the data is not in the OMS intermediate layer, it is implicitly loaded from the data cache into the OMS intermediate layer. The system displays, among other things, the following analysis data which provides information about the OMS intermediate layer:

Class ID, Schema, Class Name, Container Number

SAP liveCache Basis Layer

The OMS objects are managed in the SAP liveCache basis layer. The data itself is located in the data cache and in the data area. The application cannot access this data directly; the application can only access the data if it is in the OMS intermediate layer. The system displays, among other things, the following analysis data which provides information about the SAP liveCache basis layer:

Object Size, Container Size, Free Container Pages, Empty Container Pages, Key Pages, Container Usage, Number of Objects, Wastage, Key Inversions, File ID

You will find more detailed information on the OMS objects in the OMS Object Browser.

Calculation Formulas

  • Number of objects: <Container Size>*8100*(<Ø Container Usage>/100)/(<Object Size>+24)

  • Net size of the liveCache (in KB): SELECT SUM (<Container Size>*<Ø Container Usage>/100)*8

More Information

Class Container Sizes


-103: SQL statement not available for this application - SAP Documentation

Background documentation -103: SQL statement not available for this application

Explanation

You have attempted to use an application to execute an SQL statement. This application has no privileges for this statement.

User Response

Use the correct application, or check the syntax of the statement.


-25226: A maximum of 1024 columns can be specified for one table - SAP Documentation

Background documentation -25226: A maximum of 1024 columns can be specified for one table

Explanation

The command to export or import data contains an error.In a command to export or import data, you cannot specify more columns than the database allows per table. This value of 1024 columns was exceeded in the command to be executed.

User Response

Correct the entry and re-execute the command.


-24968: ERR_XPREADONLY - parameter is read only - SAP Documentation

Background documentation -24968: ERR_XPREADONLY - parameter is read only

Explanation

The database parameter used cannot be modified.

User Response

Correct your entry.If the error occurs in the Database Manager GUI and there is no way in which you can correct it, please contact Support.


INSTANCE - SAP Documentation

Example documentation INSTANCE

Use of the system table SYSINFO.INSTANCE

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table INSTANCE to determine the following database information, among other things:

  • Name with which the database instance can be addressed by applications

    SELECT node

    FROM SYSINFO.INSTANCE

  • Time at which the ONLINE operational state was reached

    SELECT onlinestatedate

    FROM SYSINFO.INSTANCE


Performance Warehouse: Reporting (SAP Library - SAP MaxDB Library)

 Start of Content Area

Background documentation Performance Warehouse: Reporting Locate the document in its SAP Library structure

You use the data provided on the Reporting screen to analyze database performance problems in the present or the past. To access the Reporting screen of the Performance Warehouse, call the DBA Cockpit and choose Performance ® Performance Warehouse ® Reporting.

If you are using the SAP GUI-based user interface, a separate Web browser opens for this application.

Specifying the Time Frame

To display detailed reports, you first have to specify the time frame for which you want to analyze data by defining the following:

● Granularity

You can choose between Hour, Day or Month. Depending on your selection, the values for your time frame might change.

● Time Frame

If you choose Custom Selection from the drop-down list, you can manually enter the starting and ending time for your analysis. To activate your custom selection, choose Apply Filter. For any other selection from the drop-down list, the reports are automatically refreshed.

The reports are categorized and for each category there is one tab page. On every tab page, you find a button row for the reports. Every pushbutton in the button row represents a specific view on the database performance, for example, I/O, Prefetcher, Sort Heap, etc.

Displaying a Report

To display a report, choose the appropriate view pushbutton on the respective tab page.

The availability of the tab pages and of the pushbuttons on each tab page can vary depending on the selected system. Some reports are only available if special database features are enabled.

The reports consist of two sections:

● In the upper section, a chart is displayed to visualize the key performance indicators. The chart provides a subset of the key columns from the detail table view.

The chart display is optional and not available for all available views.

● In the lower section, a detailed table view is available.

You can drill down your reports by either using the context menu of a column header in the Detail: <Category – View> screen area or by specifying the respective value using the pushbuttons in the Detail: Navigation screen area. Here, you can also add and remove columns or key figures, or you can set filters on columns.

In addition, there are predefined exceptions (for example, Chart: Exceptions or Details: Exceptions) for almost all reports on key performance indicators. The used thresholds are based on Early Watch Alerts and each violation to these thresholds is displayed in red.

If you want to reset a report to its initial state, choose Reset Report in the central system area.

End of Content Area


-2000: Row too long - SAP Documentation

Background documentation -2000: Row too long

Explanation

When (re-)defining a table, the length of a table row exceeds 8088 bytes.

User Response

  1. One or more columns must be removed from a CREATE TABLE statement or their lengths must be reduced.

  2. One or more columns must be removed from an ALTER TABLE statement or their lengths must be reduced. Use a QUERY statement applied to the system table DOMAIN.COLUMNS to find out the current definition of the table.


-733: Variable is declared as a pointer - SAP Documentation

Background documentation -733: Variable is declared as a pointer

Explanation

The SQL variable was defined as a pointer in the declaration section.

User Response

As no fixed size is specified for a pointer, the name of the variable and COLLENGTH are indicated in the next error line. COLLENGTH is the maximum size of the SQL pointer variables. This size is needed for data conversion.


-10412: Illegal TIME value for parameter/column (<number>) - SAP Documentation

Background documentation -10412: Illegal TIME value for parameter/column (<number>)

Explanation

The value for parameter/column <number> could not be read or inserted, because the time value is invalid.

User Response

Enter a valid time value.

More Information

Reference Manual, datetimeformat


SAP Library - SQLDBC Manual

Start Level 1 Node: SQLDBC Manual SQLDBC Manual End Level 1 Node: SQLDBC Manual
Start Level 2 Node: Installing SQLDBC Installing SQLDBC End Level 2 Node: Installing SQLDBC
Start Level 2 Node: SQLDBC Classes SQLDBC Classes End Level 2 Node: SQLDBC Classes
Start Level 2 Node: Using the SQLDBC Trace Using the SQLDBC Trace End Level 2 Node: Using the SQLDBC Trace


-1110: View definition too long - SAP Documentation

Background documentation -1110: View definition too long

Explanation

The definition of a view table is longer than the space available for it. This error can also occur with a RENAME COLUMN statement if the view table that is present internally exceeds the maximum length because the name was extended.

User Response

Shorten the view table, for example, by using short reference names instead of long table names in the SELECT statement or search condition.


-126: Data backup missing (backup history lost) - SAP Documentation

Background documentation -126: Data backup missing (backup history lost)

Explanation

You tried to save the log area by starting a log backup (interactive log backup, or activating the automatic log backup). This is not allowed in the current operating state because there is no preceding data backup that can be used for restoring the saved log area later on.

User Response

Create a complete data backup to begin the backup history. Then, repeat the required log backup.


-25220: Wrong separator/delimiter specification - SAP Documentation

Background documentation -25220: Wrong separator/delimiter specification

Explanation

The command to export or import data contains an error.Separators and delimiters must not contain more than one character.

User Response

Correct the format and re-execute the command.


Performance: Performance Warehouse (SAP Library - SAP MaxDB Library)

 Start of Content Area

Function documentation Performance: Performance Warehouse Locate the document in its SAP Library structure

Use

You can analyze performance data of your database system using the Performance Warehouse. To access the Performance Warehouse, call the DBA Cockpit and choose Performance ® Performance Warehouse.

The following content areas are available in the Performance Warehouse:

· Reporting

By default, the Reporting content area is displayed.

· Configuration

If you are using the SAP GUI-based user interface, the application starts in a separate Web browser.

Integration

The Performance Warehouse is part of the DBA Cockpit.

Prerequisites

An SAP Solution Manager system with Solution Manager Diagnostics (SMD) enabled is required.

Features

In the Performance Warehouse, all relevant performance indicators that are collected by the DBA Cockpit are stored in an SAPBusiness Intelligence (BI) system. This SAP BI system is used by the Solution Manager Diagnostics (SMD) back-end of an SAP Solution Manager system. SMD already uses this SAP BI to store workload data of SAP applications. To configure the extraction of data into the SMD BI, you use the SMD Setup Wizard.

Based on this architecture, the DBA Cockpit uses SAP BI technology to provide reports for performance analysis, which you can customize according to your needs. All collected data has a time dimension, so you can analyze the database performance for any point in time or over a specified time frame.

Almost all reports are displayed as a chart to visualize the key performance indicators (KPIs). In addition, there is also a detailed table view. To navigate within these reports, you can use the SAP BI drilldown feature. Violations to performance thresholds are highlighted based on predefined SAP BI exceptions to make you immediately aware of performance issues.

By default, the Performance Warehouse is delivered with predefined content that you can use to create your own reports according to your needs.

More Information

Performance Warehouse: Reporting

Performance Warehouse: Configuration

End of Content Area


-3018: Invalid numeric parameter - SAP Documentation

Background documentation -3018: Invalid numeric parameter

Explanation

The specified value is not a valid number.

User Response

Check the numeric value entered as parameter.


load_lcapps - SAP Documentation

Background documentation load_lcapps

With this command you can load the application libraries in a liveCache database.

Note Note

Normally, this DBM command is executed by the SAP application on a regular basis. Only use this command if you are instructed to do so by technical support.

End of the note.

Prerequisites

You have the server permission ExecLoad or LoadSysTab.

Structure

load_lcapps

Result

OK

<return_code>,<description>

<loader_code>,<command>

<loader_output_lines>

<loader_log_lines>

Values for the Reply Fields
Value | Description
<return_code> | Return code of Database Manager If the value is 0, the DBM command has been executed successfully. For any other value, see Messages.
<description> | Message short text
<loader_code> | Return code from Loader
<command> | Executed command line
<loader_output_lines> | Loader output text
<loader_log_lines> | Content summary of Loader log

More Information

Glossary, liveCache (SAP liveCache Technology)


-890: Input line longer than right margin - SAP Documentation

Background documentation -890: Input line longer than right margin

Explanation

A line of the source file is longer than the right margin.

User Response

If allowed, adjust the right margin using the option MARGINS. Otherwise shorten the line.


-23070: Cannot open object created by newer SQL Studio Version - SAP Documentation

Background documentation -23070: Cannot open object created by newer SQL Studio Version

Explanation

You attempted to open an SQL Studio object that was created with a newer version of the software.

User Response

You can only modify this object using a newer version of the software. Install the most up-to-date version of the SQL Studio.


-903: Hostfile I/O error - SAP Documentation

Background documentation -903: Hostfile I/O error

Explanation

An error occurred while operating a command file or host file or a backup device.

User Response

The error message contains an additional error description which must be interpreted according to the operating system being used.To find out and remove the error cause, consult the documentation on the operating system.Check whether a typing error or the specification of a directory instead of a file could have caused the error.


-1012: Too many referential constraint definitions for this table - SAP Documentation

Background documentation -1012: Too many referential constraint definitions for this table

Explanation:

An attempt was made to generate a referential CONSTRAINT definition, due to which the total lengths of all referring or all referred columns exceeds the maximum row length.

User Response:

This SQL statement can only be called once. An existing CONSTRAINT definition has been deleted. Otherwise, do without the new CONSTRAINT definition.


Data Storage - SAP Documentation

Background documentation Data Storage

When a database user changes data in the database, the database system first keeps the changed data in the working memory then writes the data to the volumes (permanent storage) later.

More Information

Concepts of the Database System, How Databases Store Data and Log Entries


-710: Missing select PARSID - SAP Documentation

Background documentation -710: Missing select PARSID

Explanation

The parsing information of a FETCH/CLOSE statement cannot be assigned to any result set.

User Response

Contact Support.


Creating Tables - SAP Documentation

Procedure documentation Creating Tables

You use the table editor to create a table.

Note Note

To create tables, you can also use SQL statements instead of the table editor.

More information:

  • Working with SQL Statements: Overview

  • SQL Reference Manual, CREATE TABLE Statement (create_table_statement)

End of the note.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the CREATEIN privilege for the schema in which you want to create the table.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, expand the folders of the database user who is to be the owner of the table.

  2. Select the schema under which you want to create the table.

  3. In the context menu of the schema, choose [image] New [image] Table [image] .

    More information: Table Editor

  4. Enter the name of the table.

    More information: SQL Reference Manual,

    • Table Name (table_name)

    • Schema Name (schema_name)

    Note Note

    If you want to use upper and lower case, deactivate the Identifier Upper Case setting in the Database Studio settings.

    More information: Configuring Database Studio

    End of the note.

  5. On the Columns page, create columns.

    More information: Creating Columns

  6. Optional: On the Constraints tab page, define constraints for columns.

    More information: Defining Constraints for a Column

  7. Optional: On the Indexes tab page, create indexes.

    More information: Creating Indexes

  8. Optional: On the Foreign Keys tab page, define foreign key dependencies.

    More information: Defining Foreign Key Dependencies

  9. Optional: On the Miscellaneous tab page, enter further table properties.

    More information: Defining Custom Table Properties

  10. To save the table in the database, choose Create Table in the context menu of the table editor.

    The current database user becomes the owner of the table. The user obtains the INSERT, UPDATE, DELETE, and SELECT privileges for this table. If the table is not a temporary table, the owner is also granted the INDEX, REFERENCES, and ALTER privileges.

More Information

SQL Tutorial, Tables


-1013: Too many order columns - SAP Documentation

Background documentation -1013: Too many order columns

Explanation

The following causes of errors are possible:

  1. More than 128 columns were specified as sort criterion or group columns.

  2. The total length of the order or group columns exceeds 1020 bytes.

  3. The length of the longest result data type of a DISTINCT function, together with the lengths of the group columns, exceeds 254 characters. The result data type is the data type which is assigned to the result of an expression.

User Response

In the SQL statement, you must remove one or more columns specified in the ORDER clause or GROUP clause.


View Editor - SAP Documentation

Background documentation View Editor

In the view editor, you can change view tables.

View: Properties

Property

Description (Link to SQL Reference Manual)

View Name

The same rules as for table names apply: Table Name (table_name)

Schema

Schema Name (schema_name)

Check on Insert and Update

If this option is set, you cannot use INSERT or UPDATE statements on the view table to generate any rows that can afterwards no longer be selected via the view table. Resulting rows must fulfill the view table's search condition.

The option is inherited. This means that, if you have defined a view table VIEWTABLE1 with this option and are using VIEWTABLE1 in the FROM condition of a modifiable view table VIEWTABLE2, then only rows that can be selected using VIEWTABLE1 may be added or modified with VIEWTABLE2.

Replace Existing View

If you choose these option, the view table replaces a previously existing view table.

Indexes: Display Criteria
Option | Description
None | All indexes from the selected schema are displayed.
Only Bad Indexes | Only damaged indexes are displayed.
Only Disabled Indexes | Only disabled indexes are displayed.
Only Unused Indexes | Only unused indexes are displayed (INDEXUSED=0).
Optimizer Statistics
Property | Description
Columns and Indexes | Columns and indexes
Distinct Values | Estimated number of lines in the table
Page Count | Estimated table size (in pages) This size affects which search strategy is selected by the system. More information: SQL Optimizer, Search Strategies
Last Statistics Update | Time of the last statistics update

More Information

SQL Reference Manual, CREATE VIEW Statement (create_view_statement)

SQL Tutorial, View Tables


-28828: Inconsistent information concerning “is container dropped” - SAP Documentation

Background documentation -28828: Inconsistent information concerning “is container dropped”

Explanation

The specifications for “is container dropped” on the root page of the object container file and in the object file directory are not consistent.This error can occur if CHECK DATA is executed.

User Response

Inform your local support.


350: Referential integrity violated - SAP Documentation

Background documentation 350: Referential integrity violated

Explanation

The following causes are possible:

  1. Inserting rows into a table that is the referencing table in a referential CONSTRAINT definition produces a row that is not a matching row of the CONSTRAINT definition.

  2. Deleting rows from a referenced table in a referential CONSTRAINT definition using ON DELETE RESTRICT in the DELETE rule produces a matching row.

  3. When a referential CONSTRAINT definition is being executed, the referenced table or referencing table contains rows which conflict with the CONSTRAINT definition.

User Response

  1. Display the definition of the referential CONSTRAINT definition using a QUERY statement issued on the DOMAIN.FOREIGNKEYCOLUMNS system table. Correct the INSERT or UPDATE statement according to this definition.

  2. Use a suitable QUERY statement to find out which row of the referencing table prevents the required rows from being deleted from the referenced table.

  3. Use a suitable QUERY statement to find out which row of the referenced table or referencing table conflicts with the referential CONSTRAINT definition. Change or delete this row, or correct the CONSTRAINT definition.


-28531: OMS read only - SAP Documentation

Background documentation -28531: OMS read only

Explanation

An attempt was made to lock an object, although the calling session is in read-only mode. This is not allowed.

User Response

Contact Support.


-847: Invalid type definition - SAP Documentation

Background documentation -847: Invalid type definition

Explanation

The type definition or clause is invalid or not allowed.

User Response

Correct the definition or clause, or remove it from the declare section.


Getting Support - SAP Documentation

Background documentation Getting Support

Support for SAP MaxDB
Name | Description
SAP MaxDB Forum on SDN | https://www.sdn.sap.com/irj/sdn/forum?forumID=90&start=0 The forum is based on mutual support between SAP MaxDB users and is free of charge. Both the database development team and members of the forum can reply to you.
Support contract with SAP | If you use SAP MaxDB in an SAP solution, your SAP support contract gives you access to the SAP support infrastructure. More information: SAP Note 826037


backup_history_date - SAP Documentation

Background documentation backup_history_date

Use this command to display the date and time when the current backup history was last changed.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

backup_history_date

Result

OK

<yyyymmddHHMMSS>

Values for the Reply Fields
Value | Description
<yyyymmddHHMMSS> | Last change date of the backup history Time format: Year Month Day Hours Minutes Seconds

In the event of errors, see Reply Format.

More Information


Sequence Editor - SAP Documentation

Background documentation Sequence Editor

In the sequence editor, you can edit sequences (number generators).

Sequence: Properties

Property

Description (Link to SQL Reference Manual)

Sequence Name

Sequence name (sequence_name)

Schema

Schema name (schema_name)

Start With

First value of the sequence

Increment By

Difference between two successive values of the sequence

A negative value generates a descending sequence.

Default value: 1

Minimum Value

Minimum value

Maximum Value

Maximum value

Values to Cache

Number of values of the sequence that the system stores in the sequence cache

Cycle

Ascending sequences: after the system has reached the maximum value, it allocates the minimum value as next value.

Descending sequences: after the system has reached the minimum value, it allocates the maximum value as next value.

More Information

SQL Reference Manual, CREATE SEQUENCE Statement (create_sequence_statement)

SQL Tutorial, Number Generators for Tables


-820: Invalid declare statement - SAP Documentation

Background documentation -820: Invalid declare statement

Explanation

The keyword FOR was not found in the DECLARE CURSOR statement.

User Response

Insert the keyword FOR into the DECLARE CURSOR statement.


-11108: Invalid parameter index <number>. - SAP Documentation

Background documentation -11108: Invalid parameter index <number>.

Explanation

You have called a MaxDB PHP function that transferred an incorrect parameter index <number>.

User Response

Correct the parameter index.


-28901: No case match found - SAP Documentation

Background documentation -28901: No case match found

Explanation

A suiting WHEN-clause was not found in aCASE-statement, which means that the CASE-statement did not execute a query.

User Response

Modify the CASE-statement in a way enabling at least one WHEN-clause to always fulfill the condition. If this should not be possible then use a ELSE-clause.


Example of a Configuration File for Backint for SAP MaxDB - SAP Documentation

Background documentation Example of a Configuration File for Backint for SAP MaxDB

You can simplify the way you create the configuration file for Backint for SAP MaxDB by using the following example and adjusting it to suit your needs.

If you do not want a certain parameter to be set by the parameter file, you must invalidate or delete the relevant keyword.

Contents of the File
Case 1: Connecting to a Backint for Oracle Interface by Using the SAP MaxDB Adapter Program

BACKINT C:\SAPDB\TST\db\bin\backint.exe

INPUT C:\TEMP\backint4MAXDB.in

OUTPUT C:\TEMP\backint4MAXDB.out

ERROROUTPUT C:\TEMP\backint4MAXDB.err

PARAMETERFILE C:\SAPDB\WRK\TST\backintmaxdbconfig.par

TIMEOUT_SUCCESS 600

TIMEOUT_FAILURE 400

ORIGINAL_RUNDIRECTORY C:\SAPDB\wrk\CUSTOMERDB

Case 2: Connecting to the Backint for SAP MaxDB Interface of a Backup Tool

BACKINT C:\Backuptool\backint.exe

INPUT C:\TEMP\backint4MAXDB.in

OUTPUT C:\TEMP\backint4MAXDB.out

ERROROUTPUT C:\TEMP\backint4MAXDB.err

PARAMETERFILE C:\SAPDB\WRK\TST\backintmaxdbconfig.par

TIMEOUT_SUCCESS 600

TIMEOUT_FAILURE 400

ORIGINAL_RUNDIRECTORY C:\SAPDB\wrk\CUSTOMERDB

Explanation of the File Contents
Keyword | Value | Explanation
BACKINT | C:\Backuptool\backint.exe | The absolute path of the Backint for SAP MaxDB program is C:\Backuptool\backint.exe.
INPUT | C:\TEMP\backint4MAXDB.in | The absolute path of the standard input is C:\TEMP\backint4MAXDB.in
OUTPUT | C:\TEMP\backint4MAXDB.out | The absolute path of the standard output is C:\TEMP\backint4MAXDB.out
ERROROUTPUT | C:\TEMP\backint4MAXDB.err | The absolute path of the standard error output is C:\TEMP\backint4MAXDB.err
PARAMETERFILE | C:\SAPDB\WRK\TST\adaptprog.par | The absolute path of the parameter file for the adapter program is C:\SAPDB\WRK\TST\adaptprog.par.
TIMEOUT_SUCCESS | 600 | If successful, Database Manager waits for a maximum of 600 seconds to quit Backint for SAP MaxDB. If you do not define this value, the system uses the default value of 300 seconds.
TIMEOUT_FAILURE | 400 | If errors occur, Database Manager waits for a maximum of 400 seconds to quit Backint for SAP MaxDB. If you do not define this value, the system uses the default value of 60 seconds.
ORIGINAL_RUNDIRECTORY | C:\SAPDB\wrk\CUSTOMERDB | The run directory of the original database is C:\SAPDB\wrk\CUSTOMERDB.


-25237: Cannot execute DATAUPDATE command; specify set columns - SAP Documentation

Background documentation -25237: Cannot execute DATAUPDATE command; specify set columns

Explanation

Error when updating data using the UPDATE COLUMNS command. The specifications required to execute the column update are missing from the command. The column specification must begin with the keyword SET.

User Response

Correct the command and then re-execute it.


Console (Database Console) - SAP Documentation

Background documentation Console (Database Console)

The XCONS program (also called console or database console) is a database tool that gives you a quick overview of the operating system resources being used by the database system, the distribution of database sessions to threads, and the status of active database sessions.

More Information

XCONS documentation

Database Manager CLI, show

Concepts of the Database System, Database Tools

Database Administration in CCMS, Database Console


Services - SAP Documentation

Background documentation Services

A service is an application that is started when the Microsoft Windows operating system is started, and it runs in the background until the operating system is shut down. Services are started under specific user names.

Services

Name

Default Operating System User

Description

  • MaxDB: <database_name>

  • MaxDB: <database_name> (slow)

Local System Account

Kernel of database <database_name>

This service is available in several versions for each database (one service per kernel variant). Only one of each of these services can run (system default: fast kernel variant).

More information: Glossary, Kernel Variant

If this service is stopped, then either the database was transferred to the OFFLINE operational state or the database crashed.

Do not start this service manually, but by transferring the database to the ONLINE operational state using a database tool (Database Studio, Database Manager CLI or CCMS).

More information: Database Administration, Activating Automatic Database Start

MAXDB: .UMDB

Local System Account

Internal database for user authentication

MAXDB: .<generated_name>

Example Example

MAXDB: .M770205

End of the example.

Local System Account

Service database for special internal administration tasks

More information: Glossary, Service Database

XServer

Local System Account

Global listener (if it has been assigned the default port 7210) or a SAP MaxDB X server (if the X server has been assigned the global listener's default port 7210)

The global listener and X servers need to be started in the following cases, among others:

  • Clients from other computers want to access a database on the local computer

  • You use the JDBC interface

More information: Global Listener and X Servers

XServer-<port_number>

Local System Account

Installation-specific X servers with port <port_number> and/or the global listener (if it has not been assigned the default port 7210)


RFILL(x,a,n) - SAP Documentation

Function documentation RFILL(x,a,n)

RFILL(x,a,n) is a string function that inserts the character string a (string literal) at the end of the character string x (string specification) as many times as necessary until the character string has reached length n (unsigned integer). Only expressions that produce an alphanumeric value are permitted as string specifications.

If the character string a cannot be completely inserted without exceeding the specified total length, only the part that is needed to reach the total length is inserted.

RFILL(x,a,n)
x, a, n | Result of the RFILL(x,a,n) Function
RFILL(x,a), x must identify a CHAR or VARCHAR column | The column x is filled with the characters of a until its maximum length is reached
x is a NULL value | NULL value
a or n is a NULL value | Error message

Example

SQL Tutorial, Changing Character Strings

More Information

LFILL(x,a,n)

EXPAND(x,n)


-25203: Column '<column_name>' - DECIMAL field: 20 bytes maximum (double if HEX) - SAP Documentation

Background documentation -25203: Column '<column_name>' - DECIMAL field: 20 bytes maximum (double if HEX)

Explanation

The command to export or import data contains an error.A file field of type DECIMAL is specified in an explicit column description. However, the length of the field does not match the length specified in the error message.

User Response

Correct your entries and re-execute the command.


-3066: Date input value inconsistent - SAP Documentation

Background documentation -3066: Date input value inconsistent

Explanation

Data from two format elements was converted. The values of the data are contradictory. Perhaps a Julian calendar day was specified which does not lie within the specified year or month, or denotes another day of the month, or the seconds of the day were specified but do not correspond to the specified hours or minutes or seconds of the minute.

User Response

  1. One of the format elements containing contradictory values should be omitted.

  2. The values of the two format elements should be matched.


-10407: Corrupted UTF8 data for parameter/column (<number>) - SAP Documentation

Background documentation -10407: Corrupted UTF8 data for parameter/column (<number>)

Explanation

The UNICODE value (UTF8) of the parameter/column could not be read or inserted, because the value contains characters that cannot be displayed in ASCII.

User Response

Only enter UNICODE values (UTF8) that are part of the 7-bit ASCII character set.


-5006: Missing identifier - SAP Documentation

Background documentation -5006: Missing identifier

Explanation

An identifier is missing.

User Response

The error position indicates the location of the missing identifier. Insert an identifier into the SQL statement.


Error Messages - SAP Documentation

Procedure documentation Error Messages

The Kernel Messages user menu of the DBA Cockpit contains, among other things, the kernel error log.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] Kernel Messages [image] Errors [image] .

Result

The error log, knldiag.err, is displayed. The error log records all of the database kernel’s error messages and warnings since the database system was installed. This file is written continuously.

You can use the navigation help (Start of File, End of File) for orientation within the message files. Choose Import Message File to update the output.

More Information

Database Administration, Log Files


-25335: Error restoring single table using data file with multiple table data; specify single table data file - SAP Documentation

Background documentation -25335: Error restoring single table using data file with multiple table data; specify single table data file

Explanation

Error in the Loader command for importing data.The data was exported with either the EXPORT USER or the EXPORT DB command. Data exported in this way can only be imported with the corresponding IMPORT USER or the IMPORT DB command. You cannot import a particular table using this data.

User Response

If you want to import one particular table, you must first export it using the EXPORT TABLE command.If you want to import all the data from the data stream, correct the command and re-execute it.


LOGPARTITIONSTATISTICS - SAP Documentation

Object documentation LOGPARTITIONSTATISTICS

The system table SYSINFO.LOGPARTITIONSTATISTICS describes the degree to which every log partition is utilized.

Structure

LOGPARTITIONSTATISTICS
PARTITIONID | FIXED(5) | Logical identification number of the log partition
USABLESIZE | FIXED(20) | Size of the log partition area available for use (KB)
USEDSIZE | FIXED(20) | Size of the used log partition area (KB)
NOTSAVEDSIZE | FIXED(20) | Size of log partition area not yet saved (KB)

More Information

Concepts of the Database System, How Databases Log Data Changes


-2026: Invalid label - SAP Documentation

Background documentation -2026: Invalid label

Explanation

The database identifier of backup, log area and data area are incompatible.

User Response

The database identifier of the backup (log and data) and the database volumes (log and data) have to be equal. Check if you have mixed up backups from different databases.


Data Area - SAP Documentation

Background documentation Data Area

The data volumes of a database form the data area. The database system stores the following in the data area:

  • Application data

  • Database catalog

  • The converter saved at the last savepoint

  • Undo log files

  • Sequences

  • Restart information

To improve the performance of large databases, configure data volumes on different hard drives. The general database parameter MaxDataVolumes specifies the maximum number of data volumes you can define for a database.

More information: Database Administration, General Database Parameters

How Does the System Write Data to the Data Area?

The database system uses internal striping to distribute the data belonging to a table evenly across all the data volumes of the data area.

This graphic is explained in the accompanying text.

Data Area

Size of the Data Area

The size of the data area must be at least 2,000 pages. There must also always be sufficient space in the data area to hold all the data that is created during database operations. You can configure your database in such a way that the database system automatically adds a new data volume as soon as the available storage space in the data area is too small.

More information:

  • Database Studio, Activating and Deactivating Automatic Extension of the Data Area

  • Database Manager CLI, auto_extend

More Information

Volumes (Permanent Storage)


-25310: Column '<column_name>' must not contain NULL values - SAP Documentation

Background documentation -25310: Column '<column_name>' must not contain NULL values

Explanation

The Loader command to import or update data contains an error. You cannot import NULL values into columns that have been defined as NOT NULL columns and that have no system default value.

User Response

Correct the data and re-execute the command.


Activities Overview - SAP Documentation

Procedure documentation Activities Overview

The Performance user menu of the DBA Cockpit contains, among other things, an overview of the database activities since the last start of Database Monitoring. You can reset the monitoring data.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] Activities Overview [image] .

Result

The system displays the following information in the overview:

SQL Statements

In the SQL Statements area, you can find information about the executed SQL statements:

SQL Statements | Number of SQL statements sent to the database system to be executed. A direct indication of database activity.
Prepares | Number of dynamic SQL statements.
Executes | Number of executed dynamic SQL statements.
Rollbacks | Unsuccessful database operations, usually caused by crashed applications
Commits | Successful database operations.
Updates, Selects and Fetches, Creates, Alters, Drops, Deletes, Inserts | Number of individual SQL statements, possibly with row information

The number of SQL statements is a direct indication of database activity. The ratio of ROLLBACK actions to COMMIT actions may indicate logical inconsistencies in one or more SQL statements.

I/O Activity

In the I/O Activity area, you can see information about the I/O activities that were triggered by the database system. This includes information about the logical and physical read and write transactions. In a physical read or write activity, the system accesses a volume directly. A logical read or write activity, on the other hand, uses data stored in the data cache or another cache.

For more information, refer to: I/O Operations

Lock Activity

The Lock Activity area gives you information about the maximum number of available database locks (entries) as well as the number of locks set since the start of database monitoring. If the number of locks set approaches the number of available locks, it is a good idea to raise the value of the MAXLOCKS general database parameter.

Escalations shows the total number of rows locked by a single user session. If more than a certain percentage of the rows of a table are locked by a single user session, the database system locks the entire table. The threshold for escalations follows the MAXLOCKS values for this database.

If a locked object is requested again, a lock conflict occurs. If a large number of collisions occurs in your system, this means that a specific lock is being held too long, or multiple users are trying to access the same part of the database too often. The values for lock owner and lock requester refer to the locks at the time the transaction is executed.

For more information, refer to: SQL Locks

Logging Activity

The Logging Activity area shows you, among other things, the number of log pages (written log pages, such as pages filled with redo log entries). If the value of Log I/O Queue Overflow is greater than 0, increase the space available for log queues. You can configure the size of log queues with the LOG_IO_QUEUE special database parameter and the number of the log queues with the LOG_QUEUE_COUNT support database parameter.

For more information, refer to: Concepts of the Database System, How Databases Log Data Changes

Scan and Sort Activity

The Scan and Sort Activity area shows you, among other things, information about table scans and data record sorting. Keep the number of table scans to a minimum, since a high number of sequential scans can have a negative effect on database performance.

For more information, refer to: Bottlenecks

Resetting Monitor Data

If you want to monitor the database status at the current time, choose [image] Activity Monitor [image] Reset Monitor Data [image] . All relevant database system tables are initialized and the statistical data for database monitoring is collected from this time.

More Information

Database Activities

Concepts of the Database System, SQL, How Databases Store Data and Log Entries, Locks

Database Administration, General Database Parameters, Monitoring Databases


-7058: Correlated subquery with select in from clause not allowed - SAP Documentation

Background documentation -7058: Correlated subquery with select in from clause not allowed

Explanation

You are not allowed to include a QUERY expression in the FROM clause of a correlated subquery.

User Response

Formulate the corresponding subquery to leave out the QUERY expression. If this is not possible, split the SQL statement into at least two SQL statements and generate a named result table that can be used in the FROM clause.


DBA History - SAP Documentation

Procedure documentation DBA History

The Logs user menu of the DBA Cockpit contains, among other things, logs of the database administration actions.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and choose [image] Configuration [image] Logs [image] DBA History [image] .

Result

The content of several Database Manager log files, general log files from the database kernel as well as log files from third-party backup tools (if applicable) over the last three months will be displayed as follows.

Log Area | Logged Data from DBA Actions
Backup/Restore (DBM Server) | Backup and recovery Log files from the Database Manager and (if applicable) log files from backup tools from other providers are evaluated.
Backup/Restore (Core) | Backup and recovery Log files from the database kernel are evaluated.
Optimizer Statistics | Optimizer statistics are updated.
Database structure checks | Checking the database structures Log files from the Database Manager are evaluated.
Archiving Log Backup Files | Archiving the backup files (log backup) Log files from the Database Manager and (if applicable) log files from backup tools from other providers are evaluated.

You can display additional detailed information for an action (Display Log) by double-clicking it.

If third-party backup tools were used, the log information for these tools is displayed.

More Information

  • Automatic Monitoring

  • Database Administration in CCMS, SQL Optimizer in CCMS

  • Database Administration, Log Files, Backing Up Databases, Restoring Databases, Checking Database Structures, Archiving Backup Files, Monitoring Databases


-8037: DB procedure must be recompiled - SAP Documentation

Background documentation -8037: DB procedure must be recompiled

Explanation

SQL statements for data definition that affect tables used in the database procedure were executed. Compile the database procedure to see if this is still executable.

User Resonse

The owner of the DB procedure must perform this check by resaving the DB procedure.


-1010: Too many volumes - SAP Documentation

Background documentation -1010: Too many volumes

Explanation

During installation, the number of data volumes is limited. This number was exceeded.

User Response

Reduce the number of data volumes.


-28105: Unique index field changed - SAP Documentation

Background documentation -28105: Unique index field changed

Explanation

The attempt of changing a field belonging to a unique-index failed.

User Response

Make sure that fields which are part of an unique-index are not changed. If a change is urgently necessary, the old object must be deleted in order to create a new object with the needed index-values.


-8005: Value expression must be parameter name - SAP Documentation

Background documentation -8005: Value expression must be parameter name

Explanation

When a database procedure was called, a constant value, instead of a parameter, was specified for an OUT or IN/OUT parameter.

User Response

Replace the specified constant with a parameter.


-7037: NULL value for NOT NULL column not allowed - SAP Documentation

Background documentation -7037: NULL value for NOT NULL column not allowed

Explanation

The error message is returned for a referential constraint definition with ON DELETE SET NULL specification, if a column of the referencing column does not allow the NULL value.

User Response

Choose another action in the DELETE rule or admit the NULL value for the corresponding column(s) in the referencing table.


-1: Duplicate key in index - SAP Documentation

Background documentation -1: Duplicate key in index

Explanation

There is already a table row with the specified secondary key. UNIQUE was specified for the secondary key.

User Response

To avoid a key value collision, correct the value of the key to be inserted in the SQL statement.The error message specifies the column or multiple-column index already containing the specified values.


-7064: Feature not allowed in temp table definition - SAP Documentation

Background documentation -7064: Feature not allowed in temp table definition

Explanation

A referential CONSTRAINT definition cannot be specified for a temporary table.

User Response

Repeat the SQL statement without the invalid specification, or create a permanent table in place of the temporary table.


SAP Library - Database Manager CLI

Start Level 1 Node: Database Manager CLI Database Manager CLI End Level 1 Node: Database Manager CLI
Start Level 2 Node: How Database Manager CLI Works How Database Manager CLI Works End Level 2 Node: How Database Manager CLI Works
Start Level 3 Node: Calling Database Manager CLI Calling Database Manager CLI End Level 3 Node: Calling Database Manager CLI
Start Level 4 Node: DBM Options DBM Options End Level 4 Node: DBM Options
Start Level 5 Node: -c: Indicating as DBM Command -c: Indicating as DBM Command End Level 5 Node: -c: Indicating as DBM Command
Start Level 5 Node: -d: Name of the Database -d: Name of the Database End Level 5 Node: -d: Name of the Database
Start Level 5 Node: -e: Activating Encryption -e: Activating Encryption End Level 5 Node: -e: Activating Encryption
Start Level 5 Node: -i | -ic | -is | -ics: Name of the Input Script -i | -ic | -is | -ics: Name of the Input Script End Level 5 Node: -i | -ic | -is | -ics: Name of the Input Script
Start Level 5 Node: -n: Name of the Database Computer -n: Name of the Database Computer End Level 5 Node: -n: Name of the Database Computer
Start Level 5 Node: -o: Name of the Output File -o: Name of the Output File End Level 5 Node: -o: Name of the Output File
Start Level 5 Node: -R: Installation Directory of the Database Software -R: Installation Directory of the Database Software End Level 5 Node: -R: Installation Directory of the Database Software
Start Level 5 Node: -s: Displaying Client Information -s: Displaying Client Information End Level 5 Node: -s: Displaying Client Information
Start Level 5 Node: -t: Name of the Log File -t: Name of the Log File End Level 5 Node: -t: Name of the Log File
Start Level 5 Node: -uSQL: Opening an SQL Session -uSQL: Opening an SQL Session End Level 5 Node: -uSQL: Opening an SQL Session
Start Level 5 Node: -uSRV: Opening a Service Session -uSRV: Opening a Service Session End Level 5 Node: -uSRV: Opening a Service Session
Start Level 5 Node: -uUTL: Opening a Utility Session -uUTL: Opening a Utility Session End Level 5 Node: -uUTL: Opening a Utility Session
Start Level 5 Node: -ud: Deleting XUSER Entries -ud: Deleting XUSER Entries End Level 5 Node: -ud: Deleting XUSER Entries
Start Level 5 Node: -uk: User Key -uk: User Key End Level 5 Node: -uk: User Key
Start Level 5 Node: -us: Creating or Changing XUSER Entries -us: Creating or Changing XUSER Entries End Level 5 Node: -us: Creating or Changing XUSER Entries
Start Level 5 Node: -ux: Logging on to the XUSER Program -ux: Logging on to the XUSER Program End Level 5 Node: -ux: Logging on to the XUSER Program
Start Level 5 Node: -ul: Displaying XUSER Data -ul: Displaying XUSER Data End Level 5 Node: -ul: Displaying XUSER Data
Start Level 4 Node: DBM Commands DBM Commands End Level 4 Node: DBM Commands
Start Level 4 Node: Operating Modes in Database Manager CLI Operating Modes in Database Manager CLI End Level 4 Node: Operating Modes in Database Manager CLI
Start Level 4 Node: Input Help Input Help End Level 4 Node: Input Help
Start Level 5 Node: Comment: # Comment: # End Level 5 Node: Comment: #
Start Level 5 Node: Local System Call: ! Local System Call: ! End Level 5 Node: Local System Call: !
Start Level 5 Node: Linking Lines: / Linking Lines: / End Level 5 Node: Linking Lines: /
Start Level 5 Node: Linking Lines: < Linking Lines: < End Level 5 Node: Linking Lines: <
Start Level 3 Node: Reply Format Reply Format End Level 3 Node: Reply Format
Start Level 2 Node: Command Reference for Working with Database Manager CLI Command Reference for Working with Database Manager CLI End Level 2 Node: Command Reference for Working with Database Manager CLI
Start Level 3 Node: Database Manager Help Database Manager Help End Level 3 Node: Database Manager Help
Start Level 4 Node: Other Commands for Database Manager Help Other Commands for Database Manager Help End Level 4 Node: Other Commands for Database Manager Help
Start Level 3 Node: Software Installation Software Installation End Level 3 Node: Software Installation
Start Level 4 Node: Other Commands for Software Installation Other Commands for Software Installation End Level 4 Node: Other Commands for Software Installation
Start Level 3 Node: Creating and Deleting Databases Creating and Deleting Databases End Level 3 Node: Creating and Deleting Databases
Start Level 4 Node: Other Commands for Creating and Deleting Databases Other Commands for Creating and Deleting Databases End Level 4 Node: Other Commands for Creating and Deleting Databases
Start Level 3 Node: Configuring Databases Configuring Databases End Level 3 Node: Configuring Databases
Start Level 4 Node: Other Commands for Configuring Databases Other Commands for Configuring Databases End Level 4 Node: Other Commands for Configuring Databases
Start Level 4 Node: Commands for Changing Database Parameters Commands for Changing Database Parameters End Level 4 Node: Commands for Changing Database Parameters
Start Level 3 Node: Controlling Databases Controlling Databases End Level 3 Node: Controlling Databases
Start Level 4 Node: Other Commands for Controlling Databases Other Commands for Controlling Databases End Level 4 Node: Other Commands for Controlling Databases
Start Level 3 Node: Backing Up and Restoring Databases Backing Up and Restoring Databases End Level 3 Node: Backing Up and Restoring Databases
Start Level 4 Node: Other Commands for Backup Templates Other Commands for Backup Templates End Level 4 Node: Other Commands for Backup Templates
Start Level 4 Node: Other Commands for Backups Other Commands for Backups End Level 4 Node: Other Commands for Backups
Start Level 4 Node: Other Commands for Information on Backups Other Commands for Information on Backups End Level 4 Node: Other Commands for Information on Backups
Start Level 4 Node: Other Commands for Restoring Other Commands for Restoring End Level 4 Node: Other Commands for Restoring
Start Level 3 Node: Managing Database Manager Operators Managing Database Manager Operators End Level 3 Node: Managing Database Manager Operators
Start Level 4 Node: Other Commands for Managing Database Manager Operators Other Commands for Managing Database Manager Operators End Level 4 Node: Other Commands for Managing Database Manager Operators
Start Level 3 Node: Analyzing Databases Analyzing Databases End Level 3 Node: Analyzing Databases
Start Level 4 Node: Commands for the Database Trace Function Commands for the Database Trace Function End Level 4 Node: Commands for the Database Trace Function
Start Level 4 Node: Commands for Accessing Database Files Commands for Accessing Database Files End Level 4 Node: Commands for Accessing Database Files
Start Level 4 Node: Commands for Using Database Analyzer Commands for Using Database Analyzer End Level 4 Node: Commands for Using Database Analyzer
Start Level 3 Node: Accessing Databases Using SQL Accessing Databases Using SQL End Level 3 Node: Accessing Databases Using SQL
Start Level 4 Node: Other Commands for Accessing a Database Using SQL Other Commands for Accessing a Database Using SQL End Level 4 Node: Other Commands for Accessing a Database Using SQL
Start Level 3 Node: Optimizing the SQL Access to a Database Optimizing the SQL Access to a Database End Level 3 Node: Optimizing the SQL Access to a Database
Start Level 3 Node: Using Events of the Database Using Events of the Database End Level 3 Node: Using Events of the Database
Start Level 4 Node: Other Commands for Using Events of the Database Other Commands for Using Events of the Database End Level 4 Node: Other Commands for Using Events of the Database
Start Level 3 Node: Using the Scheduler Using the Scheduler End Level 3 Node: Using the Scheduler
Start Level 4 Node: Other Commands for Using the Scheduler Other Commands for Using the Scheduler End Level 4 Node: Other Commands for Using the Scheduler
Start Level 3 Node: Managing Hot Standby Systems Managing Hot Standby Systems End Level 3 Node: Managing Hot Standby Systems
Start Level 4 Node: Commands for Managing Hot Standby Systems Commands for Managing Hot Standby Systems End Level 4 Node: Commands for Managing Hot Standby Systems
Start Level 3 Node: Managing the Database Manager Tool Managing the Database Manager Tool End Level 3 Node: Managing the Database Manager Tool
Start Level 4 Node: Other Commands for Managing the Database Manager Tool Other Commands for Managing the Database Manager Tool End Level 4 Node: Other Commands for Managing the Database Manager Tool
Start Level 2 Node: Overview of All DBM Commands Overview of All DBM Commands End Level 2 Node: Overview of All DBM Commands
Start Level 3 Node: apropos apropos End Level 3 Node: apropos
Start Level 3 Node: archive_stage archive_stage End Level 3 Node: archive_stage
Start Level 3 Node: archive_stage_repeat archive_stage_repeat End Level 3 Node: archive_stage_repeat
Start Level 3 Node: auto_dbanalyzer auto_dbanalyzer End Level 3 Node: auto_dbanalyzer
Start Level 3 Node: auto_extend auto_extend End Level 3 Node: auto_extend
Start Level 3 Node: auto_load_systab auto_load_systab End Level 3 Node: auto_load_systab
Start Level 3 Node: auto_recreate_bad_index auto_recreate_bad_index End Level 3 Node: auto_recreate_bad_index
Start Level 3 Node: auto_update_statistics auto_update_statistics End Level 3 Node: auto_update_statistics
Start Level 3 Node: autolog_cancel autolog_cancel End Level 3 Node: autolog_cancel
Start Level 3 Node: autolog_off autolog_off End Level 3 Node: autolog_off
Start Level 3 Node: autolog_on autolog_on End Level 3 Node: autolog_on
Start Level 3 Node: autolog_show autolog_show End Level 3 Node: autolog_show
Start Level 3 Node: autorecover autorecover End Level 3 Node: autorecover
Start Level 3 Node: backup_cancel backup_cancel End Level 3 Node: backup_cancel
Start Level 3 Node: backup_cancel_req backup_cancel_req End Level 3 Node: backup_cancel_req
Start Level 3 Node: backup_ext_ids_forget backup_ext_ids_forget End Level 3 Node: backup_ext_ids_forget
Start Level 3 Node: backup_ext_ids_get backup_ext_ids_get End Level 3 Node: backup_ext_ids_get
Start Level 3 Node: backup_ext_ids_getfromtool backup_ext_ids_getfromtool End Level 3 Node: backup_ext_ids_getfromtool
Start Level 3 Node: backup_ext_ids_list backup_ext_ids_list End Level 3 Node: backup_ext_ids_list
Start Level 3 Node: backup_ext_ids_listnext backup_ext_ids_listnext End Level 3 Node: backup_ext_ids_listnext
Start Level 3 Node: backup_history_append backup_history_append End Level 3 Node: backup_history_append
Start Level 3 Node: backup_history_close backup_history_close End Level 3 Node: backup_history_close
Start Level 3 Node: backup_history_date backup_history_date End Level 3 Node: backup_history_date
Start Level 3 Node: backup_history_list backup_history_list End Level 3 Node: backup_history_list
Start Level 3 Node: backup_history_listnext backup_history_listnext End Level 3 Node: backup_history_listnext
Start Level 3 Node: backup_history_open backup_history_open End Level 3 Node: backup_history_open
Start Level 3 Node: backup_ignore backup_ignore End Level 3 Node: backup_ignore
Start Level 3 Node: backup_ignore_req backup_ignore_req End Level 3 Node: backup_ignore_req
Start Level 3 Node: backup_replace backup_replace End Level 3 Node: backup_replace
Start Level 3 Node: backup_replace_req backup_replace_req End Level 3 Node: backup_replace_req
Start Level 3 Node: backup_reply_available backup_reply_available End Level 3 Node: backup_reply_available
Start Level 3 Node: backup_reply_receive backup_reply_receive End Level 3 Node: backup_reply_receive
Start Level 3 Node: backup_req backup_req End Level 3 Node: backup_req
Start Level 3 Node: backup_start backup_start End Level 3 Node: backup_start
Start Level 3 Node: backup_state backup_state End Level 3 Node: backup_state
Start Level 3 Node: bye | exit | quit | release bye | exit | quit | release End Level 3 Node: bye | exit | quit | release
Start Level 3 Node: db_activate db_activate End Level 3 Node: db_activate
Start Level 3 Node: db_activate RECOVER db_activate RECOVER End Level 3 Node: db_activate RECOVER
Start Level 3 Node: db_activate_req db_activate_req End Level 3 Node: db_activate_req
Start Level 3 Node: db_addvolume db_addvolume End Level 3 Node: db_addvolume
Start Level 3 Node: db_admin db_admin End Level 3 Node: db_admin
Start Level 3 Node: db_clear db_clear End Level 3 Node: db_clear
Start Level 3 Node: db_connect db_connect End Level 3 Node: db_connect
Start Level 3 Node: db_cons db_cons End Level 3 Node: db_cons
Start Level 3 Node: db_create db_create End Level 3 Node: db_create
Start Level 3 Node: db_datasource_add db_datasource_add End Level 3 Node: db_datasource_add
Start Level 3 Node: db_datasource_alter db_datasource_alter End Level 3 Node: db_datasource_alter
Start Level 3 Node: db_datasource_drop db_datasource_drop End Level 3 Node: db_datasource_drop
Start Level 3 Node: db_datasource_list db_datasource_list End Level 3 Node: db_datasource_list
Start Level 3 Node: db_deletevolume db_deletevolume End Level 3 Node: db_deletevolume
Start Level 3 Node: db_drop db_drop End Level 3 Node: db_drop
Start Level 3 Node: db_enum db_enum End Level 3 Node: db_enum
Start Level 3 Node: db_execute db_execute End Level 3 Node: db_execute
Start Level 3 Node: db_executenice db_executenice End Level 3 Node: db_executenice
Start Level 3 Node: db_fetch db_fetch End Level 3 Node: db_fetch
Start Level 3 Node: db_fetchnice db_fetchnice End Level 3 Node: db_fetchnice
Start Level 3 Node: db_migratecatalog db_migratecatalog End Level 3 Node: db_migratecatalog
Start Level 3 Node: db_offline db_offline End Level 3 Node: db_offline
Start Level 3 Node: db_online db_online End Level 3 Node: db_online
Start Level 3 Node: db_reg db_reg End Level 3 Node: db_reg
Start Level 3 Node: db_reinstall db_reinstall End Level 3 Node: db_reinstall
Start Level 3 Node: db_release db_release End Level 3 Node: db_release
Start Level 3 Node: db_restart db_restart End Level 3 Node: db_restart
Start Level 3 Node: db_restartinfo db_restartinfo End Level 3 Node: db_restartinfo
Start Level 3 Node: db_speed db_speed End Level 3 Node: db_speed
Start Level 3 Node: db_standby db_standby End Level 3 Node: db_standby
Start Level 3 Node: db_state db_state End Level 3 Node: db_state
Start Level 3 Node: db_stop db_stop End Level 3 Node: db_stop
Start Level 3 Node: db_unreg db_unreg End Level 3 Node: db_unreg
Start Level 3 Node: dban_delete dban_delete End Level 3 Node: dban_delete
Start Level 3 Node: dban_start dban_start End Level 3 Node: dban_start
Start Level 3 Node: dban_state dban_state End Level 3 Node: dban_state
Start Level 3 Node: dban_stop dban_stop End Level 3 Node: dban_stop
Start Level 3 Node: dbm_configget dbm_configget End Level 3 Node: dbm_configget
Start Level 3 Node: dbm_configset dbm_configset End Level 3 Node: dbm_configset
Start Level 3 Node: dbm_execute_serverprocess dbm_execute_serverprocess End Level 3 Node: dbm_execute_serverprocess
Start Level 3 Node: dbm_getpath dbm_getpath End Level 3 Node: dbm_getpath
Start Level 3 Node: dbm_getpid dbm_getpid End Level 3 Node: dbm_getpid
Start Level 3 Node: dbm_listmemoryerror dbm_listmemoryerror End Level 3 Node: dbm_listmemoryerror
Start Level 3 Node: dbm_next dbm_next End Level 3 Node: dbm_next
Start Level 3 Node: dbm_shm_info dbm_shm_info End Level 3 Node: dbm_shm_info
Start Level 3 Node: dbm_shm_reset dbm_shm_reset End Level 3 Node: dbm_shm_reset
Start Level 3 Node: dbm_shm_unlock dbm_shm_unlock End Level 3 Node: dbm_shm_unlock
Start Level 3 Node: dbm_stop dbm_stop End Level 3 Node: dbm_stop
Start Level 3 Node: dbm_trace dbm_trace End Level 3 Node: dbm_trace
Start Level 3 Node: dbm_version dbm_version End Level 3 Node: dbm_version
Start Level 3 Node: dbmevtdisp_internal_add dbmevtdisp_internal_add End Level 3 Node: dbmevtdisp_internal_add
Start Level 3 Node: dbmevtdisp_internal_communication dbmevtdisp_internal_communication End Level 3 Node: dbmevtdisp_internal_communication
Start Level 3 Node: dbmevtdisp_internal_delete dbmevtdisp_internal_delete End Level 3 Node: dbmevtdisp_internal_delete
Start Level 3 Node: diag_histlist diag_histlist End Level 3 Node: diag_histlist
Start Level 3 Node: diag_pack diag_pack End Level 3 Node: diag_pack
Start Level 3 Node: event_available event_available End Level 3 Node: event_available
Start Level 3 Node: event_delete event_delete End Level 3 Node: event_delete
Start Level 3 Node: event_dispatcher event_dispatcher End Level 3 Node: event_dispatcher
Start Level 3 Node: event_list event_list End Level 3 Node: event_list
Start Level 3 Node: event_list_categories event_list_categories End Level 3 Node: event_list_categories
Start Level 3 Node: event_receive event_receive End Level 3 Node: event_receive
Start Level 3 Node: event_release event_release End Level 3 Node: event_release
Start Level 3 Node: event_set event_set End Level 3 Node: event_set
Start Level 3 Node: event_wait event_wait End Level 3 Node: event_wait
Start Level 3 Node: exec_lcinit exec_lcinit End Level 3 Node: exec_lcinit
Start Level 3 Node: exec_nipingsrv exec_nipingsrv End Level 3 Node: exec_nipingsrv
Start Level 3 Node: exec_sdbinfo exec_sdbinfo End Level 3 Node: exec_sdbinfo
Start Level 3 Node: explain explain End Level 3 Node: explain
Start Level 3 Node: file_backup file_backup End Level 3 Node: file_backup
Start Level 3 Node: file_getfirst file_getfirst End Level 3 Node: file_getfirst
Start Level 3 Node: file_getlist file_getlist End Level 3 Node: file_getlist
Start Level 3 Node: file_getnext file_getnext End Level 3 Node: file_getnext
Start Level 3 Node: file_operation file_operation End Level 3 Node: file_operation
Start Level 3 Node: file_restore file_restore End Level 3 Node: file_restore
Start Level 3 Node: get_default get_default End Level 3 Node: get_default
Start Level 3 Node: help help End Level 3 Node: help
Start Level 3 Node: hss_addstandby hss_addstandby End Level 3 Node: hss_addstandby
Start Level 3 Node: hss_copyfile hss_copyfile End Level 3 Node: hss_copyfile
Start Level 3 Node: hss_enable hss_enable End Level 3 Node: hss_enable
Start Level 3 Node: hss_execute hss_execute End Level 3 Node: hss_execute
Start Level 3 Node: hss_getnodes hss_getnodes End Level 3 Node: hss_getnodes
Start Level 3 Node: hss_removestandby hss_removestandby End Level 3 Node: hss_removestandby
Start Level 3 Node: info info End Level 3 Node: info
Start Level 3 Node: info_next info_next End Level 3 Node: info_next
Start Level 3 Node: inst_enum inst_enum End Level 3 Node: inst_enum
Start Level 3 Node: inst_info inst_info End Level 3 Node: inst_info
Start Level 3 Node: inst_reg inst_reg End Level 3 Node: inst_reg
Start Level 3 Node: inst_unreg inst_unreg End Level 3 Node: inst_unreg
Start Level 3 Node: load_lcapps load_lcapps End Level 3 Node: load_lcapps
Start Level 3 Node: load_r3tab load_r3tab End Level 3 Node: load_r3tab
Start Level 3 Node: load_systab load_systab End Level 3 Node: load_systab
Start Level 3 Node: load_tutorial load_tutorial End Level 3 Node: load_tutorial
Start Level 3 Node: medium_date medium_date End Level 3 Node: medium_date
Start Level 3 Node: medium_delete medium_delete End Level 3 Node: medium_delete
Start Level 3 Node: medium_delete_nodistribute medium_delete_nodistribute End Level 3 Node: medium_delete_nodistribute
Start Level 3 Node: medium_get medium_get End Level 3 Node: medium_get
Start Level 3 Node: medium_getall medium_getall End Level 3 Node: medium_getall
Start Level 3 Node: medium_label medium_label End Level 3 Node: medium_label
Start Level 3 Node: medium_labeloffline medium_labeloffline End Level 3 Node: medium_labeloffline
Start Level 3 Node: medium_migrate medium_migrate End Level 3 Node: medium_migrate
Start Level 3 Node: medium_put medium_put End Level 3 Node: medium_put
Start Level 3 Node: medium_put_nodistribute medium_put_nodistribute End Level 3 Node: medium_put_nodistribute
Start Level 3 Node: package_info package_info End Level 3 Node: package_info
Start Level 3 Node: param_abortsession param_abortsession End Level 3 Node: param_abortsession
Start Level 3 Node: param_addvolume param_addvolume End Level 3 Node: param_addvolume
Start Level 3 Node: param_checkall param_checkall End Level 3 Node: param_checkall
Start Level 3 Node: param_commitsession param_commitsession End Level 3 Node: param_commitsession
Start Level 3 Node: param_copy param_copy End Level 3 Node: param_copy
Start Level 3 Node: param_delvolume param_delvolume End Level 3 Node: param_delvolume
Start Level 3 Node: param_directdel param_directdel End Level 3 Node: param_directdel
Start Level 3 Node: param_directget param_directget End Level 3 Node: param_directget
Start Level 3 Node: param_directgetall param_directgetall End Level 3 Node: param_directgetall
Start Level 3 Node: param_directgetallnext param_directgetallnext End Level 3 Node: param_directgetallnext
Start Level 3 Node: param_directput param_directput End Level 3 Node: param_directput
Start Level 3 Node: param_extget param_extget End Level 3 Node: param_extget
Start Level 3 Node: param_extgetall param_extgetall End Level 3 Node: param_extgetall
Start Level 3 Node: param_extgetallnext param_extgetallnext End Level 3 Node: param_extgetallnext
Start Level 3 Node: param_getdefault param_getdefault End Level 3 Node: param_getdefault
Start Level 3 Node: param_getexplain param_getexplain End Level 3 Node: param_getexplain
Start Level 3 Node: param_getfull param_getfull End Level 3 Node: param_getfull
Start Level 3 Node: param_gethelp param_gethelp End Level 3 Node: param_gethelp
Start Level 3 Node: param_gethistory param_gethistory End Level 3 Node: param_gethistory
Start Level 3 Node: param_gethistorynext param_gethistorynext End Level 3 Node: param_gethistorynext
Start Level 3 Node: param_getproperties param_getproperties End Level 3 Node: param_getproperties
Start Level 3 Node: param_gettype param_gettype End Level 3 Node: param_gettype
Start Level 3 Node: param_getvalue param_getvalue End Level 3 Node: param_getvalue
Start Level 3 Node: param_getvolsall param_getvolsall End Level 3 Node: param_getvolsall
Start Level 3 Node: param_getvolume param_getvolume End Level 3 Node: param_getvolume
Start Level 3 Node: param_init param_init End Level 3 Node: param_init
Start Level 3 Node: param_put param_put End Level 3 Node: param_put
Start Level 3 Node: param_restore param_restore End Level 3 Node: param_restore
Start Level 3 Node: param_rmfile param_rmfile End Level 3 Node: param_rmfile
Start Level 3 Node: param_startsession param_startsession End Level 3 Node: param_startsession
Start Level 3 Node: param_versions param_versions End Level 3 Node: param_versions
Start Level 3 Node: recover_cancel recover_cancel End Level 3 Node: recover_cancel
Start Level 3 Node: recover_cancel_req recover_cancel_req End Level 3 Node: recover_cancel_req
Start Level 3 Node: recover_check recover_check End Level 3 Node: recover_check
Start Level 3 Node: recover_check_req recover_check_req End Level 3 Node: recover_check_req
Start Level 3 Node: recover_config recover_config End Level 3 Node: recover_config
Start Level 3 Node: recover_ignore recover_ignore End Level 3 Node: recover_ignore
Start Level 3 Node: recover_ignore_req recover_ignore_req End Level 3 Node: recover_ignore_req
Start Level 3 Node: recover_replace recover_replace End Level 3 Node: recover_replace
Start Level 3 Node: recover_replace_req recover_replace_req End Level 3 Node: recover_replace_req
Start Level 3 Node: recover_req recover_req End Level 3 Node: recover_req
Start Level 3 Node: recover_start recover_start End Level 3 Node: recover_start
Start Level 3 Node: recover_state recover_state End Level 3 Node: recover_state
Start Level 3 Node: recover_state_check recover_state_check End Level 3 Node: recover_state_check
Start Level 3 Node: recover_volume recover_volume End Level 3 Node: recover_volume
Start Level 3 Node: scheduler_activate_job scheduler_activate_job End Level 3 Node: scheduler_activate_job
Start Level 3 Node: scheduler_create_job scheduler_create_job End Level 3 Node: scheduler_create_job
Start Level 3 Node: scheduler_deactivate_job scheduler_deactivate_job End Level 3 Node: scheduler_deactivate_job
Start Level 3 Node: scheduler_delete_job scheduler_delete_job End Level 3 Node: scheduler_delete_job
Start Level 3 Node: scheduler_list_jobs scheduler_list_jobs End Level 3 Node: scheduler_list_jobs
Start Level 3 Node: scheduler_start scheduler_start End Level 3 Node: scheduler_start
Start Level 3 Node: scheduler_state scheduler_state End Level 3 Node: scheduler_state
Start Level 3 Node: scheduler_stop scheduler_stop End Level 3 Node: scheduler_stop
Start Level 3 Node: service_connect service_connect End Level 3 Node: service_connect
Start Level 3 Node: service_register service_register End Level 3 Node: service_register
Start Level 3 Node: service_release service_release End Level 3 Node: service_release
Start Level 3 Node: service_unregister service_unregister End Level 3 Node: service_unregister
Start Level 3 Node: show show End Level 3 Node: show
Start Level 3 Node: show_list show_list End Level 3 Node: show_list
Start Level 3 Node: show_next show_next End Level 3 Node: show_next
Start Level 3 Node: sql_connect sql_connect End Level 3 Node: sql_connect
Start Level 3 Node: sql_execute sql_execute End Level 3 Node: sql_execute
Start Level 3 Node: sql_executenice sql_executenice End Level 3 Node: sql_executenice
Start Level 3 Node: sql_fetch sql_fetch End Level 3 Node: sql_fetch
Start Level 3 Node: sql_fetchnice sql_fetchnice End Level 3 Node: sql_fetchnice
Start Level 3 Node: sql_info sql_info End Level 3 Node: sql_info
Start Level 3 Node: sql_recreateindex sql_recreateindex End Level 3 Node: sql_recreateindex
Start Level 3 Node: sql_release sql_release End Level 3 Node: sql_release
Start Level 3 Node: sql_updatestat sql_updatestat End Level 3 Node: sql_updatestat
Start Level 3 Node: sql_updatestat_per_systemtable sql_updatestat_per_systemtable End Level 3 Node: sql_updatestat_per_systemtable
Start Level 3 Node: trace_clear trace_clear End Level 3 Node: trace_clear
Start Level 3 Node: trace_flush trace_flush End Level 3 Node: trace_flush
Start Level 3 Node: trace_off trace_off End Level 3 Node: trace_off
Start Level 3 Node: trace_on trace_on End Level 3 Node: trace_on
Start Level 3 Node: trace_prot trace_prot End Level 3 Node: trace_prot
Start Level 3 Node: trace_protopt trace_protopt End Level 3 Node: trace_protopt
Start Level 3 Node: trace_show trace_show End Level 3 Node: trace_show
Start Level 3 Node: user_create user_create End Level 3 Node: user_create
Start Level 4 Node: AccessSQL: Accessing an SQL Session AccessSQL: Accessing an SQL Session End Level 4 Node: AccessSQL: Accessing an SQL Session
Start Level 4 Node: AccessUtility: Accessing a Utility Session AccessUtility: Accessing a Utility Session End Level 4 Node: AccessUtility: Accessing a Utility Session
Start Level 4 Node: Backup: Carrying Out Backups Backup: Carrying Out Backups End Level 4 Node: Backup: Carrying Out Backups
Start Level 4 Node: DBFileRead: Accessing the Database Files DBFileRead: Accessing the Database Files End Level 4 Node: DBFileRead: Accessing the Database Files
Start Level 4 Node: DBInfoRead: Displaying Status Information DBInfoRead: Displaying Status Information End Level 4 Node: DBInfoRead: Displaying Status Information
Start Level 4 Node: DBStart: Starting the Database DBStart: Starting the Database End Level 4 Node: DBStart: Starting the Database
Start Level 4 Node: DBStop: Stopping the Database DBStop: Stopping the Database End Level 4 Node: DBStop: Stopping the Database
Start Level 4 Node: EvtDispMgm: Managing the Event Dispatcher EvtDispMgm: Managing the Event Dispatcher End Level 4 Node: EvtDispMgm: Managing the Event Dispatcher
Start Level 4 Node: ExecLoad: Running the Loader Program ExecLoad: Running the Loader Program End Level 4 Node: ExecLoad: Running the Loader Program
Start Level 4 Node: InstallMgm: Managing the Installations InstallMgm: Managing the Installations End Level 4 Node: InstallMgm: Managing the Installations
Start Level 4 Node: LoadSysTab: Loading the System Tables LoadSysTab: Loading the System Tables End Level 4 Node: LoadSysTab: Loading the System Tables
Start Level 4 Node: ParamCheckWrite: Accessing the Database Parameters ParamCheckWrite: Accessing the Database Parameters End Level 4 Node: ParamCheckWrite: Accessing the Database Parameters
Start Level 4 Node: ParamFull: Accessing the Database Parameters ParamFull: Accessing the Database Parameters End Level 4 Node: ParamFull: Accessing the Database Parameters
Start Level 4 Node: ParamRead: Accessing the Database Parameters ParamRead: Accessing the Database Parameters End Level 4 Node: ParamRead: Accessing the Database Parameters
Start Level 4 Node: Recovery: Restoring Backups Recovery: Restoring Backups End Level 4 Node: Recovery: Restoring Backups
Start Level 4 Node: SchedulerMgm: Managing the Scheduler SchedulerMgm: Managing the Scheduler End Level 4 Node: SchedulerMgm: Managing the Scheduler
Start Level 4 Node: Scheduling: Scheduling DBM Commands Scheduling: Scheduling DBM Commands End Level 4 Node: Scheduling: Scheduling DBM Commands
Start Level 4 Node: SharedMemoryAdmin: Managing the Shared Memory SharedMemoryAdmin: Managing the Shared Memory End Level 4 Node: SharedMemoryAdmin: Managing the Shared Memory
Start Level 4 Node: SystemCmd: Executing Operating System Commands SystemCmd: Executing Operating System Commands End Level 4 Node: SystemCmd: Executing Operating System Commands
Start Level 4 Node: UserMgm: Managing Database Manager Operators UserMgm: Managing Database Manager Operators End Level 4 Node: UserMgm: Managing Database Manager Operators
Start Level 3 Node: user_delete user_delete End Level 3 Node: user_delete
Start Level 3 Node: user_get user_get End Level 3 Node: user_get
Start Level 3 Node: user_getall user_getall End Level 3 Node: user_getall
Start Level 3 Node: user_getrights user_getrights End Level 3 Node: user_getrights
Start Level 3 Node: user_logon user_logon End Level 3 Node: user_logon
Start Level 3 Node: user_name_get user_name_get End Level 3 Node: user_name_get
Start Level 3 Node: user_put user_put End Level 3 Node: user_put
Start Level 3 Node: user_rename user_rename End Level 3 Node: user_rename
Start Level 3 Node: user_sap user_sap End Level 3 Node: user_sap
Start Level 3 Node: user_sysdba user_sysdba End Level 3 Node: user_sysdba
Start Level 3 Node: user_system user_system End Level 3 Node: user_system


-10905: Invalid reply packet structure - SAP Documentation

Background documentation -10905: Invalid reply packet structure

Explanation

The internal structure of the buffer for connecting the database instance to the client is inconsistent.

User Response

Check the kernel log for more information about the error.


Explorer Tree - SAP Documentation

Background documentation Explorer Tree

The Explorer tree contains database landscapes and user management functions. Most Database Studio functions are available via the context menu in the Explorer tree.

Note that depending on your configuration, nodes further down in the hierarchy may be shown when opening Database Studio.

World

  • Local

    • My Landscape

      • Servers

        • Local

          <database_1>

          ...

          <database_n>

        • Other database computers

    • User-defined database landscapes

  • User Groups

  • Users

  • Roles

  • Permissions

More Information

More information: Managing Database Landscapes


-7501: ProgramaticId not found - SAP Documentation

Background documentation -7501: ProgramaticId not found

Explanation

The programmatic ID specified in a CREATE PACKAGE statement could not be found in the registration database.This could be due to a spelling mistake or the relevant library has not been registered correctly.

User Response

Correct the spelling mistake or register the library.


-743: Input string too long - SAP Documentation

Background documentation -743: Input string too long

Explanation

The contents of a character string are longer than the database instance is capable of storing. In ANSI SQL mode, the error message TRUNCATED is output for floating point numbers which were truncated.

User Response

Set the input variable to a string which corresponds to the length of the database variable or adapt the input variable to the format used in the database. In ANSI SQL mode, change either the variable values or the external data type.


SQL Locks - SAP Documentation

Procedure documentation SQL Locks

The Performance user menu of the DBA Cockpit contains, among other things, a display of all active and required locks. Exclusive locks mean that other users cannot access the locked entry. These locks can significantly interfere with the performance of the SAP system and the database system.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] SQL Locks [image] .

Result

The following user menus are available:

  • Wait Situations

  • Overview of SQL Locks

Determining the User Who Triggered a Lock

In a database belonging to an SAP system, the name of a standard user could be SAPR3. You can use the Task Manager to find the task ID (ID) and the corresponding application PID and application server.

Then use the Process Overview (transaction code SM50) or the Application Server Overview (transaction code SM51) to find out which SAP work process triggered the lock request or lock.

More Information

Definitions of the System Tables, LOCKS

Concepts of the Database System, Locks


Database Studio Preferences: Logging - SAP Documentation

Background documentation Database Studio Preferences: Logging

Logging
Property | Comments
ERROR | The system logs errors only.
WARNING | The system logs errors and warnings (default log level).
INFO | The system logs errors, warnings, and information messages.
TRACE, DEBUG, ALL | The system logs errors, warnings, and information messages.


TRANSFORMATIONSTEPS - SAP Documentation

Object documentation TRANSFORMATIONSTEPS

The system table SYSLOADER.TRANSFORMATIONSTEPS describes a Loader transformation at table level.

Structure

TRANSFORMATIONSTEPS
PACKAGEGUID | CHAR(24) BYTE | Unique identification of the transformation package
TRANSFORMATION | CHAR(32) | Transformation type (EXPORT | IMPORT | UPDATE)
OWNER | CHAR(32) | Table owner
SCHEMANAME | CHAR(32) | Schema name
TABLENAME | CHAR(32) | Table name
CATALOGSTREAMNAME | CHAR(254) | Name of the CATALOG data stream
CATALOGSTREAMFORMAT | CHAR(32) | Format of the CATALOG data stream (DDL | XML)
DATASTREAMNAME | CHAR(254) | Name of the DATA data stream
DATASTREAMFORMAT | CHAR(32) | Format of the DATA data stream (CSV | DDL | FWV | PAGES | RECORDS)
DATASTREAMHEADERBLOCK | FIXED(6,0) | Start position of the header of the DATA data stream (in 2 GB blocks)
DATASTREAMHEADERPOS | FIXED(10,0) | Start position of the header of the DATA data stream (in bytes, less than 2 GB)
DATASTREAMDATABLOCK | FIXED(6,0) | Start position of the data of the DATA data stream (in 2 GB blocks)
DATASTREAMDATAPOS | FIXED(10,0) | Start position of the data of the DATA data stream (in bytes, less than 2 GB)
DATASTREAMTRAILERBLOCK | FIXED(6,0) | Start position of the trailerof the DATA data stream (in 2 GB blocks)
DATASTREAMTRAILERPOS | FIXED(10,0) | Start position of the trailer of the DATA data stream (in bytes, less than 2 GB)
RESTART | BOOLEAN | Transformation step was executed (TRUE) or not (FALSE)
START | FIXED(10,0) | Number of transformed rows

More Information

Loader, Transformation

Loader, Loader System Tables

Definitions of the System Tables


Jobs - SAP Documentation

Background documentation Jobs

The following user menus are available in the DBA Cockpit:

  • Central Calendar

  • DBA Planning Calendar

  • The DBA Log

  • Setting Up the DBA Planning Calendar

More Information

DBA Cockpit: SAP MaxDB


-7040: Referential constraint not allowed - SAP Documentation

Background documentation -7040: Referential constraint not allowed

Explanation

There is already a referential CONSTRAINT definition with the specified referencing table. Moreover, CASCADE dependency arises. Under these conditions, all CONSTRAINT definitions with the indicated referencing table must specify either CASCADE or RESTRICT.

User Response

Rethink the desired effect, because it would result in basically contesting situations. You can view information about existing referential CONSTRAINT definitions using a QUERY statement issued on the DOMAIN.FOREIGNKEYCOLUMNS system table.


Landscape Administration - SAP Documentation

Background documentation Landscape Administration

With Database Studio, you can manage database landscapes.

More Information

Database Studio,

  • Managing Database Landscapes

  • Showing or Hiding Databases

  • Monitoring Databases in a Database Landscape


EXPLAIN Statement (explain_statement) - SAP Documentation

Background documentation EXPLAIN Statement (explain_statement)

The EXPLAIN statement (explain_statement) describes the search strategy used internally by the database system for a QUERY statement or SINGLE SELECT statement (statements for searching for certain rows in specific tables). This statement indicates in particular whether and in which form key columns or indexes are used for the search.

Structure

Syntax Syntax

  1. <explain_statement> ::=
  EXPLAIN [(<result_table_name>)] <query_statement>
| EXPLAIN [(<result_table_name>)] <single_select_statement>
End of the code.
Examples

SQL Optimizer, Analyzing Search Strategies Using the EXPLAIN Statement

Explanation

The EXPLAIN statement can be used to check the effect that creating or deleting indexes has on the choice of search strategy for the specified SQL statement. It is also possible to estimate the time needed by the database system to process the specified SQL statement. The specified QUERY or SINGLE SELECT statement is not executed while the EXPLAIN statement is being executed.

The EXPLAIN statement generates a result table. This result table may be named. If the optional name specification is missing, the result table is given the name SHOW. The sequence in which the SELECT is processed is described by the order of the rows in the result table.

Structure of the EXPLAIN Result Table

Column

Description

Data Type

SCHEMANAME

Schema name/owner

CHAR(64)

TABLENAME

Table Name

CHAR(64)

COLUMN_OR_INDEX

Shows which key column, inverted column or index is used by the system for the strategy

CHAR(64)

STRATEGY

Shows which search strategy or strategies the system uses and whether the system generates a result table.

The system generates a result table when RESULT IS COPIED is contained in the last result line of the STRATEGY column.

More information: SQL Optimizer,

  • List of All Search Strategies

  • STRATEGY Column

CHAR(40)

PAGECOUNT

Cost determination result for the selected search strategy

This column shows which sizes are assumed for the tables or, in the case of certain strategies, for the indexes.

These sizes affect which search strategy is selected by the system.

To update the defined sizes, use the UPDATE STATISTICS statement or the relevant database tool function.

You can query the defined sizes by selecting the system table OPTIMIZERINFORMATION. You can query the current sizes of tables or indexes by selecting the TABLESTORAGEDETAILS and INDEXSTORAGEDETAILS system tables. When you discover substantial differences between the values in OPTIMIZERINFORMATION and TABLESTORAGEDETAILS, then execute the UPDATE STATISTICS statement for these tables.

If the system discovers during a search in a table that the values determined by the last UPDATE STATISTICS statement are extremely low, a row is entered in the SYSUPDSTATWANTED system table that contains the table name. In all other cases, rows are entered in this system table that describe columns in tables. The UPDATE STATISTICS statement should be executed for tables and table columns that are described in the SYSUPDSTATWANTED system table.

The last row contains the estimated SELECT cost value in the PAGECOUNT column. This estimated SELECT cost value forms the basis of the COSTLIMIT and COSTWARNING information in the SQL statements for creating and changing users (such as the CREATE USER and ALTER USER statements).

CHAR(10)

More Information

  • Database Administration, SQL Optimizer

  • Database Administration in CCMS,

    SQL Optimizer in CCMS

    Diagnosis

  • Database Studio, Analyzing SQL Statements (EXPLAIN)

  • Data Query


VIEWCOLUMNS - SAP Documentation

Example documentation VIEWCOLUMNS

Use of the system table DOMAIN.VIEWCOLUMNS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define view tables. Proceed as described in SQL Tutorial, View Tables.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table VIEWCOLUMNS to determine the following database information, among other things:

  • All tables on which the view table CUSTOMER_ADDR is based

    SELECT tablename, viewcolumnname, columnname

    FROM DOMAIN.VIEWCOLUMNS

    WHERE schemaname = 'HOTEL'

    AND viewname = 'CUSTOMER_ADDR'

  • Column of the table on which the CITYcolumn of the view table CUSTOMER_ADDR is based

    SELECT tablename, columnname

    FROM DOMAIN.VIEWCOLUMNS

    WHERE schemaname = 'HOTEL'

    AND viewname = 'CUSTOMER_ADDR'

    AND viewcolumnname = 'CITY'

  • Determining whether the TITLE column of the CUSTOMERtable is used in a view table

    SELECT schemaname, viewname, viewcolumnname

    FROM DOMAIN.VIEWCOLUMNS

    WHERE tablename = 'CUSTOMER'

    AND columnname = 'TITLE'

More Information

All view tables: see VIEWS

Table in a view definition: see VIEWDEFS

Existence of a view table: see TABLES


-24938: ERR_NOENTRY - no entry found - SAP Documentation

Background documentation -24938: ERR_NOENTRY - no entry found

Explanation

The requested registration of the database instance was not found.

User Response

Use an existing registration to execute the DBM command.


Creating and Installing the SAP MaxDB PHP Extension on Linux - SAP Documentation

Procedure documentation Creating and Installing the SAP MaxDB PHP Extension on Linux

You create the software for the MaxDB PHP extension from the source code and install this software on your computer.

Prerequisites

  • You have installed the following programs:

    • gcc compiler, version 2.95 or higher

    • autoconf, version 2.52 or higher

    • libtool, version 1.5.6 or higher

  • You have downloaded the source code for PHP 4.3.x or 5.0.x from http://php.net/downloads.php and unpacked it to a local directory <php_source> on your computer.

  • You have installed the SAP MaxDB SQLDBC software (software components Base and SQLDBC). The SQLDBC files are stored in the following directories (in the following referred to as <sqldbc_path>):

    • Microsoft Windows:

      <installation_path>\pgm

    • Unix/Linux:

      <installation_path>\lib or <installation_path>\lib\lib64

    Note Note

    You can display the installation path using the dbm_getpath DBM command:

    dbmcli dbm_getpath InstallationPath

    For more information, see Database Manager CLI, dbm_getpath.

    End of the note.

Recommendation Recommendation

To reproduce the test examples described in the following, you also require a database. For this reason we recommend that you install the complete MaxDB software first, create a database and load the tutorial data to this database.

End of the recommendation.

Procedure

  1. Create the directory <php_source>/ext/maxdb

  2. Download the MaxDB PHP package maxdb-<version>.tgz from http://pecl.php.net/package/maxdb and unpack it to a temporary directory on your computer:

    tar –C <tmp_folder> –xvzf maxdb-<version>.tgz

  3. Copy the contents of directory <maxdb_version> to the directory <php_source>/ext/maxdb:

    cp –r <tmp_folder>/<maxdb_version> <php_source>/ext/maxdb

  4. Go to the directory <php_source>:

    cd <php_source>

  5. Create the new scripts for compiling the source code: To do so, enter the following command:

    ./buildconf --force

  6. Specify the parameters for creating the PHP software with the SAP MaxDB extension:

    ./configure --with-maxdb=<sqldbc_path> --prefix=<php_with_maxdb> [--<parameter>] [...]

    <parameter> :: = <option>=<value> | <option>

    • Using the option with-maxdb, define the directory <sqldbc_path>.

      • If you have only installed the SAP MaxDB SQLDBC software, enter the installation directory of SQLDBC.

      • If you have installed the complete SAP MaxDB software, enter the directory for the programs and libraries used jointly by the SAP MaxDB databases and applications (<global_programs_path>).

    • Using the prefix option, you can specify the directory <php_with_maxdb> into which PHP with the SAP MaxDB is to be installed. Note that you need write permissions for this directory to be able to create the software in it.

      If you do not specify this option, the system uses the /usr/local directory as default.

      Note Note

      To display all options, use the following command:

      ./configure --help

      End of the note.

  7. Open a root shell and create and install PHP with SAP MaxDB extension using the following command:

    make install

Result

PHP with SAP MaxDB support has been compiled and installed.

To check whether the installation has been successful, display the list of all installed PHP extensions installed using the following command:

<php_with_maxdb>/bin/php –m

If no errors have occurred, the PHP extension maxdb is displayed in the list.

More information: Testing the SAP MaxDB PHP Extension on Linux

Example

You have unpacked the source code for PHP 5.0.0 to the directory /home/anna/php-5.0.0

You have installed the SQLDBC software in the directory /opt/sdb/Installation_5/lib

You create and install the SAP MaxDB PHP extension as follows:

  1. Create the directories /home/anna/php-5.0.0/ext and /home/anna/tmp

  2. Unpack the SAP MaxDB PHP package maxdb-7[1].5.00.24.tgz in the directory /home/anna/tmp:

    tar /home/anna/tmp maxdb-7[1].5.00.24.tgz

  3. Copy the contents of the directory <maxdb_php>/ext/maxdb to <php_source>/ext:

    cp –r /home/anna/tmp/ext/maxdb /home/anna/php-5.0.0/ext

  4. Go to the directory where you unpacked the PHP source code:

    cd /home/anna/php-5.0.0

  5. Create the new scripts for compiling the source code:

    ./buildconf –force

  6. Using options, specify that the programs and libraries used jointly by the SAP MaxDB databases and applications are stored in the directory /opt/sdb/globalprograms, that PHP with SAP MaxDB extension is to be installed in the directory /usr and that the software is to be created both without CGI and without LIBXML support:

    ./configure --with-maxdb=/opt/sdb/globalprograms --prefix=/usr --disable-cgi –-disable-libxml

  7. Create and install the PHP software with the SAP MaxDB extension:

    make install


-23201: No ODBC driver - SAP Documentation

Background documentation -23201: No ODBC driver

Explanation

There is no ODBC driver in the SQL Studio directory.

User Response

Uninstall SQL Studio and reinstall it again.If you receive the same error message again, contact Support.


-3009: Invalid table name - SAP Documentation

Background documentation -3009: Invalid table name

Explanation

The specified table name does not comply with the syntax.

User Response

Correct the table name specified in the SQL statement.


-24978: ERR_XPSYNTAX - xparam syntax error - SAP Documentation

Background documentation -24978: ERR_XPSYNTAX - xparam syntax error

Explanation

The parameter description in the database parameter help file is incorrect.

User Response

Read the extended error text and correct the error in the file cserv.pcf, which you will find in the database installation’s env directory.


Deleting Data Volumes - SAP Documentation

Procedure documentation Deleting Data Volumes

The data of a database is permanently stored in the data volumes (data area). You can delete data volumes to reduce the size of the data area.

The system distributes the data from the deleted data volume throughout the remaining data volumes, deletes the data volume, and then releases the resources that were previously in use. Data volumes of the FILE type are deleted from the file system.

Note Note

The last data volume cannot be deleted.

End of the note.

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for accessing database parameters or utility sessions.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Data Area tab page.

  4. Select the volume.

  5. Choose Delete.... .

More Information

Concepts of the Database System,

  • Volumes (Permanent Storage)

  • Data Area


autolog_show - SAP Documentation

Background documentation autolog_show

You can display whether the automatic log backup function is on or off.

Prerequisites

You have the server permission DBFileRead or DBInfoRead.

Structure

autolog_show

Result

OK

AUTOLOG IS OFF | AUTOLOG IS ON

Values for the Reply Fields
Value | Description
AUTOLOG IS ON | Automatic log backup is on.
AUTOLOG IS OFF | Automatic log backup is off.

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, display the status of the automatic log backup function:

>dbmcli -u OLEG,MONDAY -d DEMODB autolog_show

OK

AUTOLOG IS OFF

More Information

Database Administration, Backing Up Log Entries


IMPORT DB Command - SAP Documentation

Background documentation IMPORT DB Command

You can use the Loader command IMPORT DB to import the data belonging to a database application.

Prerequisites

The IMPORT DB command can only be executed by the database system administrator. You have exported the required data using the corresponding EXPORT command.

Structure

Syntax Syntax

  1. <import_db_command> ::=
  IMPORT DB
    [<duplicates_clause>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<catalog_data_instream_part_spec> ::=
  <catalog_instream_spec>
| <data_instream_part_spec>
| <catalog_instream_spec> <data_instream_part_spec>
<catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>
<data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>

<package_spec> ::=
  PACKAGE <oustream_csv_spec>

<restart_spec> ::=
  RESTART <package_guid>
<package_guid> ::=
  <unsigned_integer>
End of the code.
<catalog_instream_spec>, <data_instream_part_spec>

Depending on whether database catalog and/or application data is imported, the following data streams are generated during import:

  • Data stream for database catalog definitions CATALOG <instream_ddl_spec>

  • Data stream for application data DATA <instream_tableformat_spec>

Only one of the formats PAGES or RECORDS is possible for the data stream for the instream_tableformat_spec application data.

See: Data Stream, PAGES, RECORDS

Syntax Syntax

  1. IMPORT DB
  [<duplicates_clause>]
  [<configuration_spec>]
  <catalog_instream_spec> <data_instream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT DB command imports the data from the database application (database catalog and application data).

Syntax Syntax

  1. IMPORT DB
  <catalog_instream_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT DB command imports the database catalog information for all database users belonging to the database application.

Syntax Syntax

  1. IMPORT DB
  [<duplicates_clause>]
  [<configuration_spec>]
  <data_instream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT DB command imports the application data for all database users.

<duplicates_clause>

You use the DUPLICATES clause to specify how to proceed when importing data from a data stream if a row with the same key as the new row already exists in the table. This clause is not evaluated if the data is imported into the database in PAGES format.

REJECT DUPLICATES | The new line is rejected with an error message (default value).
IGNORE DUPLICATES | The new line is not inserted.
UPDATE DUPLICATES | The new line overwrites the existing line.
<configuration_spec>

You can exclude tables from the import.

  • If you do not specify a data stream using CONFIGURATION <instream_csv_spec>, all the application data is imported.

  • If you specify a data stream using CONFIGURATION <instream_csv_spec>, you can exclude the application data of selected tables from the import of the instream_tableformat_spec application data. The tables must be identified in the data stream by specifying their schema and table name. The information about which tables are not exported is stored in the system tables. One way of displaying this information is to display the system table SYSLOADER.TRANSFORMATIONMODEL. The tables excluded from the export of the application data have the value TRUE in the EXCLUDE column.

The database catalog entries CATALOG <instream_ddl_spec> of all tables are always imported, regardless of the restrictions set using CONFIGURATION <instream_csv_spec>.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

<restart_spec>

You can restart the export or import using the package_guid (ID created by Loader for every command at runtime. This integer is always 24 bytes long). The user can determine the package_guid of the corresponding export or import commands from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command with the corresponding package_guid using the restart_spec syntax element.

See: Restarting

Using Third-Party Backup Tools

If you use import Loader commands to import the entire application and/or database catalog data (IMPORT DB), you can use third-party backup tools.

See: Exporting and Importing Using Third-Party Backup Tools

Result

The application data and/or database catalog are imported to the data_instream_part_spec and catalog_instream_spec data streams. If necessary, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to the package_spec data stream.

Errors: The import cannot be completed successfully. In this case, Loader logs the cause of the error in the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, IMPORT DB

More Information

Importing: Loader Commands

EXPORT DB Command

Loader Log File

Loader System Tables


-11107: Statement not prepared. - SAP Documentation

Background documentation -11107: Statement not prepared.

Explanation

You have called a MaxDB PHP function that can only be used for prepared statements.

User Response

Use prepared statements or a different function.


USE SCHEMA Command - SAP Documentation

Background documentation USE SCHEMA Command

You can use the Loader command USE SCHEMA to specify which schema the current user should use.

Structure

Syntax Syntax

  1. <use_schema_command> ::=
  USE SCHEMA <schema_name>
End of the code.

If the name of the schema is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in double quotation marks.

This setting applies if no other schema is specified with a USE SCHEMA, USE USER or SET CURRENT SCHEMA command.

Example

Example Example

USE SCHEMA hotel

End of the example.

The current database user should use the HOTEL schema.

More Information

Opening a Session: Loader Commands

Opening a Database Session: Loader CLI Options


-918: Stack overflow - SAP Documentation

Background documentation -918: Stack overflow

Explanation

The maximum stack usage allowed for a task was reached as a result of nested calls of database procedures, triggers or subqueries, or a very complicated value specification. Further nesting is not possible. The execution of the command was canceled.

User Response

  1. Further limit the nesting depth of the calls with suitable queries in the database procedures and triggers.

  2. Try to limit the nesting depth by dividing the SQL statement into several substatements.


-23060: You do not have the permission to delete this object - SAP Documentation

Background documentation -23060: You do not have the permission to delete this object

Explanation

You cannot delete an object from the SQL Studio that has been released by someone else.

User Response

Contact the owner of the object.


Calling the WebDAV Servlet - SAP Documentation

Procedure documentation Calling the WebDAV Servlet

Prerequisites

  • You have installed the WebDAV Servlet. If you have used the default values during installation, the WebDAV servlet is installed with the context path /sdbwebdav

    More information: Installing the WebDAV Servlet

  • You have started your servlet container.

    More information: Servlet container documentation

Procedure

Enter the following address in your web browser:

http://<servlet_container_computer>:<servlet_container_port>/<context_path>

<servlet_container_computer> | Computer on which the servlet container is installed
<servlet_container_port> | Port used for the servlet container
<context_path> | Context path that has been configured during installation of the WebDAV servlet

Example

You have installed the servlet container Apache Tomcat on the computer PARMA, selected the default value 8080 for the port and configured /mywebdav as the context path for the WebDAV servlet:

http://PARMA:8080/mywebdav


-24990: ERR_ NOBACKUPSESSION - no backup session available - SAP Documentation

Background documentation -24990: ERR_ NOBACKUPSESSION - no backup session available

Explanation

The DBM command is only permitted if Save or Restore is active.

User Response

First start the backup session you require using the backup_start or recover_start DBM commands, then execute further commands depending on how the Save/Restore runs.Check whether the save/restore process started properly.Please note that reading a database backup will override the current state of your database instance.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-24976: ERR_PARAMEXIST - param file of database already exists - SAP Documentation

Background documentation -24976: ERR_PARAMEXIST - param file of database already exists

Explanation

A parameter file already exists for the specified database instance. The parameter file can be initialized only if no parameter file exists. This prevents the configuration from being lost.

User Response

Delete the parameter file explicitly either at file-system level or using the DBM command param_rmfile. Note that this will mean the current database instance configuration will be lost.


backup_ext_ids_getfromtool - SAP Documentation

Background documentation backup_ext_ids_getfromtool

When you execute this command, the system accesses the information stored in the backup tool and writes it to a file. This information includes the external backup ID, the availability status, the backup type and the creation time of the backups of a database instance. In contrast to backup_ext_ids_get, here you enter the name of the backup tool.

To subsequently display the file content, use the DBM command for displaying external backup IDs (see: backup_ext_ids_list).

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

backup_ext_ids_getfromtool <tool_type> [<database_name>] [<database_computer>]

Options
Option | Description
<tool_type> | Backup tool, possible values are: BACK | NSR | TSM BACK: (Backint for MaxDB/ Backint for Oracle) NSR: NetWorker TSM: TSM by IBM/Tivoli
<database_name> | Name of the database
<database_computer> | Name of the database computer

Result

OK

...

In the event of errors, see Reply Format.

More Information

Glossary, Backup IDs


-1003: Too many buffers requested - SAP Documentation

Background documentation -1003: Too many buffers requested

Explanation

The storage requirements of the buffers and areas defined by the database parameters are larger than the maximum virtual storage space available for the database system. The execution of the SQL statement was canceled.

User Response

Either decrease the size or number of buffers and areas or increase the virtual storage space available to the database system. Start the database instance again.


-24983: ERR_BANOVALIDTYPE - invalid backup type - SAP Documentation

Background documentation -24983: ERR_BANOVALIDTYPE - invalid backup type

Explanation

The specified backup type is invalid.

User Response

Specify a valid backup type in your DBM command.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-10902: Invalid request packet structure - SAP Documentation

Background documentation -10902: Invalid request packet structure

Explanation

The internal structure of the buffer for connecting the client to the database instance is inconsistent.

User Response

Check the kernel log for more information about the error.


From -11000 to -11099 - SAP Documentation

Background documentation From -11000 to -11099

Perl Interface Messages

-11000 to -11099

Perl DBD messages


-3046: Invalid char position in string function - SAP Documentation

Background documentation -3046: Invalid char position in string function

Explanation

An invalid value was specified for a position in a string function.

User Response

In the SQL statement, enter a value for a position which is greater than 0 and less than or equal to the defined column width.


-4017: Unknown constraint - SAP Documentation

Background documentation -4017: Unknown constraint

Explanation

There is no CONSTRAINT definition for the specified column.

User Response

No user action required.


Logging On to a Database - SAP Documentation

Procedure documentation Logging On to a Database

Procedure

Selecting or Adding Users and Logging On

  1. In the explorer tree, go to the Servers section.

  2. In the context menu of the database, choose Login.

  3. Enter the user name and the password of the user with which you want to log on.

    Authentication Information

    Property

    Description

    User Name

    Users fall into two groups:

    • DBM operators: These users can perform administrative tasks.

    • Database users: Database users can change data in the database.

    The database system administrator (default name DBADMIN) belongs to both groups and has the most extensive authorizations.

    More information: Database Administration, Managing Users

    User Password

    The database system converts all letters to uppercase.

    To use upper and lower case letters and/or special characters for a user name or a password, select the Case Sensitive checkbox.

    More information: Database Administration, Conventions for User Names and Passwords

    Authentication by OS

    External authentication is currently only available for SAP-internal systems.

    If external authentication has been set up, select this option to log on to the database using your operating system user.

    Case Sensitive

    -

    Options

    Template

    You can save your login data as a template for use with other databases. See below.

    Communication

    In SAP systems, you can enable SSL encryption (if configured during installation)

    More information: Encryption

    Details

    To use ORACLE SQL mode instead of the SAP MaxDB internal SQL mode, select SQL Mode Oracle.

    More information: SQL Mode

    To test whether the user name and password you have entered are valid, choose Test Login.

    Note that if the database is not in the ONLINE operational state, this test fails for database users (but not for the database system administrator or DBM operators), even if the user name and the password are valid.

Selecting a Database Connection

To open some of the views and editors in the Database Studio, you have to select a database connection (database name, user name, user password) first.

More Information

  • Creating Login Templates

  • DBM Operators: Creating, Editing or Deleting

  • Creating Database Users

  • Logging Users Off from a Database


SYNONYMS - SAP Documentation

Example documentation SYNONYMS

Use of the system table DOMAIN. SYNONYMS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define synonyms. To do this, use the CREATE SYNONYM Statement (create_synonym_statement).

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table SYNONYMS to determine the following database information, among other things:

  • The table (basis table, view table) for which the PUBLIC synonym SHORT_TAB was defined

    SELECT tableowner, tablename

    FROM DOMAIN.SYNONYMS

    WHERE public = 'YES'

    AND synonymname = 'SHORT_TAB'

  • Private synonym for the CITY table of the database user MONA

    SELECT synonymname

    FROM DOMAIN.SYNONYMS

    WHERE tableschemaname = 'HOTEL'

    AND tableowner = 'MONA'

    AND tablename = 'CITY'

More Information

Existence of a synonym: see TABLES


Alerts - SAP Documentation

Background documentation Alerts

The following user menus are available in the DBA Cockpit:

  • Alert Monitor (old version)

  • Alert Monitor (new version)

You can call different instances of the Alert Monitor. For a description of Alert Monitor functions, see the following sections:

  • Database Alert Monitor

  • liveCache Alert Monitor

More Information

DBA Cockpit: SAP MaxDB


-7084: Parameter change not allowed - SAP Documentation

Background documentation -7084: Parameter change not allowed

Explanation

You tried to modify the value of an installation parameter using a SET statement. The database system, however, could not modify the value for one of the following reasons:

  • The installation parameter is not modifiable.

  • The installation parameter is not modifiable when in the ONLINE or ADMIN operating state.

User Response

The following options are available:

  • Do without the modification.

  • If the installation parameter cannot be modified when in the ONLINE or ADMIN operating state, change the state of the database instance to OFFLINE, make the necessary modification, and then change the database instance back to the required operating state.


FUNCTIONS - SAP Documentation

Example documentation FUNCTIONS

Use of the system table DOMAIN.FUNCTIONS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create database functions. Proceed as described in SQL Tutorial, Database Functions.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table FUNCTIONS to determine the following database information, among other things:

  • All database functions of the HOTELschema that were created in the last 10 days

    SELECT schemaname, functionname

    FROM DOMAIN.FUNCTIONS

    WHERE schemaname = 'HOTEL' AND createdate >= SUBDATE(DATE,10)

  • Parameters of the database function AVGPRICE

    SELECT schemaname, functionname, parameter

    FROM DOMAIN.FUNCTIONS

    WHERE functionname = 'AVGPRICE'

More Information

Parameters for a database function: See DBPROCPARAMS


Indexes - SAP Documentation

Procedure documentation Indexes

The Space user menu of the DBA Cockpit contains, among other things, numerous options for analyzing indexes.

Procedure

  1. Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Space [image] Indexes [image] .

  2. Enter the names of the schema, the tables and the index.

    When you specify the names, you can enter * as a wildcard for any character string (T0* for all table names that start with T0, for example).

    If you begin the name of a database object with an ", the subsequent letters are not changed into all caps, but instead are used for the query as you have entered them.

  3. Decide whether you want to filter the output:

    Only Display Bad Indexes

    Only Display Inaccessible Indexes

    Only Display Unused Indexes

    For information about the different filter options, see the online help for the SAP system.

  4. To display the list of indexes you want, select Adjust to Output Criteria.

Result

You can choose between the following analysis options:

  • More Information:

    You can display the Details for more information about tables and indexes.

    If you select a table, information is displayed to you (this display of information is described in Tables/Views/Synonyms).

    When you select an index, the CREATE INDEX statement that was used to generate the index is displayed.

  • Allow/Prevent Index Access:

    You can specify whether or not an index is used to access the data.

  • Reset Usage Counter:

    The database system records index usage in a counter. You can reset this usage counter.

  • Restore Index:

    You can restore defective indexes. Restoring an index may take a long time, depending on the size of the tables.

    You cannot access the tables related to an index while the index is being restored. It is therefore advisable to restore indexes at times when there is a reduced load on the system. You should restore indexes for larger tables in the background.

More Information

Missing Tables and Indexes

Database Management in CCMS, Index Analysis, DB Filling/Tables and Indexes


-10328: Mismatch of number of stream members for parameter (<number>) (application <count1>, database <count2>) - SAP Documentation

Background documentation -10328: Mismatch of number of stream members for parameter (<number>) (application <count1>, database <count2>)

Explanation

The description of the liveCache stream’s structure has a different number of elements in the database than in the application program.

User Response

Check the database procedure and the application program for inconsistencies or a conflict of versions.


-28822 to -28999: Internal Error - SAP Documentation

Background documentation -28822 to -28999: Internal Error

Explanation

Internal liveCache system errors.

User Response

Contact Support.


COLUMNS - SAP Documentation

Example documentation COLUMNS

Use of the system table DOMAIN.COLUMNS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table COLUMNS to determine the following database information, among other things:

  • Columns of the table RESERVATION in the order in which they were defined, together with the respective comments.

    SELECT columnname, comment

    FROM DOMAIN.COLUMNS

    WHERE tablename = 'RESERVATION' ORDER BY pos

  • Data types of all columns of the table CUSTOMER

    SELECT columnname, datatype, len, dec, codetype

    FROM DOMAIN.COLUMNS

    WHERE tablename = 'CUSTOMER'

  • All columns of the base tables of the schema HOTEL that have the data type DATE

    SELECT tablename,columnname

    FROM DOMAIN.COLUMNS

    WHERE schemaname = 'HOTEL'

    AND tabletype = 'TABLE'

    AND datatype = 'DATE'

  • All columns of the table HOTEL for which the default value was defined, as well as the default value itself.

    SELECT columnname, "DEFAULT"

    FROM DOMAIN.COLUMNS

    WHERE schemaname = 'HOTEL'

    AND tablename = 'HOTEL'

    AND "DEFAULT" IS NOT NULL

Note that the column DEFAULT has to be defined as a special identifier (Identifier in double quotes), since DEFAULT is a reserved keyword.

  • All primary key columns of the table ROOM, sorted according to sequence in the primary key.

    SELECT columnname

    FROM DOMAIN.COLUMNS

    WHERE tablename = 'ROOM' AND mode = 'KEY' ORDER BY keypos

  • All columns of the table CUSTOMER defined as NOT NULL.

    SELECT columnname

    FROM DOMAIN.COLUMNS

    WHERE tablename = 'CUSTOMER' AND mode = 'MAN'

  • All columns of the table RESERVATION that can be changed by the user MONA.

    SELECT columnname

    FROM DOMAIN.COLUMNS

    WHERE tablename = 'RESERVATION' AND columnprivileges LIKE '%UPD%'

  • All columns of the table RESERVATION that can be changed by the user MONA, for whom this privilege may be passed on.

    SELECT columnname

    FROM DOMAIN.COLUMNS

    WHERE tablename = 'RESERVATION' AND columnprivileges LIKE '%UPD+%'

The prerequisite for the following example is the definition of the domains and their use in the tables. Proceed as described in SQL Tutorial, Domains.

  • All table columns for which the definition of the domain name_domain or birthday_domain was specified.

    SELECT schemaname, tablename, columnname

    FROM DOMAIN.COLUMNS

    WHERE domainname = 'NAME_DOMAIN' OR domainname = 'BIRTHDAY_DOMAIN'

More Information

Columns in index: see INDEXCOLUMNS

Columns in referential constraint: see FOREIGNKEYCOLUMNS

Primary table or view table columns in the view table: see VIEWCOLUMNS


Connectivity - SAP Documentation

Procedure documentation Connectivity

You will find details in the database alert monitor or the liveCache alert monitor about the DBMRFC or Native SQL connection from the application server on which data collection for alert monitoring was started to the database or liveCache computer. It also provides you with information if a severe problem occurs with a data collector.

Procedure

Open the Database Alert Monitor or liveCache Alert Monitor. Select Connectivity.

Result

You receive the following displays in the node DMBRFC and Native SQL:

  • DBM Command Execution

    A green alert shows that the DBMRFC connection is working correctly.

  • SQL Statement Execution

    A green alert shows that the connection for executing SQL statements is working correctly.

  • Server of Data Collection

    The name of the application server on which data collection for alert monitoring was started is shown.

In the node Check Data Collection, you can view the Disabled Data Collectors display. The monitoring architecture locks a data collector if it detects serious problems. This means that it is not started again, even if it is called manually using CCMS Monitoring (transaction RZ20). Serious problems with a data collector could, for example, include a data collector causing a short dump or running for too long from the point of view of the monitoring architecture.

The Disabled Data Collectors reports whether one or more of the four monitoring architecture data collectors have been locked.

  • A green alert shows that none of the four data collectors has been locked.

  • A red alert shows that at least one of the four data collectors has been locked and is therefore no longer called.

More Information

DBA Cockpit, Remote SQL Server

Database Assistant/liveCache Assistant, Remote SQL Server


-25396: Error getting share lock for table <schema_name>.<table_name>: <kernel_error> - SAP Documentation

Background documentation -25396: Error getting share lock for table <schema_name>.<table_name>: <kernel_error>

Explanation

The EXPORT SCHEMA command puts shared locks on all tables. Only then can the export start.If the creation of shared locks for one or more tables fails, the EXPORT SHEMA command terminates with an error.

User Response

Ensure that shared locks can be set on all tables. Then repeat the EXPORT SCHEMA command.


-25345: Definition of source and target table <table_name> do not match: <description> - SAP Documentation

Background documentation -25345: Definition of source and target table <table_name> do not match: <description>

Explanation

You executed a command to import data in the PAGES format. The command was terminated because the definitions of the table from which the export was executed and the definition of the table to which the export should be executed are different. The definition <description> describes how the two tables are different.

User Response

Make sure that the definition of the target table is not different from the source table. Execute the command again.


-24924: ERR_DBREQ: cannot start database kernel request - SAP Documentation

Background documentation -24924: ERR_DBREQ: cannot start database kernel request

Explanation

The database instance was unable to start the backup, check, or restore process.

User Response

Attempt to fix the problem with the help of the extended error description. If you cannot solve the problem, contact Support.


LOCKS - SAP Documentation

Example documentation LOCKS

Use of the system table DOMAIN.LOCKS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table LOCKS to determine the following database information, among other things:

  • All locks that are currently held on table ROOM

    SELECT lockmode, lockstate, rowidlength, rowidhex, rowid

    FROM DOMAIN.LOCKS

    WHERE tablename = 'ROOM'

  • All locks that the current database user holds in that database session on table ROOM

    SELECT lockmode, lockstate, rowidlength, rowidhex, rowid

    FROM DOMAIN.LOCKS, SYSINFO.SESSIONS

    WHERE tablename = 'ROOM'

    AND locks.session = sessions.sessionid

    See also: System Tables, SESSIONS

  • All locks that are currently held on the table with the hexadecimal internal identification 000000000000035D

    SELECT lockmode, lockstate, rowidlength, rowidhex, rowid

    FROM DOMAIN.LOCKS

    WHERE tableid = X'000000000000035D'

If the current database user is the database administrator (DBA user) or the database system administrator, then all currently held locks are shown.

Database users that belong to other user classes only see the locks held by that one database user.


-8018: Index name must be unique - SAP Documentation

Background documentation -8018: Index name must be unique

Explanation

  1. This error message can occur when a DROP INDEX statement is executed. Indexes with identical names were created for separate tables. Therefore the name of the index to be deleted is not unique.

  2. There is only one named single-column index for this column. The attempt was made to delete the index for this column without specifying its name.

User Response

  1. Specify the name of the table to which the index to be deleted refers in the DROP INDEX statement.

  2. Delete the index, specifying its name.


-1105: Too complicated SQL statement (Too much data) - SAP Documentation

Background documentation -1105: Too complicated SQL statement (Too much data)

Explanation

Within the system, more space is needed to represent the data of the SQL statement than is available.

User Response

Simplify the SQL statement or split it into several SQL statements. If this is not possible, check whether the database parameter PACKET_SIZE can be increased, because the amount of storage space available depends on that parameter. An increase in excess of 32 KB will not increase the amount of space any further.


Database Studio Preferences: Database Studio - SAP Documentation

Background documentation Database Studio Preferences: Database Studio

Database Studio Preferences

Property

Comments

Restore connection state of databases on startup

When Database Studio is started, the information about the state of all databases in the explorer tree is updated.

Name of database in editor title

Database names are displayed in editor titles.

Database identifier upper case

Names of database objects can only be entered in upper case (all caps).

Show “My Repository” tree in explorer view

More information: Database Studio Screen Areas

Show “My Current Work” tree in explorer view

See above.

Retrieve all database catalog objects

All database objects are displayed.

Show only own database catalog objects

Only the database objects that belong to the current database user are displayed.

Show database catalog sorted by schema

If you choose this setting, the database objects are displayed in the Explorer sorted by the schema they belong to. Otherwise, the database objects are displayed in the Explorer sorted by the user they belong to.

Default action for database tables:

  • Show Content

  • Show Definition

Action which is carried out when double-clicking a database table.

Preferred unit for size values

You can choose between KB, MB, GB and the database-internal PAGES units.

Show console for database management commands

Internal commands are displayed in a console window.


-11109: Column/Parameter <number> truncated. - SAP Documentation

Background documentation -11109: Column/Parameter <number> truncated.

Explanation

The system detected that the data exceeded the maximum permissible length while reading the data from the bound LOB column <number> or from the bound parameter <number>.

User Response

Increase the value of the property maxdb.long_readlen in the configuration file named PHP.ini.


-6001: Duplicate column name - SAP Documentation

Background documentation -6001: Duplicate column name

Explanation

  1. The column names of a table must differ from each other. Base tables without user-defined key columns and named result tables contain the implicitly created column SYSKEY.

  2. Named result tables with columns which have not been explicitly named and which do not inherit a column name from the underlying base table implicitly get the column name "EXPRESSION_", where _ stands for a positive integer.

  3. A column must not be specified more than once in an INSERT or UPDATE statement or in a sequence of key specifications.

User Response

  1. Use different column names.

  2. In a CREATE VIEW or QUERY statement, uniqueness of column names can be achieved by specifying reference names in the selected columns. In a CREATE VIEW statement, uniqueness can also be obtained by specifying alias names.

  3. Correct the repeated specification of the same column.


Database Activities - SAP Documentation

Procedure documentation Database Activities

The Space user menu of the DBA Cockpit contains, among other things, a display of the database activities of the last four weeks.

You can only use the display for the basis database of the SAP system. These values are gathered from the last time database monitoring was started.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Space [image] DB Activities [image] .

Caution Caution

For SAP NetWeaver 7.1, use the database assistant to call the Database Activities display.

End of the caution.

Result

You receive information about database activities for the previous four weeks. You can set this output time frame. A collector logs the database activities of the database once a day, so that you can monitor activities over a specified period.

You can choose from the following views:

  • SQL Commands: Total number of SQL statements, commits, rollbacks, prepares

  • Cache Activities: Cache hit rates, number of reads and writes to the database

  • Other Activities: Number of table scans, log activities, lock information

Deleting Statistics Data

Deleting statistics data can be done manually by specifying a time period/date or automatically by specifying a time period (in weeks).

More Information

Activities Overview

Database Administration in CCMS, Database Monitoring


Displaying Information About Caches (Working Memory Areas) - SAP Documentation

Procedure documentation Displaying Information About Caches (Working Memory Areas)

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

  • The database is in the ONLINE operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Caches tab page.

    Cache Information

    Property

    Description

    Cache Sizes

    Size of the different working memory areas.

    More information: Concepts of the Database System, Working Memory Areas

    Cache Accesses

    The hit rates show whether the caches have been configured sufficiently large. The lower the hit rates, the poorer your system's performance.

    Recommendation Recommendation

    We recommend the following hit rates:

    • Data cache > 99%

    • Converter > 98%

    • Catalog cache > 90%

    End of the recommendation.

    Parameters

    Database parameters relevant to the caches

    More information: Database Administration, Database Parameters

More Information

Database Administration, Monitoring Databases


-25394: Catalog of table <table_name> changed while processing <import> command; reparse failed; To restart the command append <record_no> to the infile specification. - SAP Documentation

Background documentation -25394: Catalog of table <table_name> changed while processing <import> command; reparse failed; To restart the command append <record_no> to the infile specification.

Explanation

You executed a command (IMPORT) to import data in a table. The definition of the table was changed during the import. The database kernel returned an error when parsing the new table definition. The import is terminated.

User Response

After you have restored the initial state of the table, re-execute the import command or modify the original import command. Append the START <recordnumber> MAXROWS clause, which is recommended by the error text, to the original import command.


INDEXES - SAP Documentation

Example documentation INDEXES

Use of the system table DOMAIN.INDEXES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create indexes. Proceed as described in SQL Tutorial, Indexes.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table INDEXES to determine the following database information, among other things:

  • All indexes for the table CUSTOMER and information on which indexes are not currently being used for search operations (so have status DISABLED)

    SELECT indexname, disabled

      FROM DOMAIN.INDEXES

        WHERE tablename = 'CUSTOMER'

  • All UNIQUE indexes (regardless of which of the possible SQL statements was used to create them: CREATE INDEX statement or UNIQUE definition)

    SELECT schemaname, tablename, indexname

      FROM DOMAIN.INDEXES

        WHERE type = 'UNIQUE'

More Information

Columns in an index: see INDEXCOLUMNS


-5012: Missing definite table name - SAP Documentation

Background documentation -5012: Missing definite table name

Explanation

If the same table name was used several times in one FROM clause, the table name must always be specified with the corresponding schema name in this SQL statement.

User Response

Specify the schema names with the table names.


-24940: ERR_NEEDSYSLOGON - system logon required - SAP Documentation

Background documentation -24940: ERR_NEEDSYSLOGON - system logon required

Explanation

This DBM command requires you to log on to the operating system.

User Response

Assign an operating system user to the relevant DBM operator. Use the DBM command user_put.To activate the operating system user, log on to the Database Manager again. To do this, use the DBM command user_logon, and note any warnings that are displayed indicating problems with the operating system logon.


-7050: Fastload with indexed table not allowed - SAP Documentation

Background documentation -7050: Fastload with indexed table not allowed

Explanation

The table to be imported includes an index. In this case, a fast import using the IMPORT TABLE <table_spec> Loader command is not possible.

User Response

Delete the index or do without fast importing.


-25202: Column '<column_name>' - REAL field: 4 or 8 bytes long (double if HEX) - SAP Documentation

Background documentation -25202: Column '<column_name>' - REAL field: 4 or 8 bytes long (double if HEX)

Explanation

The command to export or import data contains an error.A file field of type REAL is specified in an explicit column description. However, the length of the field does not match the length specified in the error message.

User Response

Correct the entry and re-execute the command.


-1005: Too many monadic operators - SAP Documentation

Background documentation -1005: Too many monadic operators

Explanation

The SQL statement contains at least two monadic operators placed one after the other in an invalid manner.

User Response

Correct the monadic operators in the SQL statement.


Analyzing SQL Performance Bottlenecks - SAP Documentation

Procedure documentation Analyzing SQL Performance Bottlenecks

Bottlenecks are troublesome SQL statements that the system recorded during SQL monitoring.

Prerequisites

  • You are logged on to the database as the database system administrator or as a database user.

  • The database is in the ONLINE operational state.

  • You have started SQL performance monitoring.

    For more information, see Configuring and Starting SQL Performance Monitoring.

Procedure

Displaying Bottlenecks

  1. In the context menu of the database system administrator or the logged-on database user, choose [image] Performance [image] SQL Performance Analysis [image] .

  2. Enter the number of SQL statements you want to display and choose Get Bottleneck Candidates.

    The Bottleneck Candidates tab page shows two types of SQL statements:

    • Statements whose sum total of all executions meet the requirements a cumulative filter

    • Statements for which a single execution meets the requirements of a single filter.

    Fields whose values match the filter conditions are highlighted.

  3. Double-click an SQL statement to analyze it in detail.

Analyzing Single Executions of an SQL Statement

The Bottleneck Candidate Detail tab page displays the single executions of the selected SQL statement.

Fields whose values match the filter conditions are highlighted in yellow.

Note Note

If no single executions are displayed, this may be due to the following reasons:

  • You did not activate the Detail Collection.

  • None of the single executions match the selected filter conditions.

  • The single executions that matched a filter condition have already been overwritten by newer entries.

End of the note.
Bottleneck Candidate Details

Area

Description

Single Executions

List of single executions of the SQL statement

Statement

Text and parameters of the selected execution of the SQL statement

The context menu provides the following functions (selection):

  • Edit

    Opens the SQL editor.

    More information: SQL Editor

  • Show table/view definition

    Shows the table/view definition of the selected (view) table

    More information: Table Editor, View Editor

Parameters

Values of the parameters of the SQL statement (if any)

Explain

Result of the EXPLAIN statement for the selected execution of the SQL statement

Caution Caution

The system does not execute the EXPLAIN statement until you select the entry in the list. In some cases, the system may have used a different execution plan during the actual execution of the SQL statement.

End of the caution.

More information: Analyzing SQL Statements (EXPLAIN)

More Information

  • SAP Note 819641 (FAQ: MaxDB Performance)

  • Database Administration, Analyzing the Database Performance

  • Monitoring Databases: Overview


System Settings - SAP Documentation

Procedure documentation System Settings

The Configuration user menu of the DBA Cockpit contains, among other things, a display of the system settings.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] System Settings [image] .

Result

The system displays an overview of the most important system settings, divided into the following areas:

  • General Status Information

    The system displays information about the options and settings with which the system is currently running. Critical states are highlighted in color on the display (for example LOG WRITING off - logging is deactivated, VTRACE - database trace is activated). Among other things, you can see whether the join optimization for the optimizer (OPTIMIZE JOIN PARALLEL), database monitoring (MONITORING on) or automatic log backup (AUTOSAVE LOG on) are activated, or whether bad indexes have been found (NO OF BAD INDEXES), among other things.

  • Restart Information

    You receive, among other things, information about savepoints.

  • Log Information

    You receive internal log information, such as when the last log backup was written (LAST FLUSH DATE, LAST FLUSH TIME).

To update the display, choose [image] Edit [image] Refresh [image] . The system displays the current system settings, which are stored in a series of system tables.

More Information

Central System Data

Properties

Database Trace

Database Administration in CCMS, Index Analysis, Database Monitoring, Scheduling Log Backups


-3020: Invalid length for this data type - SAP Documentation

Background documentation -3020: Invalid length for this data type

Explanation

The specified length is not permitted for the data type.

User Response

  1. Choose a value between 1 and 254 (SQL mode ANSI) or between 1 and 8000 (SQL mode INTERNAL and ORACLE or 1 and 4000 (SQL mode DB2) for the length attribute of a CHAR-type column.

  2. Choose a value between 1 and 38 for the precision of a FIXED- or FLOAT-type column.


PAGES, RECORDS - SAP Documentation

Background documentation PAGES, RECORDS

PAGES and RECORDS are possible formats for a data stream.

You can these two formats in the commands: EXPORT DB, EXPORT USER and EXPORT SCHEMA or IMPORT DB, IMPORT USER and IMPORT SCHEMA. Loader assumes that the data streams for these commands are in PAGES format. You therefore do not have to specify format PAGES. If you do not want to use PAGES format, you have to explicitly specify RECORDS format in a command for exporting (or importing). You can also use PAGES and RECORDS format in the EXPORT TABLE and IMPORT TABLE commands. However, you always have to explicitly specify PAGES or RECORDS format in an EXPORT TABLE or IMPORT TABLE command because the default value is CSV.

PAGES and RECORDS formats are binary formats specific to Loader. Users should not alter the data streams manually. The data cannot be read in this format. You can specify the format you require in commands for exporting and importing using the syntax rules for data format table_dataformat_spec and data stream outstream_pages_spec, instream_pages_spec, outstream_records_spec, import_records_spec.

Structure

PAGES

The data is stored in the data stream as pages.

  • EXPORT TABLE: Loader generates a single data stream.

  • EXPORT DB, EXPORT USER, EXPORT SCHEMA: Loader generates at least two data streams. Depending on the data volume being exported, more than two data streams can be generated. The names of the data streams are mapped as follows: 4 digits are attached to each name, starting with 0000. The maximum number of data streams is therefore fixed at 9999.

    The data stream with the sequence 0000 is known as the mapping file. Loader saves information in this file that is used to manage the data streams during import. The file can be read, but should not be changed.

    Data streams with the sequence 0001 and higher contain the actual data; that is, the application data from the tables is saved in pages.

The data stream(s) with the application data contain(s) all the application data of a table, including any LOB values. The PAGES format makes it possible to export or import very quickly using special commands that are only available to Loader. No log entries are written during import and the table is then write-protected. If table data was imported in PAGES format, it can only be changed if the data was backed up incrementally or completely.

EXPORT/IMPORT TABLE

You cannot make any other entries for the columns when you export or import a table in PAGES format. All the relevant information is already contained in the data streams. You cannot import the data into a table if either of the following situations occurs:

  • The binary structure of the table is different from the structure of the source table

  • The table you want to import the data into already contains data

In both cases, Loader terminates the IMPORT with an error.

RECORDS

The data is stored in a binary format specific to Loader, not unlike a database record in the data stream.

  • EXPORT TABLE: Loader generates a single data stream.

  • EXPORT DB, EXPORT USER, EXPORT SCHEMA: Loader generates two data streams. The names of the data streams are mapped as follows; 4 digits are attached to each name, either 0000 or 0001.

    The data stream with the sequence 0000 is known as the mapping file. Loader saves information in this file that is used to manage the data streams. The file can be read but should not be changed.

    Data streams with the sequence 0001 contain the actual data, that is the application data from the tables is saved consecutively.

The data stream with the application data contains all the application data of a table, including any LOB values. If RECORDS format is used, Loader uses normal mass SELECT and mass INSERT statements, which it generates itself.

Example

PAGES

Example Example

EXPORT USER DATA OUTSTREAM 'mona_pages.data'

End of the example.

Export the application data from database user MONA to the mona_pages.data data stream in PAGES format (default value).

Mapping file mona_pages.data0000

"HOTEL","CITY","1","?","?","?","?","mona.pages0001","FILE","?","PAGES","ASCII","0","1024","0","66560","0","0""HOTEL","CUSTOMER","2","?","?","?","?","mona.pages0001","FILE","?","PAGES","ASCII","0","66560","0","132096","0","0""HOTEL","HOTEL","3","?","?","?","?","mona.pages0001","FILE","?","PAGES","ASCII","0","132096","0","214016","0","0""HOTEL","ROOM","4","?","?","?","?","mona.pages0001","FILE","?","PAGES","ASCII","0","214016","0","279552","0","0""HOTEL","EMPLOYEE","5","?","?","?","?","mona.pages0001","FILE","?","PAGES","ASCII","0","279552","0","345088","0","0""HOTEL","RESERVATION","6","?","?","?","?","mona.pages0001","FILE","?","PAGES","ASCII","0","345088","0","410624","0","0"

RECORDS

Example Example

EXPORT USER DATA OUTSTREAM 'mona_records.data' RECORDS

End of the example.

Export the application data from database user MONA to the mona_records.data data stream in RECORDS format.

Mapping file mona_records.data0000

"HOTEL","CITY","1","?","?","?","?","mona.records0001","FILE","?","RECORDS","ASCII","0","0","0","2610","0","1586""HOTEL","CUSTOMER","2","?","?","?","?","mona.records0001","FILE","?","RECORDS","ASCII","0","2610","0","5463","0","4439""HOTEL","HOTEL","3","?","?","?","?","mona.records0001","FILE","?","RECORDS","ASCII","0","5463","0","10240","0","9216""HOTEL","ROOM","4","?","?","?","?","mona.records0001","FILE","?","RECORDS","ASCII","0","10240","0","13199","0","12175""HOTEL","EMPLOYEE","5","?","?","?","?","mona.records0001","FILE","?","RECORDS","ASCII","0","13199","0","15552","0","14528""HOTEL","RESERVATION","6","?","?","?","?","mona.records0001","FILE","?","RECORDS","ASCII","0","15552","0","18033","0","17009"

Loader Tutorial, Export, Import

More Information

  • Data Format

    Data Stream

    Data Description

  • CSV, FWV, FWV BINARY

  • Database Administration, Backing Up Data


-7500: DCOM HRESULT - SAP Documentation

Background documentation -7500: DCOM HRESULT

Structure

Explanation

An unexpected error occurred during the CREATE PACKAGE statement. The exact cause of the error is signified by a numerical value (HRESULT) in the error message.

User Response

This type of error suggests incorrect or missing entries in the registration database.Ensure that the reference to the relevant library in the programmatic ID is correct. Also, make sure that this library exists in the given location and that the appropriate privileges are assigned.If this fails to solve the problem, inform Support of the error number (HRESULT) so they can analyze the error


-11111: Parameter/Column (<number>) not bound. - SAP Documentation

Background documentation -11111: Parameter/Column (<number>) not bound.

Explanation

When calling the MaxDB PHP function maxdb_execute() or maxdb_stmt_execute() the system detected that you did not bind any PHP variable to the column or parameter name <number> of the SQL statement.

Note Note

Columns and parameter names are numbered by the system in the SQL statement from left to right, starting with 1.

End of the note.
User Response

Bind a PHP variable to every parameter in an SQL statement using the function maxdb_bind_param() or the function maxdb_stmt_bind_param().


-771: LONG column exists in table definition - SAP Documentation

Background documentation -771: LONG column exists in table definition

Explanation

The table from which the host variables are generated contains a LONG column.

User Response

You can change the host variable that was created for this column.


-8025: Table must be temp table - SAP Documentation

Background documentation -8025: Table must be temp table

Explanation

In a CREATE TABLE statement, the IGNORE ROLLBACK option was specified for a permanent table. This is not allowed.

User Response

You can repeat the SQL statement. To do this, you either need to deselect the IGNORE ROLLBACK option, or create a temporary table by specifying TEMP as schema of the table to be created.


-24933: ERR_NOSERVICESESSION - no service kernel available - SAP Documentation

Background documentation -24933: ERR_NOSERVICESESSION - no service kernel available

Explanation

The DBM command requires a service session.

User Response

Before you execute the DBM command, activate the service session with the DBM command service_connect or the option uSRV.


EXPORT DB Command - SAP Documentation

Background documentation EXPORT DB Command

You can use the Loader command EXPORT DB to export the data belonging to a database application.

Prerequisites

The EXPORT DB command can only be executed by the database system administrator.

Structure

Syntax Syntax

  1. <export_db_command> ::=
  EXPORT DB
    [<configuration_spec>]
    <catalog_data_outstream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<catalog_data_outstream_part_spec> ::=
  <catalog_outstream_spec>
| <data_outstream_part_spec>
| <catalog_outstream_spec> <data_outstream_part_spec>
<catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>
<data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>

<package_spec> ::=
  PACKAGE <oustream_csv_spec>

<restart_spec> ::=
  RESTART <package_guid>
<package_guid> ::=
  <unsigned_integer>
End of the code.
<catalog_outstream_spec>, <data_outstream_part_spec>

Depending on whether the database catalog and/or application data is exported, the following data streams are generated during export:

  • Data stream for database catalog definitions CATALOG <outstream_ddl_spec>

  • Data stream for application data DATA <outstream_tableformat_spec>

System table SYSLOADER.TRANSFORMATIONMODEL and additional system tables are filled. Only one of the formats PAGES or RECORDS is possible for the data stream of the outstream_tableformat_spec application data.

See: Data Stream, PAGES, RECORDS

Syntax Syntax

  1. EXPORT DB
  [<configuration_spec>]
  <catalog_outstream_spec> <data_outstream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT DB command exports the data from the database application (database catalog and application data).

Syntax Syntax

  1. EXPORT DB
  <catalog_outstream_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT DB command exports the database catalog information for all database users belonging to the database application.

Syntax Syntax

  1. EXPORT DB
  [<configuration_spec>]
  <data_outstream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This EXPORT DB command exports the application data for all database users.

<configuration_spec>

You can exclude tables from the export.

  • If you do not specify a data stream using CONFIGURATION <instream_csv_spec>, all the application data is exported.

  • If you specify a data stream using CONFIGURATION <instream_csv_spec>, you can exclude the application data of selected tables from the export of the outstream_tableformat_spec application data. The tables must be identified in the data stream by specifying their schema and table name. The information about which tables are not exported is stored in the system tables. One way of displaying this information is to display the system table SYSLOADER.TRANSFORMATIONMODEL. The tables excluded from the export of the application data have the value TRUE in the EXCLUDE column.

The database catalog entries CATALOG <outstream_ddl_spec> are always exported for all tables, regardless of the restrictions set using CONFIGURATION <instream_csv_spec>.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

<restart_spec>

You can restart the export or import using the package_guid (ID created by Loader for every command at runtime. This integer is always 24 bytes long). The user can determine the package_guid of the corresponding export or import commands from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command with the corresponding package_guid using the restart_spec syntax element.

See: Restarting

Result

The application data and/or the database catalog are exported to the data_outstream_part_spec and catalog_outstream_spec data streams. If necessary, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to the package_spec data stream. You can use the corresponding IMPORT command to restore the database catalog and/or the application data.

Errors: The export cannot be completed successfully. Loader writes the cause of the error to the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, EXPORT DB

More Information

Exporting: Loader Commands

IMPORT DB Command

Loader Log File

Loader System Tables


-8009: DEFAULT value must be in constraint specification - SAP Documentation

Background documentation -8009: DEFAULT value must be in constraint specification

Explanation

The specified DEFAULT value would violate the CONSTRAINT definition.

User Response

  1. The corresponding CONSTRAINT definition must be reconsidered and modified, if necessary.

  2. Use another DEFAULT value, or do not specify a default value at all.


SQL User Properties - SAP Documentation

Background documentation SQL User Properties

Database users have a range of SQL user properties.

SQL Properties of Database Users
Property | Description
User Class | DBA | RESOURCE | STANDARD
Connection Mode | NOT EXCLUSIVE: Allows the database user to open several database sessions simultaneously. EXCLUSIVE: Each database user can open only one database session. Caution Caution This connection mode only exists still for historical reasons. Do not use it. Database users with this connection mode cannot work with Database Studio. End of the caution. DISABLED: The database user is locked and cannot open any database sessions.
Session Timeout | Time after which the database session is ended after user inactivity.
Cost Warning | Specifies the estimated SELECT cost value beyond which the user receives a warning. In this case, the user is asked whether he or she really wants to execute the SQL statement.
Cost Limit | Specifies the estimated SELECT cost value beyond which the SQL statement is not executed. This value must be greater than the Cost Warning value.
Default Code Attribute | Default code attribute for creating new columns DEFAULT: The default code attribute is defined by the DefaultCodePage database parameter. ASCII UNICODE

More Information

Database Administration, Database Users

Database Studio,

  • Creating Database Users

  • Changing the Properties of Database Users

SQL Reference Manual, CREATE USER Statement


Loading Demo Data - SAP Documentation

Procedure documentation Loading Demo Data

You are loading the demo data used for the examples in the SAP MaxDB documentation. You can load this demo data to any database.

Prerequisites

You are logged on to the database as a database system administrator or DBM operator with server authorization for using the Loader or loading system tables.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Load Tutorial...

  3. Select Load.

Result

Once you have loaded the demo data, example tables and other database objects are located in the HOTEL schema. The database user MONA (password RED) is the owner of the HOTEL schema and its objects. The tables are filled with demo data.

More Information

Concepts of the Database System, Demo Database

You can also load the demo data when creating database, see Creating Databases.


CONNECT Statement (connect_statement) - SAP Documentation

Background documentation CONNECT Statement (connect_statement)

A CONNECT statement (connect_statement) opens a database session and a transaction for a database user.

Structure

Syntax Syntax

  1. <connect_statement> ::)
  CONNECT <parameter_name> IDENTIFIED BY <parameter_name> [<connect_option> ...]
| CONNECT <parameter_name> IDENTIFIED BY <password> [<connect_option> ...]
| CONNECT <user_name> IDENTIFIED BY <parameter_name> [<connect_option> ...]
| CONNECT <user_name> IDENTIFIED BY <password> [<connect_option> ...]

<connect_option> ::=
  SQLMODE <internal_oracle>
| ISOLATION LEVEL <unsigned_integer>
| TIMEOUT <unsigned_integer>

<internal_oracle> ::=
  INTERNAL
| ORACLE
End of the code.
Explanation

If the parameter name/user name and parameter name/password combination is valid, the user opens a database session and gains access to the database instance. As a result, he or she becomes the current database user for this database session. A transaction is implicitly opened.

Each CONNECT option (connect_option) may only be specified once.

SQLMODE

The specification SQLMODE is used to select the SQL mode. The default SQL mode is INTERNAL.

ISOLATION LEVEL

The isolation level specified in the CONNECT statement is applied to each new transaction. This specification determines the lock operation type. The isolation level is set using an integer without a plus/minus sign after the keywords ISOLATION LEVEL. The following values are permitted: 0, 1, 2, 3, 10, 15, 20 and 30. If no isolation level is specified, isolation level 1 is used.

TIMEOUT

The specified timeout value must be less than or equal to the special database parameter SessionTimeout, and the user-specific timeout value of the database user or user group. If it is not, an error is displayed at logon.

If a timeout value is not specified, the smaller of the other two values is adopted as the timeout value. If the timeout value is set to 0, the inactivity period is not monitored. This can result in a situation where database resources are not available again even though the associated application was concluded or aborted without a RELEASE statement.

Database Users with the NOT EXCLUSIVE Attribute

Database users defined with the attribute NOT EXCLUSIVE can open several sessions at the same time. Whenever this is the case, or whenever two database users of the same user group open a session at the same time, the sessions are considered to be distinct. This means that lock requests for the sessions concerned can collide.

More Information

  • CREATE USER Statement (create_user_statement)

    RELEASE Statement (release_statement)

  • Glossary, SQL Mode

  • Concepts of the Database System, Isolation Level

  • Glossary, Timeout

  • Database Administration,

    Special Database Parameters

    Database Users


-25340: UCS2 conversion error; character string contains invalid characters or character sequences - SAP Documentation

Background documentation -25340: UCS2 conversion error; character string contains invalid characters or character sequences

Explanation

The Loader command for importing or updating data into a database instance that uses UNICODE contains an error.If data is imported into columns of a character-based data type (CHAR), Loader converts it into a format that the database recognizes (UCS-2). In this case, an error has occurred during the conversion. The data that is to be imported contains characters that cannot be converted to UCS-2.

User Response

Correct the rejected data and re-execute the command.


Parameter History - SAP Documentation

Procedure documentation Parameter History

In the Configuration user menu, you can find a list of all changes to database parameters, sorted by change date.

Procedure

Open the Database Assistant (transaction DB50) or the liveCache Assistant (transaction LC10). Choose [image] Administration [image] Configuration [image] Parameter History [image] .

or

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Administration [image] Parameter History [image] .

Result

To view the changes made to a database parameter at a particular point in time, use one of the methods below:

  • Click the symbol at the start of the line that contains the desired time point.

  • Select the time point and choose Expand Subtree.

The system displays a list of the database parameters changed up to this point in time, and their previous and new values.

Parameters that are no longer used by the database as of a particular date are assigned <<parameter inactive>> as a new value.

Caution Caution

Changes to database parameters generally do not take effect until the database is restarted.

You can also change some database parameters while the database is running (see the description of individual database parameters for more information). In addition, you can choose how long the change is to be effective for these database parameters:

  • Save: Changes to database parameters do not take effect until the next restart.

  • Activate Temporarily: Changes to database parameters take effect immediately, but only until the next restart.

  • Save and activate: Changes to database parameters take effect immediately and are permanent.

If you change a database parameter whose value is normally calculated by the system, then the set value also remains valid for all subsequent recalculations of database parameter values. The system only recalculates the value when the set value is not within the permitted value range.

End of the caution.

More Information

DBA Cockpit: SAP MaxDB, Parameter History

Database Administration, Database Parameters


From -25000 to -25999 - SAP Documentation

Background documentation From -25000 to -25999

Loader Error Messages
-25002 | No database connection possible - missing database name; specify the database name in the USE USER command
-25003 | Getting hostname of database host failed: <error_code> = <error_text>
-25004 | A connection to the database could not be established: <error_code> = <error_text>
-25005 | User (<user_name>) logon to database failed: <error_text>
-25006 | Connect with userkey '<user_key>' failed: <error_text>
-25007 | No connection to server db '<database_name>' established
-25008 | Logon failure; previous user's (<user_name>) connection was restored
-25009 | Failure in db communication (<type>): <return_code> = <error_text>
-25010 | <SQL_error_text>
-25011 | Error executing internal SQL statement '<statement>' : '<error_text>'
-25012 | No user connection to server db established
-25018 | Error changing log file owner to current user '<user_name>' (Error: '<error_text>')
-25019 | Error opening server log file '<log_file_name>' (<error_text>). Opened temporary log file '<temp_log_file_name>'
-25020 | No more memory available
-25021 | Error switching connected user to <user_name> : <error_text>
-25022 | Received cancel request; stopping execution
-25024 | Error switching current schema to <schema_name> ; <error_text>
-25109 | Command not implemented
-25201 | Column '<column_name>' - INTEGER field: 1, 2 or 4 bytes long (double if HEX)
-25202 | Column '<column_name>' - REALfield: 4 or 8 bytes long (double if HEX)
-25203 | Column '<column_name>' - DECIMALfield: 20 bytes maximum (double if HEX)
-25204 | Column '<column_name>' - ZONEDfield: 20 bytes maximum (double if HEX)
-25205 | Declare USAGE between 50% and 100%
-25206 | USAGE value of '0 rows' not allowed
-25207 | USAGE value of row(s) too high; maximum number of records possible on a single db page: <number>
-25208 | Invalid position specification (negative values not allowed)
-25209 | Invalid FRACTION specification (negative values not allowed)
-25210 | Invalid SCALE specification. Scale range: -127 <= SCALE <= 127
-25211 | Invalid ROUND specification (0 <= ROUND_value <= 18)
-25212 | Invalid TRUNC specification (0 <= TRUNC_value <= 18)
-25213 | Invalid file format specification: given formats rule each other out
-25214 | The specification of a separator/delimiter is not allowed together with FWV
-25216 | File option FWV required
-25217 | End position for column <column_name> lower than start position
-25218 | No column specified but file format is FWV
-25219 | Columns have to be specified in left-to-right order (positions in ascending order)
-25220 | Wrong separator/delimiter specification
-25221 | Wrong decimal specification
-25222 | Wrong Boolean specification
-25223 | Wrong null specification
-25225 | Wrong number specification
-25226 | A maximum of 1024 columns can be specified for one table
-25227 | Specification of conditions exceeds allowed count of conditions
-25228 | Incorrect date-time format, all patterns accepted in the SET menu are valid
-25229 | Incorrect comparison operator in condition
-25230 | Cannot execute command DATAEXTRACT FOR <load_type>; specify an output file for commands
-25231 | ROUND or TRUNC specification not allowed for this column
-25232 | Wrong keyword
-25233 | Some column descriptions with end position but file format is CSV
-25234 | Some column descriptions without end position but file format is FWV
-25235 | Some positions specified more than once
-25236 | Some positions overlap
-25237 | Cannot execute DATAUPDATE command; specify set columns
-25238 | Cannot execute DATAUPDATE command; specify access columns
-25239 | Specified value '<value>'is not a valid integer
-25240 | Incomplete logon parameters; password missing
-25242 | Database identifier too long
-25243 | Error parsing <time> mask: <error_text>
-25244 | Loader CONSTRAINT violation: <error_text>
-25245 | Error: specify CATALOG, DATA, and PACKAGE stream
-25247 | Error: specify CATALOG or DATA stream
-25249 | Invalid Isolation Level specification: possible values are: 0, 1, 10, 15, 2, 20, 3, 30
-25250 | Error building URI for encrypted connection: <error_text>
-25251 | Code page to set (<code_page_name>) not found in system table SYSLOADER.CODEPAGE. The privilege to change the content of this table is restricted to SYSDBA
-25281 | Syntax error at position <position> (<error_text>). Check for typing errors
-25301 | Invalid input for date or time column: <input_value>
-25302 | This value is not a valid number: '<input_value>'
-25303 | Input value does not match key order or range specification
-25304 | Columns for key (KEY) or search condition missing
-25305 | Data for key columns exceeds allowed key length
-25306 | The value is not a valid HEX constant: <input_value>
-25308 | CONSTRAINT condition violated
-25309 | Invalid input for BOOLEAN column: <input_value>
-25310 | Column '<column_name>' must not contain NULL values
-25311 | No Data for NOT NULL - column without default (<column_name>). You have either not specified this column in the command or there is no data in the data file for this column
-25313 | Overflow occurred, execution aborted
-25314 | Fractional part too small for column '<column_name>', minimum length: <length>
-25315 | Column data type of column '<column_name>' and external data type are not compatible
-25316 | Table contains at least one column defined as LOB; IMPORT in PAGE format rejected
-25317 | Constant must be compatible with column type and length (column: '<column_name>')
-25318 | Syskey violation (the computed value exceeds the highest possible syskey value)
-25319 | Missing data for specified column '<column_name>'
-25320 | The LOB value could not be loaded into column
-25321 | This condition value is not a valid number: '<value>'
-25322 | This condition value was truncated and cannot be used: '<value>'
-25323 | Data type of null value representation for column '<column_name>' is incompatible with the column data type
-25324 | Errors checking length of column specifications. See Loader server log file for more information
-25325 | Errors checking compatibility of external and db data types. See Loader server log file for more information
-25326 | The exported number (column '<column_name>') was truncated
-25327 | Error(s) exporting record <record_no>; start position of incorrect record in data file:<position>
-25328 | Some error(s) while extracting data. See Loader server log file for more information
-25329 | The given data file '<file_name>' was not generated using EXPORT in PAGE Format (<error_text>)
-25330 | The page sizes of the source system and the target system do not match (source:<page_size>, target:<page_size>)
-25331 | This is a restricted statement, user must be SYSDBA
-25332 | Error getting schema definition of table <table_name> (<SQL_error_text>)
-25333 | Error getting index definitions for table <table_name> (<SQL_error_text>)
-25334 | File counter for data file exceeded maximum value of 9999
-25335 | Error restoring single table using data file with multiple table data; specify single table data file
-25336 | Error restoring multiple tables using data file with single table data; specify data file created using EXPORT DB or EXPORT USER
-25337 | Error restoring table <table_name>; no table data found in data file <file_name>
-25338 | Error during restart IMPORT; restart entry <position> not found in mapping file <file_name>
-25339 | Error during restart IMPORT; file <file_name> could not be opened/read
-25340 | UCS2 conversion error; character string contains invalid characters or character sequences
-25341 | Error generating 'create table/index statements': <error_text>
-25342 | Error restoring table <table_name>; table exists but source table schema and target table schema are different
-25343 | Column name(s) or number(s) do not match column names/numbers in select list: (<column_names>)
-25344 | Incorrect field length for column '<column_name>', minimum length <length_value>
-25345 | Definition of source and target table <table_name> do not match: <description>
-25346 | Communication packet size too small to run IMPORT for PAGES of <N>kb. Increase value of parameter _PACKET_SIZE and restart the database
-25347 | Encoding type of source and target database do not match: source = <type>, target = <type>
-25348 | Different byte swap of source and target computer
-25349 | Error exporting <type> data of table <table_name>. See Loader server log file for more information
-25350 | Conversion from UNICODE data to ASCII data is not supported. This conversion may cause information loss
-25351 | No lob file info given for LOB column '<column_name>'
-25352 | Errors analyzing lob file information. See Loader server log file for more information
-25353 | Specified maximum number of LOB data files for column '<column_name>' exceeded
-25354 | LOBFILE specification missing or incorrect
-25355 | Error processing LOB value (column '<column_name>'): <error_code>
-25356 | Error processing LOB value(s): <error_text>
-25364 | Name of table to import <table_name> and the table currently being processed in data file <file_name> do not match
-25365 | Data file corrupted: trailer not found
-25366 | Data file corrupted: header not found
-25371 | Error converting data from <source_encoding> to <target_encoding>. Source contains invalid characters or character sequences
-25390 | Error generating CREATE TABLE/INDEX statements. Table name is ambiguous (different users have a table with this name)
-25391 | SQL statement is too long
-25392 | [SQLOD32 DLL][MaxDB] <error_text>
-25393 | Error during check if table <table_name> exists <error_text>
-25394 | Catalog of table <table_name> changed while processing <import> command; reparse failed; To restart the command append <record_no> to the infile specification
-25396 | Error getting share lock for table <schema_name>.<table_name>: <kernel_error>
-25401 | Error reading system table SYSLOADER.CODEPAGE
-25402 | Error creating/granting system table SYSLOADER.CODEPAGE <code_page>; using codepage file
-25403 | Error opening/reading code page file <code_page>. Can't use code page conversion
-25404 | Invalid HEX constant <hex_value> found in code page file. The file might be corrupted
-25405 | Invalid ASCII values read or values not sorted in ascending order; The file might be corrupted
-25451 | Integrity violation (SQL_Error)
-25498 | Errors processing data for table <table_name>; No data imported/updated
-25499 | Errors processing data for table <table_name>. Data not completely imported/updated
-25500 | Errors processing command exceed maximum number of errors to ignore; processing stopped
-25501 | Error opening file <file_name> : <error_text>
-25502 | Error closing file <file_name> : <error_text>
-25503 | Error reading file <file_name> : <error_text>
-25504 | Error writing file <file_name> : <error_text>
-25505 | Error erasing file <file_name> : <error_text>
-25507 | Error truncating file <file_name> : <error_text>
-25508 | File <file_name> is not encoded as <encoding>
-25551 | Error importing statistics: <error_text>
-25552 | Error exporting statistics: <error_text>
-25601 | Error restoring table <table_name>. Table does not exist – table must be created before import
-25602 | Error restoring table <table_name>. Table is not empty
-25603 | Error processing IMPORT in PAGE Format. Loader versions used for EXPORT and IMPORT differ (EXPORT <version>, IMPORT <version>)
-25801 | Internal error [<file_name>,<line_no>,<error_code>]. Contact support


-24937: ERR_MISSRIGHT - no server rights for this command - SAP Documentation

Background documentation -24937: ERR_MISSRIGHT - no server rights for this command

Explanation

The current DBM operator is not authorized to execute this command.

User Response

Use a different DBM operator, or adjust the user rights of the current DBM operator appropriately. Use the DBM command user_put.


-24964: ERR_EXECUTE - error in program execution - SAP Documentation

Background documentation -24964: ERR_EXECUTE - error in program execution

Explanation

An error occurred when a program or operating system command was called using the DBM server. The program/command was not found or it encountered an error when it was executed.

User Response

Remember the exit code shipped with the system as well as the program/command documentation that was delivered. Check whether the program/command is available on the server. Use the program/command documentation to help you find the error.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


-115: Table is read only - SAP Documentation

Background documentation -115: Table is read only

Explanation

You tried to execute an INSERT, UPDATE OR DELETE statement. But the specified table only allows reading SQL statements, because it was previously loaded with the NOLOG option.

User Response

You can cancel the read only status. Start a database backup using the corresponding database management tool.


-25302: This value is not a valid number: '<input_value>' - SAP Documentation

Background documentation -25302: This value is not a valid number: '<input_value>'

Explanation

The command to export or import data contains an error.This error can have several causes depending on the context in which it occurs.

  • A value that is to be imported in a column having a numerical data type (INTEGER, FIXED (n,m), ...) cannot be converted into the internal format. The value is either too high or is not recognized as a number.

  • A value that is to be exported from a column having a numerical data type (INTEGER, FIXED (n,m), ...) cannot be converted into the external display format. The value is either too high or the data types are not compatible (for example, if you try to extract a value from a column of data type FLOAT and to display it externally as data type INTEGER BINARY).

  • Commands for exporting or importing data contain certain conditions, for example, for downloading or uploading NULL values. If you have defined conditions for columns with a numerical data type, the values in these conditions must be recognized as a numerical value.

User Response

Correct the values and re-execute the command.


-8056: Snapshot ID not found - SAP Documentation

Background documentation -8056: Snapshot ID not found

Explanation

You tried to access a snapshot with an unknown identification.

User Response

Choose a valid snapshot identification from the system table SNAPSHOTS.


Data Stream - SAP Documentation

Background documentation Data Stream

Loader exports the data from databases into data streams or imports data from data streams into databases. The data can be transformed during this process. A range of syntax elements is available for describing the data stream. These syntax elements can be used in the export and import commands.

Structure

You can specify the data carrier type as well as the name of the data stream. You can also transfer formats and, if necessary, include other information to describe the data stream in more detail.

  • You enter the keyword OUTSTREAM to specify that the data is to be exported from a SAP MaxDB database to a data stream.

  • You enter the keyword INSTREAM to specify that the data is to be imported from a data stream to a SAP MaxDB database.

Syntax Syntax

  1. <outstream_columnformat_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [<column_dataformat_spec>] [<start_spec>]
<instream_columnformat_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [<column_dataformat_spec>] [<start_spec>]

<outstream_tableformat_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [<table_dataformat_spec>]
<instream_columnformat_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [<table_dataformat_spec>]
End of the code.

It may be necessary to specify the format of the data stream (keywords CSV, DDL, FWV [BINARY], PAGES, RECORDS).

Syntax Syntax

  1. <outstream_csv_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    [CSV [<csv_format_spec> ...]] [<start_spec>]
<instream_csv_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    [CSV [<csv_format_spec> ...]] [<start_spec>]

<outstream_ddl_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' DDL
<instream_ddl_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' DDL

<outstream_fwv_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    FWV [<fwv_format_spec> ...] [<start_spec>]
<instream_fwv_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    FWV [<fwv_format_spec> ...] [<start_spec>]

<outstream_pages_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>' PAGES
<instream_pages_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>' PAGES

<outstream_records_spec> ::=
  OUTSTREAM [<mediumtype_spec>] '<stream_name>'
    RECORDS [<records_format_spec> ...]
<instream_records_spec> ::=
  INSTREAM [<mediumtype_spec>] '<stream_name>'
    RECORDS [<records_format_spec> ...]
End of the code.
Syntax Elements

<mediumtype_spec>

Data carrier type

<stream_name>

Name and path of the data stream

CSV

CSV (Comma Separated Values) is a format for CHAR data in which a data line must at least be long enough to represent the data. The assignment of a data field of the data stream to a column in the table is defined by the position specification.

FWV

FWV (Fixed Width Values) is a format for plain text values in which a data line in the data stream corresponds to a data record. The assignment between data fields in the data stream and table columns is defined by the position specification.

FWV BINARY

FWV BINARY (Fixed Width Values BINARY) is a format for binary values in which all data fields have the same fixed length. The assignment between the data fields in the data stream and the table columns is defined by the position specification. Unlike the FWV format, a data record does not end with an additional line break.

PAGES

Format that specifies that the application data is stored in pages

RECORDS

Database format

DDL

DDL (Data Definition Language) is a format that can be specified for a data stream with database catalog data

<column_dataformat_spec>

<table_dataformat_spec>

<csv_format_spec>

<fwv_format_spec>

<records_format_spec>

Data Format

<start_spec>

Syntax Syntax

  1. <start_spec> ::=
  START <unsigend_integer> [MAXROWS]
| START <unsigend_integer> [MAXRECORDS]
| START <unsigend_integer> <unsigend_integer>
End of the code.

Export: the area defined by start_spec is exported from a table.

Import: the area defined by start_spec is imported from the data stream.

You can specify the starting point of the area (START <unsigend_integer> [MAXROWS] or START <unsigend_integer> [MAXRECORDS]) or the upper and lower limits for the area (START <unsigend_integer> <unsigend_integer>).

For more information see CSV, FWV, FWV BINARY, PAGES, RECORDS. If you are handling LOB values, you need to adhere to syntax rules outstream_lob_spec and instream_lob_spec.

The commands for exporting and importing uses the keywords CATALOG, DATA, CONFIGURATION and PACKAGE to differentiate the type of data that is exported or imported.

Data streams for the database catalog information of the application data (keyword CATALOG)

Syntax Syntax

  1. <catalog_outstream_spec> ::=
  CATALOG <outstream_ddl_spec>
<catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>
End of the code.

Data streams for the application data (keyword DATA)

Syntax Syntax

  1. <data_outstream_column_spec> ::=
  DATA <outstream_columnformat_spec> [<export_lobcolumn_spec> ...]
<data_outstream_part_spec> ::=
  DATA <outstream_tableformat_spec>
<data_outstream_table_spec> ::=
  <data_outstream_part_spec>
| <data_outstream_column_spec>

<data_instream_column_spec> ::=
  DATA <instream_tableformat_spec>
<data_instream_columns_spec> ::=
  DATA <instream_columnformat_spec>
    [<import_column_spec> ... <import_lobcolumn_spec> ...] [<usage_spec>]
<data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>
<data_instream_table_spec> ::=
  <data_instream_part_spec>
| <data_instream_columns_spec>
End of the code.

The application data of selected tables can be excluded from the export or import (keyword CONFIGURATION)

Syntax Syntax

  1. <configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>
End of the code.

Data stream with the entries from the TRANSFORMATIONMODEL system table (keyword PACKAGE)

Syntax Syntax

  1. <package_spec> ::=
  PACKAGE <outstream_csv_spec>
End of the code.

Example

Example Example

IMPORT TABLE hotel.room

  DATA INSTREAM 'room_csv.data'

End of the example.

The application data (DATA) stored in the room_csv.data data stream (INSTREAM) is imported (IMPORT) to the ROOM table in the HOTEL schema. The data carrier type for the room_csv.data data stream is a file (FILE, default value). The format of the data stream is CSV (default value).

Further examples: Loader Tutorial, Exporting, Importing

More Information

  • Data Format

    Code Specification

    CSV, FWV, FWV BINARY

    PAGES, RECORDS

    Data Carrier Type

    Data Description

  • Additional Log Functions (package_spec)

    Performance Improvement in the IMPORT TABLE

  • Exporting: Loader Commands

    Importing: Loader Commands

  • Exporting and Importing Using Third-Party Backup Tools


-25329: The given data file '<file_name>' was not generated using EXPORT in PAGE Format (<error_text>) - SAP Documentation

Background documentation -25329: The given data file '<file_name>' was not generated using EXPORT in PAGE Format (<error_text>)

Explanation

Error in the Loader command for importing data.The data streams for this command must be binary and contain database structures and special information on executing the subsequent IMPORT command. These data streams are created using the EXPORT command and must not be modified.The data stream specified in the command was modified after the export was executed or it was not created using the EXPORT command. In the cause of the error section you see which information in the data stream cannot be evaluated.

User Response

Create the data stream using the EXPORT command and re-execute the command.


user_name_get - SAP Documentation

Background documentation user_name_get

Use this command to display your current logon name in Database Manager.

Prerequisites

You are logged on to Database Manager.

You do not require a server permission to execute this command.

Structure

user_name_get

Result

OK

<operator_name>


-860: Too many constants declared - SAP Documentation

Background documentation -860: Too many constants declared

Explanation

Too many SQL constants are declared.

User Response

The database application should be modularized. The maximum number of constants is 100.


Installing the WebDAV Servlet - SAP Documentation

Procedure documentation Installing the WebDAV Servlet

Prerequisites

  • You have installed and started a servlet container, for example Apache Tomcat.

  • You have installed the following SAP MaxDB software:

    • JDBC interface

    • Installation profile WebJTools

    More information: Glossary, Installation

  • You have created an SAP MaxDB database ≥ version 7.6.

    More information: Database Administration, Creating Databases

Procedure

  1. Make the SAP MaxDB JDBC driver available in your servlet container.

    More information: Servlet container documentation

  2. Carry out the deployment procedure in the servlet container.

    Recommendation Recommendation

    Activate SSL encryption in the servlet container for transferring data to the Web browser.

    End of the recommendation.

  3. The WebDAV servlet is supplied with example configuration files for the Apache Tomcat, SAP NetWeaver AS and JBoss servlet containers.

    If you are using one of these servlet containers, adapt the corresponding example configuration file to your system environment as follows:

    • Add the SAP MaxDB database as data source in the configuration files

    • Add an SAP MaxDB database user name and password as authentication data

      Recommendation Recommendation

      Use a dedicated database user for the WebDAV servlet.

      More information: Database Administration, Database Users

      End of the recommendation.

    • If necessary, configure the WebDAV context path. The default context path is /sdbwebdav

    • For SAP NetWeaver AS only:

      In the Deployment Descriptor, enter the authentication data for the SAP NetWeaver AS administrator user for AS Java.

More Information

Calling the WebDAV Servlet


500: Lock request timeout - SAP Documentation

Background documentation 500: Lock request timeout

Explanation

  1. The lock request or an implicit lock conflicts with the locks of another user. The maximum waiting time for being granted the lock has elapsed (special database parameter RequestTimeout).

  2. The database could not be stopped in a certain time interval, because transactions with SQL statements for data modification are still open.

User Response

  1. In some cases, the error message contains a more detailed description of the error. The lock request can be re-issued. To avoid possible deadlock situations, it is advisable to roll back the transaction using a ROLLBACK statement.

  2. These prevent you having to stop the database.


-893: Too many hostvariables - SAP Documentation

Background documentation -893: Too many hostvariables

Explanation

  • Too many parameters are specified in an SQL statement with descriptor.

  • In an SQLDA area, an SQLVAR entry was accessed which is no longer available (maximum number of SQLVAR entries <index_of_the_SQLVAR entry).

User Response

Reduce the number of parameters in the SQL statement to 300 or less.


-2009: Join columns too long - SAP Documentation

Background documentation -2009: Join columns too long

Explanation

The internal length of a table's join columns must not exceed 1020 bytes. Join columns are the columns that are contained in a JOIN predicate.

Example Example

WHERE (S.A = T.V AND S.B < T.W)

End of the example.

The join columns of table S are columns S.A and S.B. The internal length of the join columns of S is the internal length of column S.A plus the internal length of column S.B. The internal length of the join columns of S must not exceed 1020 bytes.

User Response

Try to achieve the expected result by issuing several QUERY statements and creating tables as temporary results.


-25008: Logon failure; previous user's (<user_name>) connection was restored - SAP Documentation

Background documentation -25008: Logon failure; previous user's (<user_name>) connection was restored

Explanation

An error occurred when a database user attempted to log on to the database instance. The last database user who was successfully logged on has been logged on again. This error message only appears if a new database user is unable log on to a database instance after another database user has already been logged on and after processing of export and import commands. This message precedes the error message –25005.

User Response

Since this message merely informs you that a previous connection has been restored, proceed as described in error message -25005.


-25602: Error restoring table <table_name>. Table is not empty. - SAP Documentation

Background documentation -25602: Error restoring table <table_name>. Table is not empty.

Explanation

You have attempted to import data in the PAGES format provided by the database. The table <table_name> that has to be imported was not empty.

User Response

Delete the contents of the table and re-execute the command.


-753: Output parameter with CONST type - SAP Documentation

Background documentation -753: Output parameter with CONST type

Explanation

An output parameter must not be declared as CONST type in C.

User Response

Declare another parameter in the application program.


-27016: DB shut down - SAP Documentation

Background documentation -27016: DB shut down

Explanation

An external SQL class attempted to connect to a database instance in the OFFLINE operating state.

User Response

Contact Support.


TRANSFORMATIONSTATISTICS - SAP Documentation

Object documentation TRANSFORMATIONSTATISTICS

The system table SYSLOADER.TRANSFORMATIONSTATISTICS describes the resource consumption of a step of a Loader transformation.

Structure

TRANSFORMATIONMODEL
PACKAGEGUID | CHAR(24) BYTE | Unique identification of the transformation package
STEPID | FIXED(6,0) | Identification of the transformation step
OWNER | CHAR(32) | Table owner
SCHEMANAME | CHAR(32) | Schema name
TABLENAME | CHAR(32) | Table name
BYTECOUNT | FIXED(11,0) | Size of the DATA data stream in bytes
ROWCOUNT | FIXED(10,0) | Number of table rows in the DATA data stream
TRANSACTIONSIZE | FIXED(6,0) | Minimum number of rows that are to be transformed before the status of the transformation step is logged
SYSTEMTIME | FLOAT(38) | Transformation performance
KERNELTIME | FIXED(20,10) | Kernel performance
LOADERTIME | FLOAT(38) | Loader performance
DATATIME | FLOAT(38) | Pager performance
LOGTIME | FIXED(15,10) | Total time required for the management of actions within a transformation step
IOTIME | FIXED(15,10) | Total I/O time within a transformation step

More Information

Loader, Transformation

Loader, Loader System Tables

Definitions of the System Tables


-25251: Code page to set (<code_page_name>) not found in system table SYSLOADER.CODEPAGE. The privilege to change the content of this table is restricted to SYSDBA. - SAP Documentation

Background documentation -25251: Code page to set (<code_page_name>) not found in system table SYSLOADER.CODEPAGE. The privilege to change the content of this table is restricted to SYSDBA.

Explanation

You have executed the command SET CODEPAGE <code_page_name>. The Loader could not find the code page specified in the command in the system table SYSLOADER.CODEPAGE.In order to enter code pages in this system table using the SET CODEPAGE <code_page_name> command, it is necessary to log on to the database as a database system administrator (SYSDBA user) with the Loader.

User Response

Log on to the database as a database system administrator using the Loader and re-execute the command.


Opening a Database Session: Loader CLI Options - SAP Documentation

Function documentation Opening a Database Session: Loader CLI Options

You can specify Loader CLI options to open a database session in Command File Mode or Session Mode.

connect_options
-d <database_name> | Name of database
-u [<database_user>[,<password>]] | Name and password of database user
-n <database_computer>[:<port>] | Name of database computer
-s <schema_name> | Name of schema
-e <encryption> | Encryption method
-d <database_name>

Loader establishes a connection to the specified database database_name. When it does this, Loader implicitly executes the Loader command USE DB, or Loader command USE USER, if both database name and database user name and password have been specified.

Note Note

You can also specify the name of the database with the Loader commands USE DB or USE USER. This enables you to change the database name during the Loader session.

End of the note.
-u [<database_user>[,<password>]]

The prerequisite for using this option is that you use option -d for specifying a database at the same time. If you use option -u without specifying the database user name and password <database_user>,<password>, Loader prompts you for a database user name/password combination. In this way you can avoid the database user password being visible in the command line, command history, and the operating system process list. A database session is created for the specified database user. At the same time, Loader executes the Loader command USE USER implicitly. The database user name and password are automatically converted into uppercase letters by the database system.

Note Note

You can also use command USE USER to specify user data. This enables you to switch database users during a Loader session.

End of the note.
-n <database_computer>[:<port>]

The prerequisite for using this option is that you use option –d or options –d and –u at the same time. Loader opens a database session on the specified computer database_computer. When it does this, the loader implicitly executes the Loader command USE DB, or the Loader command USE USER if both database name and user data have been specified.

Note Note

You can also use command USE DB or USE USER to specify the name of the database computer.

End of the note.
-s <schema_name>

The prerequisite for using this option is that you use options –d and –u at the same time. Loader opens a database session to the specified schema.

Note Note

You can also transfer the name of the schema using the commands USE SCHEMA, USE USER or SET CURRENT_SCHEMA.

End of the note.
-e <encryption>

You can only use this option if your SAP system is configured for the encryption. You can switch on the encryption function and select the encryption method for communication.

Example

Loader Tutorial, Command File Mode, Session Mode

More Information

Opening a Session: Loader CLI Options

Opening a Session: Loader Commands

Database Administration, Encryption


-3000: Invalid host file content - SAP Documentation

Background documentation -3000: Invalid host file content

Explanation

The data carrier being used does not include any content that matches the command specified.

User Response

  1. Specify a suitable data carrier or a suitable backup tool.

  2. If you have already imported parts of the backup from other data carriers, you have to restart importing the backup.


-813: SERVERDB must be restarted - SAP Documentation

Background documentation -813: SERVERDB must be restarted

Explanation

The database system is not running, or an invalid database name was specified in the program.

User Response

The database administrator must start the database instance, or the user must modify the program or XUSER file.


param_extgetall - SAP Documentation

Background documentation param_extgetall

With this command you can display the data of all database parameters from the database parameter file and the default parameter file.

For each parameter, the system displays the name, the data type, and the current value, which is copied from the parameter file at the start of the session. If the parameter is not in the parameter file, the value from the default parameter file is displayed.

By specifying properties, you can limit what is displayed.

If not all parameters can be displayed due to the limited size of the reply packet, use param_extgetallnext to display the remaining content of the parameter file.

Prerequisites

You have the server permission ParamRead.

Structure

param_extgetall [<property_list>]

<property_list>:: = <property_definition> <property_definition> ...

<property_definition> :: = <property>=<value> | <property>=<value,value,...>

Options
Option | Description
<property> | Property of the parameter, to be specified in upper case If you enter several properties, then only those parameters that correspond to all the criteria are output (AND operator). Each property can only be specified once. If the same property is entered more than once, the last value entered is used for the search.
<value> | Value of the property, to be specified in upper case. You can enter one or more values for each property (OR operator). These are to be separated by commas.

Result

OK

<parameter_name> <type> <value>

<parameter_name> <type> <value>

...

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameter
<type> | Data type of the database parameter
<value> | Current value

In the event of errors, see Reply Format.

Example

Log on to Database Manager CLI as the operator OLEG with the password MONDAY, connect to the DEMODB database, display all the parameters that cannot be changed and are assigned to the general database parameters group :

>dbmcli -u OLEG,MONDAY -d DEMODB param_extgetall CHANGE=NO GROUP=GENERAL

OK

KernelVersion string KERNEL 7.7.02 BUILD 004-103 -136-991

InstanceType string OLTP

More Information

Database Administration, Database Parameters


-8: Execution failed, parse again - SAP Documentation

Background documentation -8: Execution failed, parse again

Explanation

The parse identification (parsid) became invalid by modifications made to the database catalog during parsing and executing a statement.

User Response

Reparse the statement.


-10324: Stream with id (<number>) not found - SAP Documentation

Background documentation -10324: Stream with id (<number>) not found

Explanation

The database procedure is referencing a liveCache stream that the application does not recognize.

User Response

Check the database procedure.


-25233: Some column descriptions with end position but file format is CSV - SAP Documentation

Background documentation -25233: Some column descriptions with end position but file format is CSV

Explanation

Error in the Loader command to import or update data.The command specifies the CSV format for the data stream. With this format, the positions in the column descriptions specify the sequential number of the current field to be imported in a data row of the data stream. End positions are not allowed in this format.

User Response

Correct the positions you entered and re-execute the command.


-25451: Integrity violation (SQL_Error) - SAP Documentation

Background documentation -25451: Integrity violation (SQL_Error)

Explanation

You executed a command (IMPORT) to import data in the PAGE format.The data violates the constraints of the catalog description of the database table.

User Response

Adapt the data that has to be imported to the constraint of the catalog description belonging to the database table, or adapt the constraint of the catalog description belonging to the database table to the data that has to be imported.Then re-execute the command.


-7063: Temp table not allowed - SAP Documentation

Background documentation -7063: Temp table not allowed

Explanation

With temporary tables, you can only use a restricted number of SQL statements for data definition. These include the existence check and statements for creating and deleting tables.

User Response

Decide whether the SQL data definition statement can be removed or whether a permanent table should be created instead of the temporary table.


-28607: Missing object data packet - SAP Documentation

Background documentation -28607: Missing object data packet

Explanation

A data packet is missing because an end point has sent too few data packets.This error only occurs if you are using socket communication. In shared memory communication, data is exchanged directly using shared memory. In contrast, in socket communication, data is sent in extra packets before the request packet and after the response package.

User Response

Contact your local support.


-769: Pointer component not allowed - SAP Documentation

Background documentation -769: Pointer component not allowed

Explanation

Pointers are not allowed within structures.

User Response

Do not specify components as pointers.


-28017: Duplicate callback interface - SAP Documentation

Background documentation -28017: Duplicate callback interface

Explanation

An attempt has been started to use the new and the old registration of transaction-callbacks simultaneously.

User Response

Make sure that either only the new or only the old type of registration is used for transaction-callbacks.


TABLEPRIVILEGES - SAP Documentation

Example documentation TABLEPRIVILEGES

Use of the system tableDOMAIN.TABLEPRIVILEGES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define privileges. Proceed as described in SQL Tutorial, Database Users and Their Privileges.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table TABLEPRIVILEGES to determine the following database information, among other things:

  • All tables for which the current database user has been granted a privilege. Own tables are not output.

    SELECT schemaname, tablename, privilege

    FROM DOMAIN.TABLEPRIVILEGES

    WHERE grantee = 'MONA'

  • All tables for which the current database user has been granted the SELECT privilege and is allowed to pass this on. Own tables are not output.

    SELECT schemaname, owner, tablename

    FROM DOMAIN.TABLEPRIVILEGES

    WHERE grantee = 'MONA'

    AND privilege LIKE '%SEL%'

    AND is_grantable = 'YES'

  • All privileges that the current database user has granted to the database user DAVID

    SELECT schemaname, tablename, privilege

    FROM DOMAIN.TABLEPRIVILEGES

    WHERE grantor = 'MONA'

    AND grantee = 'DAVID'

More Information

All tables: see TABLES

Existence of a table: see TABLES

Table definition: see COLUMNS

Synonym for a table: see SYNONYMS

Table privilege: see TABLES

Table in a view definition: see VIEWCOLUMNS


-11115: Syntax error. Expected: <description>. - SAP Documentation

Background documentation -11115: Syntax error. Expected: <description>.

Explanation

When a MaxDB PHP function is called, a character string that has the incorrect syntax is transferred. For more information, see the <description>.

User Response

Correct the syntax with the help of the information in the description <description>.


SAP MaxDB ODBC Driver Reference - SAP Documentation

Background documentation SAP MaxDB ODBC Driver Reference

ODBC API Compatibility

The SAP MaxDB ODBC driver fulfills the ODBC 3.51 interface specification. More information: http://msdn.microsoft.com

Note Note

When developing your own applications, make sure that you differentiate between the versions ODBC 2.x and ODBC 3.x. Use the SQLSetEnvAttr function to define the SQL_ATTR_ODBC_VERSION attribute before you request a Connection handle with SQLAllocHandle.

End of the note.

The SAP MaxDB ODBC driver supports the complete ODBC SQL syntax. In addition to this, the ODBC driver extends the standard ODBC SQL syntax in the following areas:

  • Database procedures can be processed as SQL statements.

    Note that the ODBC syntax for procedures does not allow any return values for functions.

    More information: SQL Reference Manual, Name of a Database Procedure (dbproc_name)

  • It supports the following types of cursors that can be positioned: static, dynamic, and key set-driven. Using the SQLSetPos function, an application can execute positioning INSERT, UPDATE, and DELETE statements.

    More information: SQL Reference Manual, DECLARE CURSOR Statement (declare_cursor_statement)

More information:

  • Core API

  • Level 1 API

  • Level 2 API

Unicode Support
SAP MaxDB ODBC Driver
Operating System | ODBC Driver (ASCII) | ODBC Driver (Unicode)
Microsoft Windows | sdbodbc.dll | sdbodbcw.dll
Unix and Linux | libsdbodbc.a|so | libsdbodbcw.a|so

More information: Unicode Support

Data Types

The SAP MaxDB ODBC driver lets you convert all data types supported by ODBC.

More information: Supported Data Types


-7085: Function not allowed for this cursor - SAP Documentation

Background documentation -7085: Function not allowed for this cursor

Explanation

You tried to execute a FETCH statement with the FIRST, LAST, PREV, <position> or SAME optional entry for a cursor that is not scrollable. This is only allowed for scrollable cursors.

User Response

Do not use any of the named optional specifications for this cursor, or else use NEXT, or recreate the cursor as a scrollable cursor.


-28508: Unsupported parameter type - SAP Documentation

Background documentation -28508: Unsupported parameter type

Explanation

liveCache cannot assign an SQL data type to a parameter in a method of a component class.

User Response

Contact Support.


-25024: Error switching current schema to <schema_name> ; <error_text> - SAP Documentation

Background documentation -25024: Error switching current schema to <schema_name> ; <error_text>

Explanation

You have either executed a command to log a database user onto a database for a particular schema or you have executed a command for switching the current schema. The command terminated. The error text describes the cause of the error.

User Response

Correct the command and then re-execute it.


-8055 Trigger failed - SAP Documentation

Background documentation -8055 Trigger failed

Explanation

You tried to store incorrect data in the SYSUPDSTATWANTED system table.

User Response

Correct the data.


-762: EXEC ORACLE command has been deleted - SAP Documentation

Background documentation -762: EXEC ORACLE command has been deleted

Explanation

The precompiler removes all statements that are preceded by EXEC ORACLE.

User Response

This is a warning which may provide indications to possible compiler errors.


-3995: Invalid pattern - SAP Documentation

Background documentation -3995: Invalid pattern

Explanation

The value specified in a LIKE predicate does not comply with the syntax of LIKE expressions.

User Response

The value must be corrected according to the syntax rules of LIKE expressions in a LIKE predicate.


Restarting - SAP Documentation

Background documentation Restarting

You can use the Loader syntax rule restart_spec to satisfy the condition for restarting the export or import.

Structure

Syntax Syntax

  1. <restart_spec> ::=
  RESTART <package_guid>

<package_guid> ::=
  <unsigned_integer>
End of the code.

The package_guid is an ID that is created by Loader for each Loader command at runtime. The package_guid is an unsigned integer that is always exactly 24 bytes in length. The package_guid and the computer name of the client of Loader are entered in the table SYSLOADER.TRANSFORMATIONMODEL and logged in the log file. The database user can determine the package_guid of a Loader command from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command by executing this command with the syntax element RESTART <package_guid>.

More Information

  • TRANSFORMATIONMODEL

    Loader Log File

  • EXPORT DB Command

    EXPORT USER Command

    EXPORT SCHEMA Command

  • IMPORT DB Command

    IMPORT USER Command

    IMPORT SCHEMA Command

  • Loader Commands and SQL Statements


Changing Database Parameters - SAP Documentation

Procedure documentation Changing Database Parameters

Database parameters define the fundamental properties of a database.

You can change the values of most database parameters.

Most changes to database parameters take effect only after the database has been restarted.

However, you can change certain database parameters while the database is running, that is in the ONLINE or ADMIN operational state (see the description of individual database parameters for more information). For these changes you can define when they are to become effective:

  • Until the next restart

  • After the next restart

  • Immediately and permanently

Note Note

Starting with version 7.7.03 of the database software, the names of many database parameters have changed.

Some database parameters have also been designated obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

More information: Obsolete Database Parameters

End of the note.

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for changing database parameters.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Parameters tab page.

    The general database parameters are displayed.

    General Database Parameters

    Name

    (from version 7.7.03)

    Old Name

    (up to and including version 7.7.02)

    Description

    Change Restrictions

    More Information

    AutoLogBackupSize

    LOG_SEGMENT_SIZE

    Log segment size (in pages)

    When automatic log backup is activated and no time interval has been configured, then the database system starts an automatic log backup as soon as a log segment is full.

    0: system uses 1/3 of the log area as the log segment size

    ≤50% of the log area: system uses the value defined in AutoLogBackupSize

    > 50% of the log area: system uses 50% of the log area as the log segment size

    Changes only apply after a restart of the database.

    Database Administration, Backing Up Log Entries

    BridgeType

    -

    Specifies whether the database is used in a bridge scenario (where the database acts as a bridge to other databases)

    Changes only apply after a restart of the database.

    CacheMemorySize

    CACHE_SIZE

    Size of the working memory (RAM) which is used by the database system for I/O operations (in pages).

    The main consumers of the working memory area configured with CacheMemorySize are the data cache, the converter, the shared catalog cache and the file directory; but other database components also use this memory area.

    The following restrictions apply: 800 ≤ CacheMemorySize < total RAM size

    This parameter has a great impact on the performance of your system. The optimum value for this parameter depends on your system environment. Note that other database functions and programs also need a certain amount of working memory, so do not assign your whole working memory to CacheMemorySize.

    Changes only apply after a restart of the database.

    Database Administration, Analyzing Database Performance

    Concepts of the Database System, Working Memory Areas

    InstanceType

    INSTANCE_TYPE

    Database type:

    • OLTP

      SAP MaxDB database

    • LVC

      SAP liveCache Technology

    You define the database type when you create the database.

    Cannot be changed

    Concepts of the Database Systems,

    • What is an SAP MaxDB Database?

    • SAP liveCache Technology

    KernelVersion

    KERNELVERSION

    Version of the database software

    You cannot change this value.

    When you install a new version of the database software, the database system updates the value of this parameter.

    MaxBackupMedia

    MAXBACKUPDEVS

    Maximum number of files or tape devices for parallel backup

    Changes only apply after a restart of the database.

    Database Administration, Backup Templates and Data Carriers

    MaxCPUs

    MAXCPU

    Maximum number of processors to which the database system can distribute user tasks.

    When choosing this value, bear in mind that your computer's operating system resources have to be available for other programs as well.

    To further restrict the number of available CPUs in a running system, use the special database parameter UseableCPUs.

    Changes only apply after a restart of the database.

    SAP Note 936058

    MaxDataVolumes

    MAXDATAVOLUMES

    Maximum number of data volumes

    Changes only apply after a restart of the database.

    Concepts of the Database System, Volumes (Permanent Storage)

    MaxLogVolumes

    MAXLOGVOLUMES

    Maximum number of log volumes

    Changes only apply after a restart of the database.

    MaxSQLLocks

    MAXLOCKS

    Maximum number of locks for database objects

    Changes only apply after a restart of the database.

    Concepts of the Database System, Locks

    MaxUserTasks

    MAXUSERTASKS

    Maximum number of simultaneously active user tasks and therefore the maximum number of database sessions

    If this number has been reached, then no additional user can log on to the database.

    Note that if you choose a large value for MaxUserTasks, the database system requires much address space, particularly for local communication via shared memory.

    For SAP systems (OLTP), we recommend the following minimum value: 2 x <number_of_SAP_processes> + 4

    Changes only apply after a restart of the database.

    Concepts of the Database System, Tasks

    SAP Note 757914

    MCODIndicator

    MCOD

    MCOD = Multiple Components One Database

    In SAP systems, this parameter indicates whether several applications are using this database.

    Changes only apply after a restart of the database.

    OmsMaxHeapSize

    OMS_HEAP_LIMIT

    For SAP liveCache databases

    Specifies the maximum size of the OMS heap (in KB)

    Changes only apply after a restart of the database

    -

    RunDirectoryPath

    RUNDIRECTORY

    Run directory of the database

    If you specify a relative path, the system interprets this path relative to the data path:

    <global_data_path>\wrk\<database_name>\ or<private_data_path>\wrk\<database_name>\ (if you have configured a private data path during installation)

    Changes only apply after a restart of the database.

    Glossary, Run Directory

    UseMirroredLog

    LOG_MIRRORED

    Specifies whether the database system mirrors the log area (software-based mirroring)

    This parameter is relevant only when you create a mirror volume using Database Manager CLI. Database Studio automatically adjusts this parameter when you create a mirror volume.

    Note that it we recommend to use hardware-based mirroring for the log area. More information: Planning Databases

    Changes only apply after a restart of the database.

    Glossary, Log Mode

    More information: Database Administration,

    • Special Database Parameters

    • Support Database Parameters

  4. Double-click the database parameter you want to change.

  5. Enter the required data.

    Attribute

    Description

    Active Value

    Active value

    New value

    New value

    Durability

    (Not available for all database parameters)

    • Permanent

      The change is permanent.

    • Running

      The change takes effect immediately.

  6. If necessary, restart the database.

    More information: Starting or Stopping Databases

Note Note

To display a history of all parameter changes, select the History tab page.

End of the note.

More Information

Database Administration, Database Parameters


-25351: No lob file info given for LOB column '<column_name>' - SAP Documentation

Background documentation -25351: No lob file info given for LOB column '<column_name>'

Explanation

Error executing the Loader command for exporting data.The column specified in the SELECT statement of the EXPORT command is of the data type LOB. To export the column, you must include a syntax element in the command for this column for exporting and importing LOB values.

User Response

Correct the command and then re-execute it.


-104: DBM command impossible at this time - SAP Documentation

Background documentation -104: DBM command impossible at this time

Explanation

You have attempted to execute a database management statement.You cannot execute this statement if another database statement is already running.

User Response

Execute the statement later.


-24952: ERR_USRSAVE - could not save user data - SAP Documentation

Background documentation -24952: ERR_USRSAVE - could not save user data

Explanation

The DBM operator data could not be saved.

User Response

Check the file system attributes and the operating system rights of the user profile container. For more information about the user profile container, see Database Administration, Configuration Files.

Check that there is enough memory available on the relevant hard disk.


-10802: Invalid numeric value for parameter/column (<number>) - SAP Documentation

Background documentation -10802: Invalid numeric value for parameter/column (<number>)

Explanation

The numeric value of the parameter/column could not be read or inserted, because the numeric value is invalid.

User Response

Check whether the parameter/column contains a valid value. The following rules apply for floatingpointvalues:

  • The values must be IEEE-compliant.

  • NaN values (NaN=Not a Number) are not permitted


-3007: Invalid sequence for DML and DDL statements - SAP Documentation

Background documentation -3007: Invalid sequence for DML and DDL statements

Explanation

Modifications were made to the database catalog in the time between a QUERY statement that does not generate a result table and the corresponding FETCH statements. These modifications concerned the underlying table of the QUERY statement.

User Response

Repeat the QUERY and FETCH statement.


-25323: Data type of null value representation for column '<column_name>' is incompatible with the column data type - SAP Documentation

Background documentation -25323: Data type of null value representation for column '<column_name>' is incompatible with the column data type

Explanation

Error executing the Loader command for exporting data. For individual columns you can specify a NULL value representation in the command. This means that if a NULL value is exported, the constant value entered in the command is entered into the data stream. The data type of the constant value you specified and the external data type of the column to be exported must be compatible. If you do not specify a data type in the command, the default data type CHAR is used.

User Response

Correct the command and then re-execute it.


MAPSCHEMANAMES - SAP Documentation

Object documentation MAPSCHEMANAMES

System table SYSLOADER.MAPSCHEMANAMES contains information about the schema maps that the Loader can use.

Structure

MAPSCHEMANAMES
PACKAGEGUID | CHAR(24) BYTE | Unique ID of the schema map
MAPPINGNAME | CHAR(32) | Name of the schema map
SOURCESCHEMANAME | CHAR(32) | Name of the schema that is mapped to the target schema
TARGETSCHEMANAME | CHAR(32) | Name of the schema that the original schema is mapped onto

When a schema map is created, the corresponding entries are inserted into the MAPSCHEMANAMES system table. If you delete a schema map, the corresponding entries are deleted from this system table.

More Information

CREATE/DROP SCHEMAMAP Statement

USE SCHEMAMAP Command

IMPORT SCHEMA Command

Loader, Loader System Tables

Definitions of the System Tables


Using Database Events - SAP Documentation

Procedure documentation Using Database Events

An event is a notification from the database system that a certain defined situation has occurred.

Every event is defined by properties such as name and priority, and belongs to an event category. The values that determine when an event of a certain category is triggered are stored in the system. When this value is reached, the system triggers an event. For some categories, there are multiple different property definitions (default values) that trigger an event of that category.

Using database events, you can automate administration tasks or configure notification options for monitoring your database.

Example Example

You define that the system is to send a warning mail to your address when the database fill level exceeds 90%.

End of the example.

You can use Database Studio to specify values for the properties and determine which actions are triggered.

Prerequisites

  • You have the server authorization SystemCmd.

    For more information, see Glossary, Server Permission.

  • The installation-specific X server is running on the database computer.

    Note Note

    On startup of Database Studio, an X server is started automatically. If it has been stopped for some reason, you can start it again manually, see X Server, Starting the Global Listener and/or Installation-Specific X Servers.

    End of the note.

  • A member of the operating system's administrators group has created the file dbm_whitelist.cfg. This file contains absolute paths to the programs that may be linked to events. You enter one program per line. For security reasons, you can only create a link between an event and a program if the program is listed in this file. Exception: Program SDBMAIL, which can be used to send e-mails when events occur and which is called via a function on the DBM server directly. Note that the file must exist even if it is empty.

    Caution Caution

    If powerful programs such as cmd.exe are entered in the dbm_whitelist.cfg file, this enables extensive manipulations of the entire system.

    End of the caution.

  • The current operating system user can access and execute the program that is to be linked to an event.

Procedure

Starting the Event Dispatcher

Links between events and programs only result in actions if the event dispatcher is started. If you define a new link while the event dispatcher is already runnig, the link takes effect immediately.

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Database Event Dispatcher...  .

  3. Select Activate database event dispatcher.

  4. Choose Activate.

Defining Events and Linking Programs to Events

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Database Event Dispatcher...  .

  3. Choose New...

    Note that it is possible to define events of the same category for different threshold values and then link them to different programs.

  4. Configure the event options:

    Options

    Option

    Description

    <event_category>

    Event category; possible values are:

    ThrowDBFillingAboveLimitEvent | ThrowDBFillingBelowLimitEvent | ThrowLogAboveLimitEvent

    ThrowDBFillingAboveLimitEvent:

    The system triggers events of this category when the fill level of the data area exceeds the predefined value.

    Default system values are events with the fill levels of 90%, 95%, 96%, 97%, 98% and 99% (HIGH priority), with the fill levels of 80%, 85% (MEDIUM priority) and with the fill level of 70% (LOW priority)

    ThrowDBFillingBelowLimitEvent:

    The system triggers events of this category when the fill level of the data area falls below the predefined value.

    Default system values are events with the fill levels of 70%, 80%, 85%, 90% and 95% (LOW priority).

    ThrowDBFillingAboveLimitEvent:

    The system triggers events of this category when the fill level of the data area exceeds the predefined values.

    Default system values are events with the fill levels of 96%, 97%, 99% and 99% (HIGH priority), with the fill levels of 90% and 95% (MEDIUM priority) and with the fill levels of 50% and 75% (LOW priority)

    <priority>

    Priority of an event

    Possible values are: LOW | MEDIUM | HIGH

    For events that belong to a category that is changeable, you can override the default values in the database system.

    <value>

    Numerical value whose meaning depends on the event

    DBFILLINGABOVELIMIT:

    For any fill level between 0% and 99% exceeding the defined value, you can define an event (value range 0 ≤ n ≤ 99) as well as a priority for that event.

    DBFILLINGBELOWLIMIT:

    For any fill level between 0% and 100% falling short behind the defined value, you can define an event (value range 1 ≤ n ≤ 100) as well as a priority for that event.

    LOGABOVELIMIT

    For any fill level between 0% and 100% exceeding the defined value, you can define an event (value range 0 ≤ n ≤ 100) as well as a priority for that event.

  5. Enter the command that is to be executed when the event occurs. Either choose a template or enter the command manually.

  6. Choose Finish.

Configuring Mail Notification

SDB Mail (sdbmail) can be used to send e-mails to one or more recipients. SDB Mail uses the Simple Mail Transfer Protocol (SMTP) according to the standard RFC 822. SDB Mail only evaluates one parameter. This parameter describes the contents and the recipient(s) of the e-mail in XML format.

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Database Event Dispatcher...  .

  3. Choose SDB Mail Configuration.

  4. Enter the following data:

    Mail Configuration: Options

    Property

    Description

    SMTP Sender Address

    Sender address of the generated mail

    SMTP Server[:<port>]

    SMTP server name and port number

    If you do not enter a port number, the system uses port 25.

    To specify more than one mail server, separate them by commas (no spaces).

  5. Choose Finish.

More Information

Database Administration, Automating Administration Tasks


-5005: Missing non-NULL value - SAP Documentation

Background documentation -5005: Missing non-NULL value

Explanation

The INSERT or UPDATE statement must contain non-NULL values for all mandatory columns. If a key specification is provided, non-NULL values must be specified for all key columns.

User Response

Use a QUERY-statement issued on the system table DOMAIN.COLUMNS to find out the mandatory columns and the key columns of the table.


DATASTATISTICS - SAP Documentation

Example documentation DATASTATISTICS

Use of the system tableSYSINFO.DATASTATISTICS

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table DATASTATISTICS to determine the following database information, among other things:

  • Displaying the fill level of the database

    SELECT usablesize, usedsize, usedsizepercentage, datafull

      FROM SYSINFO.DATASTATISTICS

  • Displaying which part of the database is occupied with permanent and temporary data, respectively.

    SELECT usedpermanentsize, usedtemporarysize

      FROM SYSINFO.DATASTATISTICS

  • Displaying the amount of all permanent converter data in the active converter and the part of the database where permanent data is stored.

    SELECT usedpermanentconvertersize, usedpermanentsize

      FROM SYSINFO.DATASTATISTICS

    You can use the column values USEDPERMANENTCONVERTERSIZE and USEDPERMANENTSIZE to estimate how large the data area is in case of a recovery.

  • Displaying the amount of permanent data and converter data which is addressed in the inactive snapshot converter only and for which there is no entry in the active converter

    SELECT usedsnapshotsize

      FROM SYSINFO.DATASTATISTICS

    You can use the column value USEDSNAPSHOTSIZE to identify how many sides have changed since creation of the snapshot and are now different to the current data.


-22005: Connection timeout occurred. Session reconnected - SAP Documentation

Background documentation -22005: Connection timeout occurred. Session reconnected

Explanation

The user's transaction was canceled and reset by a ROLLBACK statement. The database session was terminated because the user failed to carry out any operations during a certain period of time (special database parameter SessionTimeout, or the timeout value specified in the CONNECT statement). The ODBC driver recognizes the timeout in this type of instance and automatically logs the user back on to the database using the original parameters (user name, password, database name, server host, and so on). Each statement from the relevant session signals this with return code SQL_SUCCESS_WITH_INFO and message -22005.

User Response

Every statement that has a result set (CURSOR) must be executed again in order to ensure that the result sets are built up again. If the connection is set to SQL_AUTOCOMMIT_OFF, all the other statements that were in an open transaction must also be executed again.


Properties - SAP Documentation

Procedure documentation Properties

The Properties user menu contains some status information which can be helpful for database administration.

Procedure

In the DBA Cockpit, (transaction DBACOCKPIT, choose the Properties user menu.

Result

Caution Caution

For SAP NetWeaver 7.1, this status information is displayed in the Properties menu, which is different from the menu described below.

End of the caution.

The following properties are displayed:

Status |
Name of the Database Connection | Logical name, that is, the name of the database connection of the database or SAP liveCache More information: Name of the Database Connection
Operational State / liveCache State | Operational state (ONLINE, STANDBY, ADMIN, OFFLINE) More information: Operational State
Standard Database/liveCache user | Database user ID that is used for SQL queries to the database More information: Standard Database User
Version | Version of database/liveCache kernel in accordance with the version notation More information: Database Server and Versions
Online since | Time stamp
SQl access possible | Display as to whether SQL database queries are possible
Properties |
Database/liveCache Name | Name of the database on the database/liveCache host More information: Database Name
Database/liveCache Server | Name of database/liveCache computer More information: Database Server and Versions
Display/hide details | Choose Display/Hide Details to display or hide further properties.
Description | Description of the Database
Database/liveCache Version | Version of database/liveCache kernel in accordance with the version notation More information: Database Server and Versions
Operating System | Name of the operating system
Addressing | Addressing display in bits
InstallationPath | <installation_path> Installation Directory of the Database Software
GlobalPrograms | <global_program_path> Programs that are shared by databases and applications
GlobalData | <global_data_path> Parameters, configuration and log files, and run directories that are shared by databases and applications.
PrivateData | <private_data_path> Parameters, configuration and log files, and run directories that are used by a database and its applications.
Rundirectory | <global/private_data_path>\wrk\<database_name> Run directory whose path is stored in the general database parameter RunDirectoryPath.
Operating | SAP liveCache Technology
Last Initialization Last Start/Stop Action | Status of operating actions, display of current protocols and time stamp for actions, and other information
Display/Hide Operating Actions | Choose Display/Hide Operating Actions to display or hide liveCache operating actions. More information: Operating (liveCache)
Settings |
Automatic Log Backup OFF | ON | Displays whether automatic log backup is activated More information: Activate Automatic Log Backup
Database Analyzer OFF | ON | Displays whether the Database Analyzer is switched on More information: Database Analyzer
Snapshot exists No | Yes | Display whether a snapshop was created More information: Database Administration, Making Snapshots of the Data Area
Command Monitor OFF | ON | Displays whether the Command Monitor is switched on More information: Command Monitor
Resource Monitor OFF | ON | Displays whether the Resource Monitor is switched on More information: Resource Monitor
Database Trace OFF | ON | Displays whether the database trace is switched on More information: Database Trace
Displaying Critical Database States

  • If the data or log area has become full, the system displays this.

    More information: Monitoring the Data Area, Monitoring the Log Area

  • If the system finds any bad indexes, a display appears.

    More information: Indexes, Index Analysis

Hot Standby System

In the case of a Hot Standby System, additional information on the individual standby instances (name, type and operational status) is displayed.

Database Administration, Hot-Standby

More Information

  • Central System Data

    System Settings

  • Database Files

    Glossary, Directory, Run Directory

  • Database/liveCache Alert Monitor, Installation, State

  • DBA Cockpit: SAP MaxDB


From 25000 to 25999 - SAP Documentation

Background documentation From 25000 to 25999

Loader System Messages
25599 | Value for usage <number> rows too high to fit into one database page. Ignoring value
25600 | CONFIGURATION stream is not supported for this Loader command
25601 | Output of NULL values for column <column_name> will be truncated
25602 | Possible overflow of integer values for column '<column_name>'
25603 | Output of literal '<literal>' will be truncated
25604 | Surplus long file info (column name/id '<column_name>') ignored
25605 | No header in binary data file and no record length in command (using computed value of <number> bytes for record length)
25606 | Different byte swap of source and target machine; LOB values may be corrupted after import
25607 | Value for usage <value>% too less to fit one row into one database page. Ignoring value.
25608 | Restart file <file_name> not found; starting import from the beginning
25913 | Table <schema_name>. <table_name> not imported
25921 | Range of SEQUENCE is exhausted
25926 | Processed command is a PAGES format based transport from database with "ASCII|UNICODE" catalog to database with "UNICODE|ASCII" catalog
25940 | Error at record <record_count> in input file for table <table_name>
25965 | No data to import in datastream <file_name> ; either the stream is empty or a specified condition does not match any data
25966 | Error at record <record_count> in input file <file_name>
25967 | Error at position <file_position> in input file <file_name>
25968 | Number of NULL values inserted: <null_count> (NULL representation in data file is <null_representation>)


-25213: Invalid file format specification: given formats rule each other out - SAP Documentation

Background documentation -25213: Invalid file format specification: given formats rule each other out

Explanation

The command to export or import data contains an error.You cannot specify both CSV and FWV as the format for a data stream. These formats exclude each other.

User Response

Correct the format and re-execute the command.


Number Generator - SAP Documentation

Background documentation Number Generator

See Sequence


NULL Value Representation - SAP Documentation

Background documentation NULL Value Representation

Loader can process different NULL value representations in the data streams. You can use the default NULL value representation or specify a representation for a Loader session or for individual Loader commands.

Structure

Specifying NULL Value Representation for a Loader Session

You can specify the NULL value representation for the current Loader session using the SET command. This representation remains valid for the Loader session until it is overwritten by a new SET command. If you do not specify a NULL value representation with the SET command, the Loader default value (question mark ?) is used.

Syntax Syntax

  1. <SET_null_spec_command> ::=
  SET <null_spec>

<null_spec> ::=
  NULL '<literal>'
End of the code.

You can use the SET command to specify the character string literal with which NULL values are represented in data streams. A NULL value representation can have a maximum length of 20 characters and is of data type CHAR.

Specifying NULL Value Representation for the Data Stream

You can specify the current value for NULL value representation in data streams for individual Loader commands. To do this, use syntax element null_spec to define the data format of a data stream. If you do not use syntax element null_spec to specify a NULL value representation for the data stream, the value set for the Loader session using the SET command is used. If you have not specified a NULL value representation with the SET command, the Loader's default value (question mark ?) is used. You can only specify NULL value representations for data streams with CSV and FWV formats; NULL value representation is neither necessary nor possible for the formats PAGES and RECORDS.

Syntax Syntax

  1. <csv_or_fwv_format_null_spec> ::=
  <null_spec>

<null_spec> ::=
  NULL '<literal>'
End of the code.

You use the null_spec syntax rule to specify the character string literal with which NULL values are represented in data streams. A NULL value representation can have a maximum length of 20 characters and is of data type CHAR.

Example Example

You want to import data from the data stream room_cvs.data to the database. You want to import the NULL value into the columns of the target table in a separate representation. A SET command was not used.

IMPORT TABLE hotel.room

DATA INSTREAM 'room_csv.data' NULL 'NULL'

End of the example.

The literal NULL was selected for the representation of the NULL value in the room_csv.data data stream.

Example Example

You want to import data from the data stream room_cvs.data to the database. You want to import the NULL value into the columns of the target table with its default value. A SET command was not used.

IMPORT TABLE hotel.room

DATA INSTREAM 'room_csv.data'

End of the example.

The literal ? was selected for the representation of the NULL value in the room_csv.data data stream.

Specifying NULL Value Representation for a Data Field

Loader manages the NULL value representation for data streams in the PAGES or RECORDS formats internally. The following explanations are therefore not relevant for the EXPORT DB|USER|SCHEMA and IMPORT DB|USER|SCHEMA commands.

Output Columns in EXPORT Commands

You can specify the NULL value representation for individual data fields in EXPORT TABLE or EXPORT COLUMNS commands (Output Column). You use the syntax element null_assign to specify which value for the data field of the source table is written to the data stream if the value in the source table is a NULL value. If you do not use the syntax element null_assign to specify a NULL value representation, the value set for the data stream using the null_spec syntax element is also used for the data field. If you have not specified a NULL value representation for the data stream using syntax element null_spec, the value set for the Loader session using the SET command is used. If you have not specified a NULL value representation with the SET command, the Loader's default value (question mark ?) is used.

Syntax Syntax

  1. <null_assign> ::=
  [IF] NULL SET '<literal>'
End of the code.

You can use the null_assign syntax element to specify the character string literal with which NULL values are represented in data streams. A NULL value representation can have a maximum length of 20 characters and is of data type CHAR. If you want to display the NULL value representation in one of the external data types for binary values, it must have a valid numeric format. This means either a floating decimal number in mantissa/exponent representation or a fixed point number with the current or standard decimal setting. The generated NULL value representation is written to the same location in the data stream as the actual column value.

  • If the NULL value representation is shorter than the length of the value specified by the position (for data streams in the FWB format), the value is filled with blank characters. If the NULL value representation is longer, it is shortened to the specified length, and Loader writes a warning in the log file.

  • If you define a NULL value representation for exporting NOT NULL columns, it does not cause an error. Loader ignores the specifications.

Example Example

You want to export the ROOM table from the database to the room_csv.data data stream. Some of the columns in the table contain NULL values. A SET command was not used.

EXPORT COLUMNS * FROM hotel.room

  MAP COLUMNS

    hno    1

    type  2

    free    3 IF NULL SET '0'

    price 4 IF NULL SET 'X'

DATA OUTSTREAM 'room_csv.data'

End of the example.

You use the syntax element null_assign for the FREE and PRICE columns. If a NULL value is found in the column, the respective NULL value representation is entered into the data stream. Loader’s default value for NULL value representation (question mark ?) is used for all other columns.

Example Example

You want to export the ROOM table from the database to the room_csv.data data stream. Some of the columns in the table contain NULL values. A SET command was not used.

EXPORT COLUMNS * FROM hotel.room

  MAP COLUMNS

    hno    1

    type  2

    free  3

    price 4

DATA OUTSTREAM 'room_csv.data'

or

EXPORT TABLE hotel.room

DATA OUTSTREAM 'room_csv.data'

End of the example.

Since you have not defined NULL value representation for any of the columns in the EXPORT command, but all values have external data type CHAR, Loader default NULL value representation ? is used.

Example Example

You want to export the ROOM table from the database to the room_fwv_binary.data data stream. Some of the columns in the table contain NULL values. A SET command was not used.

EXPORT COLUMNS * FROM hotel.room

  MAP COLUMNS

    hno    01-05

    type  06-11

    free  12-15 INTEGER

    price 16-19 INTEGER

DATA OUTSTREAM 'room_fwv_binary.data' FWV BINARY

End of the example.

Since you have not defined a NULL value representation for any of the columns in the EXPORT command, Loader attempts to use the default NULL value representation (data type CHAR). This causes an error if a numeric external data type has been defined for the columns. The Loader command terminates with an error message.

Column Description in IMPORT and UPDATE Commands

In the IMPORT TABLE, IMPORT COLUMNS and UPDATE COLUMNS commands, you can use the null_condition syntax element to specify the conditions that must be fulfilled for a NULL value to be imported into a column of the target table (Column Description). If you specify all the columns in the IMPORT or UPDATE but do not specify a null_condition, the values are imported from the data stream to the target table as they are in the data stream. In other words, Loader does not attempt to interpret the individual values as NULL values.

Syntax Syntax

  1. <null_condition> ::=
  NULL [IF] <condition>
| DEFAULT NULL
End of the code.

  • NULL [IF] <condition>: Before each line of the data stream is imported to (or changed in) the table, the system checks if the condition formulated for the columns applies. If it does, the NULL value is inserted in this table column. If not, the value from the assigned field in the data stream is inserted. When the condition is evaluated, the shorter of the comparison values (value in the data stream or the NULL value representation) is filled with blank characters to make the comparison possible.

  • DEFAULT NULL: Before each line of the data stream is imported (or changed), the system checks if the value in the data stream for the column matches the Loader’s default NULL value. If it does, the NULL value is inserted in this column. If not, the value from the assigned field in the data stream is inserted. When the values are compared, the shorter of the comparison values (value in the data stream or the NULL value representation) is filled with blank characters to make the comparison possible.

If you use DEFAULT NULL, the Loader default NULL value is determined as follows: the value set for the data stream with syntax element null_spec is used as the NULL value. If you have not specified a NULL value representation for the data stream using syntax element null_spec, the value set for the Loader session using the SET command is used. If you have not specified a NULL value representation with the SET command, the Loader default value (question mark ?) is used. You cannot set a NULL value for columns defined as key columns (KEY) or as NOT NULL. If you import or change the table, the action terminates and the relevant error message is displayed. Loader inserts a NULL value instead of the DEFAULT value on columns that you have defined as NOT NULL DEFAULT <value>.

Example Example

You want to import the data from the room_cvs.data data stream to the database. You want the NULL value to be imported In some columns of the target table if a specific condition is fulfilled.

IMPORT TABLE hotel.room

DATA INSTREAM 'room_csv.data'

  hno    1

  type  2

  free  3 NULL IF POS 3 = '0'

  price  4 NULL IF POS 4 <> 'XXXX'

End of the example.

You specify a separate condition for the specified data field for each FREE and PRICE column. The NULL value is entered into the corresponding table column if this condition is met.

Example Example

You want to import data from the customer_csv.data data stream to the database. A NULL value is to be imported in some columns of the target table if an explicitly specified condition is fulfilled. In other columns, the NULL value is only to be imported if the Loader default NULL value representation is found. A SET command was not used.

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  cno        1

  title      2 DEFAULT NULL

  firstname  3 NULL IF POS 3 = 'XXXX'

  name        4

  zip        5 DEFAULT NULL

  address    6

End of the example.

The condition for the TITLE and ZIP columns is that the NULL value is inserted in the corresponding table column if the Loader default NULL representation (?) is found in the data stream. A separate condition was defined for the FIRSTNAME column for the values in the data stream. If this condition is fulfilled, the NULL values are inserted in the corresponding table column.

Example Example

You want to import data from the data stream room_cvs.data into the database. You want to import the NULL value in certain columns of the target table. A SET command was not used.

IMPORT TABLE hotel.room

DATA INSTREAM 'room_csv.data'

  hno    1

  type  2

  free  3 DEFAULT NULL

  price  4 DEFAULT NULL

End of the example.

The same representation of the NULL value in the data stream (?) applies to all columns of the IMPORT command where DEFAULT NULL is specified. This is the default value for NULL value representation in this case. The condition for the FREE and PRICE columns is that the NULL value is inserted in the corresponding table column if the Loader NULL representation (?) is found in the data stream.

Example Example

You want to import data from the data stream room_cvs.data to the database. You want to import the NULL value to some columns of the target table in a separate representation.

IMPORT TABLE hotel.room

DATA INSTREAM 'room_csv.data' NULL 'NULL'

  hno    1

  type  2

  free  3 DEFAULT NULL

  price  4 DEFAULT NULL

End of the example.

The same representation of the NULL value in the data stream (the literal NULL) applies to all columns in the IMPORT command where DEFAULT NULL is specified. The condition for the FREE and PRICE columns is that the NULL value is inserted in the corresponding table column if the Loader NULL representation (NULL) is found in the data stream.

More Information

SQL Reference Manual, NULL Value

Loader Commands and SQL Statements


Visual Query Editor - SAP Documentation

Background documentation Visual Query Editor

In the Visual Query Editor, you can enter SQL statements graphically and edit them, as well as display foreign key dependencies between tables.

More information: Visual Query

Note Note

You can only use normal joins in the Visual Query Editor. Outer joins are not possible.

End of the note.
SQL Editor: SQL Tab Page, Context Menu

Command

Description

Load

Open a saved SQL statement from a repository or file

Save

Save an SQL statement in a repository or file

Save As ...

Save an SQL statement under a different name

Explain SQL

Execute EXPLAIN statement for the SQL statement

The system displays the result of the EXPLAIN statement in the Explain view.

See: SQL Optimizer, Analyzing Search Strategies Using the EXPLAIN Statement

Execute SQL

The system executes the SQL statement.

  • If you enter multiple SQL statements separated by comment characters, the system executes all the entered SQL statements.

  • If you selected an SQL statement in the SQL editor, the system executes only the selected SQL statement.

Prepare Statement

Testing Prepared Statements

Choose Connection

Select connection to database:

  • Landscape

  • Database computer

  • Database name

  • User name

Clear

Clear input field

Format

Format input

SQL Editor: Result Tab Page, Context Menu
Command | Description
Go to Row ... | Go to row ...
Export Cell to ... | Export cell to ...
Export Result ... | Export result to a file
Filters | Define filters for columns
Edit | Edit a data record

As AUTOCOMMIT mode, SQL mode, and isolation level, the system uses the values that you specified when you configured Database Studio. More information: Configuring Database Studio

To use other settings in the SQL editor that is currently open, change the setting on the Properties tab page (if this tab page is not open, choose [image] Window [image] Show View [image] Properties [image] ):

AUTOCOMMIT Mode
ON | The database system performs all the necessary COMMIT actions automatically.
OFF | You have to enter COMMIT commands explicitly.
SQL Modes
Name | Description
INTERNAL | SAP MaxDB SQL definition
ORACLE | ORACLE 7 SQL definition

For more information about the isolation level: Concepts of the Database System, Isolation Level

More Information

SQL Reference Manual

SQL Tutorial


-28005: Duplicate object - SAP Documentation

Background documentation -28005: Duplicate object

Explanation

An attempt was made to generate a copy of a variable object (omsLoadVarObject), even though the caller already owns a copy. This copy must first be released with omsReleaseVarObject.

User Response

Contact Support.


SAP Library - Database Studio

Start Level 1 Node: Database Studio Database Studio End Level 1 Node: Database Studio
Start Level 2 Node: Starting and Configuring Database Studio: Overview Starting and Configuring Database Studio: Overview End Level 2 Node: Starting and Configuring Database Studio: Overview
Start Level 3 Node: Starting Database Studio Starting Database Studio End Level 3 Node: Starting Database Studio
Start Level 3 Node: Configuring Database Studio Configuring Database Studio End Level 3 Node: Configuring Database Studio
Start Level 4 Node: Database Studio Preferences: Database Studio Database Studio Preferences: Database Studio End Level 4 Node: Database Studio Preferences: Database Studio
Start Level 4 Node: Database Studio Preferences: Editors Database Studio Preferences: Editors End Level 4 Node: Database Studio Preferences: Editors
Start Level 4 Node: Database Studio Preferences: Export/Import Database Studio Preferences: Export/Import End Level 4 Node: Database Studio Preferences: Export/Import
Start Level 4 Node: Database Studio Preferences: Logging Database Studio Preferences: Logging End Level 4 Node: Database Studio Preferences: Logging
Start Level 4 Node: Database Studio Preferences: Query Result Database Studio Preferences: Query Result End Level 4 Node: Database Studio Preferences: Query Result
Start Level 4 Node: Database Studio Preferences: Repository Database Studio Preferences: Repository End Level 4 Node: Database Studio Preferences: Repository
Start Level 4 Node: Database Studio Preferences: User Management Database Studio Preferences: User Management End Level 4 Node: Database Studio Preferences: User Management
Start Level 3 Node: Database Studio Screen Areas Database Studio Screen Areas End Level 3 Node: Database Studio Screen Areas
Start Level 4 Node: My Repository My Repository End Level 4 Node: My Repository
Start Level 4 Node: Explorer Tree Explorer Tree End Level 4 Node: Explorer Tree
Start Level 4 Node: Administration Editor Administration Editor End Level 4 Node: Administration Editor
Start Level 4 Node: Table Editor Table Editor End Level 4 Node: Table Editor
Start Level 4 Node: View Editor View Editor End Level 4 Node: View Editor
Start Level 4 Node: Sequence Editor Sequence Editor End Level 4 Node: Sequence Editor
Start Level 4 Node: SQL Editor SQL Editor End Level 4 Node: SQL Editor
Start Level 4 Node: Visual Query Editor Visual Query Editor End Level 4 Node: Visual Query Editor
Start Level 4 Node: Explain (View) Explain (View) End Level 4 Node: Explain (View)
Start Level 4 Node: Actions (View) Actions (View) End Level 4 Node: Actions (View)
Start Level 4 Node: Event Log Viewer Event Log Viewer End Level 4 Node: Event Log Viewer
Start Level 2 Node: Showing or Hiding Databases Showing or Hiding Databases End Level 2 Node: Showing or Hiding Databases
Start Level 2 Node: Managing Database Landscapes Managing Database Landscapes End Level 2 Node: Managing Database Landscapes
Start Level 2 Node: Logging On to a Database Logging On to a Database End Level 2 Node: Logging On to a Database
Start Level 2 Node: Creating Login Templates Creating Login Templates End Level 2 Node: Creating Login Templates
Start Level 2 Node: Starting or Stopping Databases Starting or Stopping Databases End Level 2 Node: Starting or Stopping Databases
Start Level 2 Node: Creating and Updating Databases: Overview Creating and Updating Databases: Overview End Level 2 Node: Creating and Updating Databases: Overview
Start Level 3 Node: Creating Databases Creating Databases End Level 3 Node: Creating Databases
Start Level 3 Node: Loading Demo Data Loading Demo Data End Level 3 Node: Loading Demo Data
Start Level 3 Node: Updating the System Tables Updating the System Tables End Level 3 Node: Updating the System Tables
Start Level 2 Node: Creating and Using Database Objects: Overview Creating and Using Database Objects: Overview End Level 2 Node: Creating and Using Database Objects: Overview
Start Level 3 Node: Creating Schemas Creating Schemas End Level 3 Node: Creating Schemas
Start Level 3 Node: Deleting Schemas Deleting Schemas End Level 3 Node: Deleting Schemas
Start Level 3 Node: Creating Tables Creating Tables End Level 3 Node: Creating Tables
Start Level 3 Node: Changing Table Properties Changing Table Properties End Level 3 Node: Changing Table Properties
Start Level 3 Node: Defining Custom Table Properties Defining Custom Table Properties End Level 3 Node: Defining Custom Table Properties
Start Level 3 Node: Deleting Tables Deleting Tables End Level 3 Node: Deleting Tables
Start Level 3 Node: Creating Columns Creating Columns End Level 3 Node: Creating Columns
Start Level 3 Node: Changing Column Properties Changing Column Properties End Level 3 Node: Changing Column Properties
Start Level 3 Node: Defining Constraints for Columns Defining Constraints for Columns End Level 3 Node: Defining Constraints for Columns
Start Level 3 Node: Deleting Columns Deleting Columns End Level 3 Node: Deleting Columns
Start Level 3 Node: Defining Foreign Key Dependencies Defining Foreign Key Dependencies End Level 3 Node: Defining Foreign Key Dependencies
Start Level 3 Node: Creating View Tables Creating View Tables End Level 3 Node: Creating View Tables
Start Level 3 Node: Renaming View Tables Renaming View Tables End Level 3 Node: Renaming View Tables
Start Level 3 Node: Deleting View Tables Deleting View Tables End Level 3 Node: Deleting View Tables
Start Level 3 Node: Creating Synonyms Creating Synonyms End Level 3 Node: Creating Synonyms
Start Level 3 Node: Renaming Synonyms Renaming Synonyms End Level 3 Node: Renaming Synonyms
Start Level 3 Node: Deleting Synonyms Deleting Synonyms End Level 3 Node: Deleting Synonyms
Start Level 3 Node: Creating Indexes Creating Indexes End Level 3 Node: Creating Indexes
Start Level 3 Node: Changing Index Properties Changing Index Properties End Level 3 Node: Changing Index Properties
Start Level 3 Node: Activating or Deactivating Indexes Activating or Deactivating Indexes End Level 3 Node: Activating or Deactivating Indexes
Start Level 3 Node: Deleting Indexes Deleting Indexes End Level 3 Node: Deleting Indexes
Start Level 3 Node: Creating Sequences Creating Sequences End Level 3 Node: Creating Sequences
Start Level 3 Node: Deleting Sequences Deleting Sequences End Level 3 Node: Deleting Sequences
Start Level 3 Node: Creating Database Procedures Creating Database Procedures End Level 3 Node: Creating Database Procedures
Start Level 3 Node: Executing Database Procedures Executing Database Procedures End Level 3 Node: Executing Database Procedures
Start Level 3 Node: Deleting Database Procedures Deleting Database Procedures End Level 3 Node: Deleting Database Procedures
Start Level 3 Node: Creating Database Functions Creating Database Functions End Level 3 Node: Creating Database Functions
Start Level 3 Node: Using Database Functions Using Database Functions End Level 3 Node: Using Database Functions
Start Level 3 Node: Deleting Database Functions Deleting Database Functions End Level 3 Node: Deleting Database Functions
Start Level 3 Node: Creating Database Triggers Creating Database Triggers End Level 3 Node: Creating Database Triggers
Start Level 3 Node: Deleting Database Triggers Deleting Database Triggers End Level 3 Node: Deleting Database Triggers
Start Level 3 Node: Testing Prepared Statements Testing Prepared Statements End Level 3 Node: Testing Prepared Statements
Start Level 2 Node: Changing Database Properties: Overview Changing Database Properties: Overview End Level 2 Node: Changing Database Properties: Overview
Start Level 3 Node: Displaying the Database Properties Displaying the Database Properties End Level 3 Node: Displaying the Database Properties
Start Level 3 Node: Changing Database Parameters Changing Database Parameters End Level 3 Node: Changing Database Parameters
Start Level 3 Node: Changing Log Settings Changing Log Settings End Level 3 Node: Changing Log Settings
Start Level 3 Node: Adding Data Volumes Adding Data Volumes End Level 3 Node: Adding Data Volumes
Start Level 3 Node: Activating or Deactivating the Automatic Extension of the Data A Activating or Deactivating the Automatic Extension of the Data A End Level 3 Node: Activating or Deactivating the Automatic Extension of the Data A
Start Level 3 Node: Deleting Data Volumes Deleting Data Volumes End Level 3 Node: Deleting Data Volumes
Start Level 3 Node: Adding Log Volumes Adding Log Volumes End Level 3 Node: Adding Log Volumes
Start Level 3 Node: Activating or Deactivating the Automatic Recreation of Damaged I Activating or Deactivating the Automatic Recreation of Damaged I End Level 3 Node: Activating or Deactivating the Automatic Recreation of Damaged I
Start Level 3 Node: Activating or Deactivating the Automatic SQL Optimizer Statistic Activating or Deactivating the Automatic SQL Optimizer Statistic End Level 3 Node: Activating or Deactivating the Automatic SQL Optimizer Statistic
Start Level 2 Node: Changing Data in the Database Changing Data in the Database End Level 2 Node: Changing Data in the Database
Start Level 2 Node: Monitoring Databases: Overview Monitoring Databases: Overview End Level 2 Node: Monitoring Databases: Overview
Start Level 3 Node: Displaying Information About the Data Area Displaying Information About the Data Area End Level 3 Node: Displaying Information About the Data Area
Start Level 3 Node: Displaying Information About the Log Area Displaying Information About the Log Area End Level 3 Node: Displaying Information About the Log Area
Start Level 3 Node: Displaying Information About the Database Analyzer Displaying Information About the Database Analyzer End Level 3 Node: Displaying Information About the Database Analyzer
Start Level 3 Node: Displaying Information About Caches (Working Memory Areas) Displaying Information About Caches (Working Memory Areas) End Level 3 Node: Displaying Information About Caches (Working Memory Areas)
Start Level 3 Node: Displaying Information About Database Activities Displaying Information About Database Activities End Level 3 Node: Displaying Information About Database Activities
Start Level 3 Node: Displaying Information About Tasks Displaying Information About Tasks End Level 3 Node: Displaying Information About Tasks
Start Level 3 Node: Displaying Information About Threads Displaying Information About Threads End Level 3 Node: Displaying Information About Threads
Start Level 3 Node: Monitoring Databases in a Database Landscape Monitoring Databases in a Database Landscape End Level 3 Node: Monitoring Databases in a Database Landscape
Start Level 2 Node: Updating SQL Optimizer Statistics Updating SQL Optimizer Statistics End Level 2 Node: Updating SQL Optimizer Statistics
Start Level 2 Node: Using Database Events Using Database Events End Level 2 Node: Using Database Events
Start Level 2 Node: Backing Up Databases: Overview Backing Up Databases: Overview End Level 2 Node: Backing Up Databases: Overview
Start Level 3 Node: Defining Backup Templates Defining Backup Templates End Level 3 Node: Defining Backup Templates
Start Level 3 Node: Changing the Properties of Backup Templates Changing the Properties of Backup Templates End Level 3 Node: Changing the Properties of Backup Templates
Start Level 3 Node: Deleting Backup Templates Deleting Backup Templates End Level 3 Node: Deleting Backup Templates
Start Level 3 Node: Backing Up Data Backing Up Data End Level 3 Node: Backing Up Data
Start Level 3 Node: Backing Up Log Entries Backing Up Log Entries End Level 3 Node: Backing Up Log Entries
Start Level 3 Node: Activating or Deactivating Automatic Log Backup Activating or Deactivating Automatic Log Backup End Level 3 Node: Activating or Deactivating Automatic Log Backup
Start Level 3 Node: Checking Backups Checking Backups End Level 3 Node: Checking Backups
Start Level 3 Node: Opening the Backup History Opening the Backup History End Level 3 Node: Opening the Backup History
Start Level 3 Node: Making Snapshots of the Data Area Making Snapshots of the Data Area End Level 3 Node: Making Snapshots of the Data Area
Start Level 3 Node: Displaying Information About Snapshots Displaying Information About Snapshots End Level 3 Node: Displaying Information About Snapshots
Start Level 3 Node: Reverting to a Snapshot Reverting to a Snapshot End Level 3 Node: Reverting to a Snapshot
Start Level 3 Node: Deleting Snapshots Deleting Snapshots End Level 3 Node: Deleting Snapshots
Start Level 2 Node: Exporting and Importing: Overview Exporting and Importing: Overview End Level 2 Node: Exporting and Importing: Overview
Start Level 3 Node: Exporting Data and/or Information from the Database Catalog Exporting Data and/or Information from the Database Catalog End Level 3 Node: Exporting Data and/or Information from the Database Catalog
Start Level 3 Node: Importing Data and/or Information from the Database Catalog Importing Data and/or Information from the Database Catalog End Level 3 Node: Importing Data and/or Information from the Database Catalog
Start Level 3 Node: Transporting Data and/or Information from the Database Catalog Transporting Data and/or Information from the Database Catalog End Level 3 Node: Transporting Data and/or Information from the Database Catalog
Start Level 3 Node: Saving SQL Statements or Definitions of Database Objects in a Re Saving SQL Statements or Definitions of Database Objects in a Re End Level 3 Node: Saving SQL Statements or Definitions of Database Objects in a Re
Start Level 3 Node: Editing Objects in a Repository Editing Objects in a Repository End Level 3 Node: Editing Objects in a Repository
Start Level 2 Node: Managing Users: Overview Managing Users: Overview End Level 2 Node: Managing Users: Overview
Start Level 3 Node: Creating Database Users Creating Database Users End Level 3 Node: Creating Database Users
Start Level 3 Node: Changing the Properties of Database Users Changing the Properties of Database Users End Level 3 Node: Changing the Properties of Database Users
Start Level 3 Node: Deleting Database Users Deleting Database Users End Level 3 Node: Deleting Database Users
Start Level 3 Node: DBM Operators: Creating, Editing and Deleting DBM Operators: Creating, Editing and Deleting End Level 3 Node: DBM Operators: Creating, Editing and Deleting
Start Level 2 Node: Analyzing Database Performance: Overview Analyzing Database Performance: Overview End Level 2 Node: Analyzing Database Performance: Overview
Start Level 3 Node: Configuring and Starting SQL Performance Monitoring Configuring and Starting SQL Performance Monitoring End Level 3 Node: Configuring and Starting SQL Performance Monitoring
Start Level 3 Node: Analyzing SQL Performance Bottlenecks Analyzing SQL Performance Bottlenecks End Level 3 Node: Analyzing SQL Performance Bottlenecks
Start Level 3 Node: Analyzing SQL Statements (EXPLAIN) Analyzing SQL Statements (EXPLAIN) End Level 3 Node: Analyzing SQL Statements (EXPLAIN)
Start Level 3 Node: Starting or Stopping Database Analyzer Starting or Stopping Database Analyzer End Level 3 Node: Starting or Stopping Database Analyzer
Start Level 2 Node: Troubleshooting: Overview Troubleshooting: Overview End Level 2 Node: Troubleshooting: Overview
Start Level 3 Node: Displaying Configuration and Log Files Displaying Configuration and Log Files End Level 3 Node: Displaying Configuration and Log Files
Start Level 3 Node: Checking Database Structures Checking Database Structures End Level 3 Node: Checking Database Structures
Start Level 3 Node: Displaying Indexes Displaying Indexes End Level 3 Node: Displaying Indexes
Start Level 3 Node: Creating Database Traces Creating Database Traces End Level 3 Node: Creating Database Traces
Start Level 2 Node: Restoring Databases: Overview Restoring Databases: Overview End Level 2 Node: Restoring Databases: Overview
Start Level 3 Node: Restoring Databases Restoring Databases End Level 3 Node: Restoring Databases
Start Level 3 Node: Initializing Databases Initializing Databases End Level 3 Node: Initializing Databases
Start Level 3 Node: Recreating Damaged Indexes Recreating Damaged Indexes End Level 3 Node: Recreating Damaged Indexes
Start Level 2 Node: Logging Users Off from a Database Logging Users Off from a Database End Level 2 Node: Logging Users Off from a Database
Start Level 2 Node: Deleting Databases Deleting Databases End Level 2 Node: Deleting Databases
Start Level 2 Node: Executing DBM Commands Executing DBM Commands End Level 2 Node: Executing DBM Commands
Start Level 2 Node: Working with SQL Statements: Overview Working with SQL Statements: Overview End Level 2 Node: Working with SQL Statements: Overview
Start Level 3 Node: Entering and Executing SQL Statements Entering and Executing SQL Statements End Level 3 Node: Entering and Executing SQL Statements
Start Level 3 Node: Visual Query Visual Query End Level 3 Node: Visual Query


-25552: Error exporting statistics: <error_text> - SAP Documentation

Background documentation -25552: Error exporting statistics: <error_text>

Explanation

You have attempted to export statistics of a table, of a schema, of a database user or of an entire database.An error occurred that is described in more detail in <error_text>.

User Response

Fix the error and re-execute the command.


-7051: Read only view WITH CHECK OPTION not allowed - SAP Documentation

Background documentation -7051: Read only view WITH CHECK OPTION not allowed

Explanation

The view table to be defined cannot be changed. The specification WITH CHECK OPTION is not allowed for non-changeable view tables.

User Response

Repeat the SQL statement without the WITH CHECK OPTION.


Defining Backup Templates - SAP Documentation

Procedure documentation Defining Backup Templates

Before you can back up data and log entries to a data carrier, you have to define a backup template. In the properties of the backup template you specify the backup type and the type of data carrier that is to be used.

To speed up backups, you can carry them out to several data carriers in parallel. If choose to do so, you need to define a backup template for parallel backups. You can use third-party backup tools to back up and restore data and log entries

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Backup tab page.

  4. Expand Templates.

  5. Choose New.... .

    To create a backup template for parallel backups, choose [image] New [image] New Parallel Backup Template [image] . Then proceed as with normal backup templates, except that you define several devices instead of one. For backups of the TAPE type, you can use up to 32 tape devices in parallel.

  6. Enter the following data:

    Backup Template Properties

    Property

    Description

    Name

    The name of the backup template has no influence on the name of the backup created later using this backup template.

    Backup Type

    • Complete data backup

    • Incremental data backup

    • Log backup

    Device Type

    Data carrier type

    • File

    • Tape

    • Pipe

      Note Note

      For automatic log backups, you cannot use pipes.

      End of the note.

    Backup Tool

    Only if you are using a third-party backup tool

    Specify the backup tool:

    • BACK: Backint for Oracle or Backint for MaxDB

    • NSR: Networker

    • TSM: TSM

    More information: Database Administration, Using Third-Party Backup Tools

    Device/File

    Depending on the backup type enter the required information:

    • Name of the tape device in the operating system

    • Path and file name of the file in the file system

      Caution Caution

      If you do not enter a full path here, the system stores your backup in the run directory of the database.

      More information: Glossary, Run Directory

      End of the caution.

    • Path and name of the pipe

    We recommend that you do not use the same data carrier for several databases.

    For log backups to files, the system adds a sequence number to the name of each new backup file. It assigns the numbers sequentially as long as the history of the log backups is not interrupted. If the log backup history is interrupted (for example after the database was initialized), the system starts numbering at 001 again.

    It also uses sequential numbers if you carry out multiple log backups for one database onto different data carriers, and thus to files with different file names.

    Example Example

    LogUri.001

    LogKai.002

    LogOleg.003

    LogUri.004

    LogUri.005

    End of the example.

    If automatic log backup is switched on, the system stores all backup files under the same file name using a sequence number.

    Example Example

    DEMODB_MYLOG.001

    DEMODB_MYLOG.002

    DEMODB_MYLOG.003

    DEMODB_MYLOG.004

    DEMODB_MYLOG.005

    End of the example.

    You can also back up to data carriers on remote computers. More information: Database Administration, Backing Up and Restoring Data with Remote Computers

    Size

    There is no size restriction in default mode.

    The size of log backups to files is calculated as the size of a log segment (general database parameter AutoLogBackupSize) plus the space required by system information.

    More information: Database Administration, General Database Parameters

    Compressed

    For backup templates of the FILE and PIPE types only

    Specifies whether the backup is compressed

    Overwrite

    For backup templates of the FILE type only

    Specifies whether the backup file can be overwritten

    We recommend that you do not overwrite a backup with the backup that immediately follows it. Always keep an older version of the backup.

    Block Size

    Block size that the system uses to write backups to the data carrier.

    Autoloader

    Select this option if you want to use a tape device with an automatic tape loader.

    OS Command

    For backup templates fo the TAPE type only

    Operating system command for backing up to tape devices

    Encryption

    Prerequisites: license for SAP Cryptolib (only available in SAP systems), private-public key pair has been created using sapgenpse

    • Algorithm

      Available encryption algorythms: DES, AES

    • Owner

      Private key owner (see X.509 certificate)

    For more information, see Encryption.

    To use a third-party backup tool, choose the following settings:

    • Device Type: Pipe

    • Backup Tool: Name of the backup tool

    • Device/File: Operating system path of the pipe

    Supported Third-Party Backup Tools

    Name

    Key

    Description

    More information

    TSM (IBM/Tivoli)

    TSM

    You can connect TSM using the TSM client adint2 or using the Backint for Oracle interface.

    With adint2, you achieve better performance. However, this program is not available on all platforms.

    Installation Manual,

    • Connecting to TSM

    • Connecting to a Backint for Oracle Interface

    NetWorker (Legato)

    NSR

    You can connect NetWorker using the command line clients SAVE, RECOVER and MMINFO that are included in the Networker software, or using the Backint for Oracle interface.

    The command line clients deliver better performance.

    See Installation Manual, Connecting to NetWorker

    NetBackup (Veritas)

    BACK

    -

    Installation Manual, Connecting to VERITAS NetBackup

    All backup tools that support Backint for SAP MaxDB

    BACK

    Backint for SAP MaxDB is an interface that is supported by various third-party vendors.

    Installation Manual, Connecting to a Backint for SAP MaxDB Interface

    For more information about the requirements for the Backint for SAP MaxDB interface, see http://maxdb.sap.com/archive/

    All backup tools that support Backint for Oracle

    BACK

    Backint for Oracle is an interface that is supported by various third-party vendors.

    Installation Manual, Connecting to a Backint for Oracle Interface

Example

Example of a Backup Template for a Complete Data Backup
Property | Value
Name of the backup template | COM
Backup type | COMPLETE DATA
Data carrier type | FILE
Data carrier (Device/File) | DEMODB_COM Note that if you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory. Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_COM
Size of data carrier | No restriction (blank or 0)
Block size | 8 pages
Overwritable | Yes
Example of a Backup Template for a Log Backup
Property | Value
Name of the backup template | DEMODB_LOG
Backup type | LOG
Data carrier type | FILE
Data carrier (Device/File) | DEMODB_MYLOG Note that i you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory. Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_LOG
Size of data carrier | No restriction (blank or 0)
Block size | 8 pages
Overwritable | No

More Information

Database Administration, Backup Templates and Data Carriers


Database Consistency - SAP Documentation

Background documentation Database Consistency

See Database Structure


-10003: Feature not supported for kernel version <version> - SAP Documentation

Background documentation -10003: Feature not supported for kernel version <version>

Explanation

The version <version> of the database software in use is too old.

User Response

Install a most recent version of the database software.


-25309: Invalid input for BOOLEAN column: <input_value> - SAP Documentation

Background documentation -25309: Invalid input for BOOLEAN column: <input_value>

Explanation

The Loader command to import or update data contains an error. You can define how BOOLEAN values are displayed externally either in each individual command or in a command file for all commands. The value that has to be imported is not compatible with this display type.

User Response

Correct the data and re-execute the command.


25604: Surplus long file info (column name/id '<column_name>') ignored - SAP Documentation

Background documentation 25604: Surplus long file info (column name/id '<column_name>') ignored

Explanation

This warning appears if you are using the Loader command for exporting data and you want to export LOB columns. You have specified LOB data streams in the command. These data streams cannot be assigned to a column in the column list of the command. Any supernumerary LOB data streams will be ignored when exporting the data. This warning does not cause the command to terminate.

User Response

No user action is required.


SAP Library - SQLCLI

Start Level 1 Node: SQLCLI SQLCLI End Level 1 Node: SQLCLI
Start Level 2 Node: Logging On to a Database Logging On to a Database End Level 2 Node: Logging On to a Database
Start Level 2 Node: Executing Commands Executing Commands End Level 2 Node: Executing Commands
Start Level 3 Node: Multiple Line Mode Multiple Line Mode End Level 3 Node: Multiple Line Mode
Start Level 3 Node: Command Buffer Command Buffer End Level 3 Node: Command Buffer
Start Level 3 Node: Editing Commands in an External File Editing Commands in an External File End Level 3 Node: Editing Commands in an External File
Start Level 3 Node: Batch File Batch File End Level 3 Node: Batch File
Start Level 3 Node: Redirecting Results to a File Redirecting Results to a File End Level 3 Node: Redirecting Results to a File
Start Level 2 Node: Executing SQL Statements Executing SQL Statements End Level 2 Node: Executing SQL Statements
Start Level 2 Node: Executing Database Procedures Executing Database Procedures End Level 2 Node: Executing Database Procedures
Start Level 2 Node: Requesting Information About the Database Catalog Requesting Information About the Database Catalog End Level 2 Node: Requesting Information About the Database Catalog
Start Level 2 Node: Executing a Shell Command Executing a Shell Command End Level 2 Node: Executing a Shell Command
Start Level 2 Node: Exiting SQLCLI Exiting SQLCLI End Level 2 Node: Exiting SQLCLI
Start Level 2 Node: Overview of All SQLCLI Call Options Overview of All SQLCLI Call Options End Level 2 Node: Overview of All SQLCLI Call Options
Start Level 2 Node: Overview of All SQLCLI Commands Overview of All SQLCLI Commands End Level 2 Node: Overview of All SQLCLI Commands


Configuring Systems for Remote Monitoring Using Remote Database (SAP Library - SAP MaxDB Library) Connections

 Start of Content Area

Procedure documentation Configuring Systems for Remote Monitoring Using Remote Database Connections Locate the document in its SAP Library structure

Use

You use this procedure to configure systems that you want to monitor using remote database connections.

Depending on the database platform of the selected system, some options might not be available. In this case you cannot enter any data in the corresponding fields.

Prerequisites

● The system(s) you want to monitor must have a database release that is compatible with the database release of your local database.

● The user for the database connection must have sufficient database permissions. For more information, see Maintenance Actions in the DBA Cockpit.

Procedure

Adding a System

...

1. Call the DBA Cockpit.

The screen DBA Cockpit: System Configuration Maintenance appears. It displays a list of all systems available with a Stop, Go, or Inactive icon, which shows the current system status.

When you start the DBA Cockpit for the first time, the local system is automatically added to the list of all systems available. At least one system entry is displayed.

2. Choose Add.

The screen Configuration: System Administration – Add System Entry appears.

3. Specify the connection data as follows:

a. In the System field, enter the name of the system you want to monitor.

This name is a unique ID and does not need to be the SAP system ID. You can choose any name except the SAP system ID of the local system, which is reserved for the local system entry.

Except for the local system entry, Remote Database is already selected.

b. Select Database Connection.

Enter the name of the database connection. If the database connection does not yet exist, you are directed to the DB Connections: Add Connection Entry screen where you can specify all relevant data for the new connection. For more information, see Configuration of Database Connections.

c. After you have saved your entries, you are redirected to the screen System Administration Details.

d. If an additional RFC destination is used for special ABAP monitoring functions or if the connection is initially routed using an RFC connection (MS SQL Server only), select RFC Destination, too.

e. If required, enter the name of the RFC connection.

After the connection data has been completed, it is displayed on the System Data tab page. You can enter additional data on the Administration Data tab page as follows:

○ Enter a description of your system.

○ Depending on the database platform, select the options for how you want to collect monitoring data:

■ If alerts are to be provided for the RZ20 alert monitor, select Collect Alert Data.

■ If data about the performance or the size of database objects is to be collected, select Collect Space and Performance History Data.

■ If the task of collecting monitoring data is running on the remote system, select Data Collection by Remote System.

■ If data for the central planning calendar is to be provided, select Collect Central Planning Calendar Data.

■ Only for Oracle

If the diagnostic package is licensed, make sure that Oracle Diagnostic Package is Licensed (SAP Note 1250596) is selected.

4. Save your changes.

Changing the Connection Parameters of a System

...

1. Perform step 1 as described above under Adding a System.

2. Select a system.

3. Choose Edit.

The screen Configuration: System Administration – Change System Entry appears.

4. Enter your changes in the corresponding fields.

5. Save your changes.

Deleting a System Entry

...

1. Perform step 1 as described above under Adding a System.

2. Select a system.

3. Choose Delete.

End of Content Area


-28905: DB function called for indexing failed - SAP Documentation

Background documentation -28905: DB function called for indexing failed

Explanation

A function call caused an error during an index maintenance.

User Response

Correct the function so that no error is caused anymore.


Table Name - SAP Documentation

Background documentation Table Name

The syntax rule table_name specifies the table name in Loader commands for exporting and importing data.

Structure

Syntax Syntax

  1. <table_name> ::=
  [<schema_name>.]<identifier>
End of the code.

You use the syntax rule table_name to specify the name(s) of the target table(s) in Loader commands for exporting or importing data.

Example

Example Example

EXPORT TABLE hotel.room

DATA OUTSTREAM 'room_csv.data'

End of the example.

The application data from table ROOM is exported.

Example Example

IMPORT TABLE hotel.room

DATA INSTREAM 'room_csv.data'

  hno      1

  type  2

  free  3

  price  4

End of the example.

The application data from file room_csv.data is imported into the specified columns of table ROOM.

Example Example

IMPORT TABLE hotel.room

IF POS 06–11 = 'double'

DATA INSTREAM 'room_csv.data'

  hno      01-05

  type  06-11

  free  12-15

  price  16-22

End of the example.

You only want to import those data records from the data stream room_csv.data into the target table ROOM in which double is specified as the room type.

More Information

EXPORT TABLE Command

IMPORT TABLE Command

EXPORT COLUMNS Command

IMPORT COLUMNS Command

UPDATE COLUMNS Command

Selecting Data Records

Loader Commands and SQL Statements

SQL Reference Manual, Table Name (table_name)


-1023: Too many nested subtransactions - SAP Documentation

Background documentation -1023: Too many nested subtransactions

Explanation

The maximum nesting level of subtransactions is 32767. This number was exceeded.

User Response

Check which error in application programming generated this nesting level of subtransactions, and correct it.


-25209: Invalid FRACTION specification (neg. vals not allowed) - SAP Documentation

Background documentation -25209: Invalid FRACTION specification (neg. vals not allowed)

Explanation

The command to export or import data contains an error.The value entered for FRACTION cannot be a negative value.

User Response

Correct the entry you made for FRACTION and re-execute the command.


-3064: Date input value out of range - SAP Documentation

Background documentation -3064: Date input value out of range

Explanation

An invalid value was specified for a format element in a function that converts a value into a date value.

Limits for Format Elements
Year | YYYY | 1-4713
Day of the month | DD | 1-28/29/30/31
Day of the year | DDD | 1-365/366
Day of the week | D | 1-7
Hours | HH,HH12 | 1-12
Hours | HH24 | 0-23
Minutes | MI | 0-59
Seconds | SS | 0-59
Seconds of the day | SSSSS | 0-86399
Julian calendar date | J | 1-3442447
User Response

Correct the value.


-24979: ERR_XPNOTFOUND - parameter not found - SAP Documentation

Background documentation -24979: ERR_XPNOTFOUND - parameter not found

Explanation

The specified database parameter does not exist in the parameter help file.

User Response

Check that the parameter name is correct. Bear case-sensitivity in mind.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


EXPORT COLUMNS - SAP Documentation

Background documentation EXPORT COLUMNS

You can use the EXPORT COLUMNS command to export individual column values of a table. The requested tables must be available in the database instance. You can only execute the EXPORT COLUMNS command if you have access authorization for the table(s) you want to export.

Prerequisites

You can use all of the demo data in database DEMODB. Start the Loader and log onto demo database DEMODB as database administrator MONA with the password RED.

Use the session mode: loadercli -d demodb -u mona,red

Activities

Export the data of the CUSTOMER table in the HOTEL schema. After the keywords EXPORT COLUMNS you can specify the required table columns and their order, like in a SELECT statement. You can make entries after the keyword DATA to control the destination you wish the application data to be exported to.

Exporting all Application Data in a Table

You can export the application data for a table.

EXPORT COLUMNS * FROM hotel.customer

  DATA OUTSTREAM 'customer_csv.data'

The application data (DATA) is exported in the CSV format (default value).

EXPORT COLUMNS * FROM hotel.customer

  DATA OUTSTREAM 'customer_fwv.data' FWV

The application data (DATA) is exported in the FWV format.

EXPORT COLUMNS * FROM hotel.customer

  DATA OUTSTREAM 'customer_fwvbinary.data' FWV BINARY

The application data (DATA) is exported in the FWV BINARY format. You may not change a data file that has the FWV BINARY format as it is a binary format specific to the Loader.

See also: Loader, Data stream, CSV, FWV, FWV BINARY

You use either the command EXPORT COLUMNS * ... DATA ... or the command EXPORT TABLE ... DATA ... to export all application data of a table. In both cases, the order the data is exported in is determined by the order of the table columns.

Exporting the Application Data from Specified Columns in a Table

You can export the individual column values of a table.

EXPORT COLUMNS cno, title, name, zip, address

  FROM hotel.customer

  DATA OUTSTREAM 'customer_csv.data'

The columns CNO, TITLE, NAME, ZIP and ADDRESS of the CUSTOMER table are exported in the specified order.

EXPORT COLUMNS title, name, cno, zip, address

  FROM hotel.customer

  DATA OUTSTREAM 'customer_csv.data'

The columns TITLE, NAME, CNO, ZIP and ADDRESS of the CUSTOMER table are exported in the specified order.

Sequence of Table Rows

To arrange the table rows in the data stream in a particular sequence, you can use the ORDER clause. The columns specified in the ORDER clause determine the sort sequence. Note the sequence of the syntax elements. Enter the ORDER clause first.

EXPORT COLUMNS name, title, cno, zip, address

  FROM hotel.customer

  ORDER BY name, zip

  DATA OUTSTREAM 'customer_csv.data'

The rows in the CUSTOMER table are sorted by the values in the NAME and ZIP columns and exported in that order into the data stream.

Specifying LOCK Option and the Isolation Level

The syntax elements for setting locks and specifying the isolation level are used frequently. Observe the sequence of syntax elements, which is specified by the syntax rules for a SELECT statement.

EXPORT COLUMNS cno, title, name, zip, address

  FROM hotel.customer

  WITH LOCK

  ISOLATION LEVEL 0

  DATA OUTSTREAM 'customer_csv.data'

The specified columns of the CUSTOMER table are exported. In doing so, the LOCK option and isolation level 0 are set.

See also: SQL Reference Manual, SELECT Statement (select_statement)

Sequence of the Table Columns in the Data Stream

After the key words MAP COLUMNS you can specify the order of the table columns in the data stream. Note the sequence of the syntax elements.

EXPORT COLUMNS * FROM hotel.customer

  MAP COLUMNS

    cno 1-5

    title 6-13

    name 14-54

    firstname 55-75

    zip 76-81

    address 82-122

  DATA OUTSTREAM 'customer_fwv.data' FWV

All column values are exported and stored in the data stream in the sequence CNO, TITLE, NAME, FIRSTNAME, ZIP, ADDRESS. This is also possible if you export selected columns only, as the following example illustrates:

EXPORT COLUMNS cno, title, name, zip, address

  FROM hotel.customer

  MAP COLUMNS

    name 1

    title 2

    cno 3

    zip 4

    address 5

  DATA OUTSTREAM 'customer_csv.data'

The CNO, TITLE, NAME, ZIP, ADDRESS column values are exported and stored in the data stream in the sequence NAME, TITLE, CNO, ZIP, ADDRESS.

Handling LOB Values

When you use the CSV and FWV [BINARY] formats, specific data streams are created for the LOB data. The data of the HOTEL table in the HOTEL schema is to be exported to a CSV data stream. The HOTEL table has the LOB column INFO. Enter the LOB syntax element after the DATA syntax element.

EXPORT COLUMNS * FROM hotel.hotel

  DATA OUTSTREAM 'hotel_csv.data'

  LOB OUTSTREAM INFO 'hotel_info_csv.lob'

All the columns in the HOTEL table are exported. The LOB values are stored in the data stream hotel_info_csv.lob

See also: Loader, Exporting LOB Values

Complete Syntax of the EXPORT COLUMNS Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

EXPORT COLUMNS cno, title, name, zip, address

  FROM hotel.customer

  ORDER BY name, zip

  WITH LOCK

  ISOLATION LEVEL 0

  MAP COLUMNS

    cno 1-4 INTEGER

    title 5-12

    name 13-53

    zip 54-59

    address 60-100

  DATA OUTSTREAM 'customer_fwvbinary.data' FWV BINARY

For a complete syntax description, see EXPORT COLUMNS command in the Loader documentation.

More Information

Other commands for Exporting

Corresponding import command IMPORT COLUMNS

Session Mode


Repositories - SAP Documentation

Background documentation Repositories

A repository is a central storage location to which you can, for example, save SQL statements or the definition of database objects.

You can use each SAP MaxDB database as a repository.

You can configure a central WebDAV repository in the network. This type of central repository has several branches:

  • Public branch

    Can be accessed by all users belonging to the same central user administration

  • Private branches

    User-specific, can be accessed only by the respective user

You can also use other WebDAV repositories.

More Information

Database Studio,

  • Saving SQL Statements or Definitions of Database Objects in a Repository

  • Editing Objects in a Repository

WebDAV Servlet documentation


-25212: Invalid TRUNC specification (0 <= TRUNC_value <= 18) - SAP Documentation

Background documentation -25212: Invalid TRUNC specification (0 <= TRUNC_value <= 18)

Explanation

The command to export or import data contains an error.A number specified for TRUNC must be between 0 and 18.

User Response

Correct the number of rows you specified for TRUNC and re-execute the command.


Changing Database Properties: Overview - SAP Documentation

Background documentation Changing Database Properties: Overview

  • Displaying Database Properties

  • Changing Database Parameters

  • Changing Log Settings

  • Adding Data Volumes

  • Activating or Deactivating Automatic Extension of the Data Area

  • Deleting Data Volumes

  • Adding Log Volumes

  • Activating or Deactivating the Automatic Recreation of Damaged Indexes

  • Activating or Deactivating the Automatic SQL Optimizer Statistics Update

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Changing Database Properties


-7079: A backup is already running - SAP Documentation

Background documentation -7079: A backup is already running

Explanation

An attempt was made to start a backup while another backup is running. You can only run one backup at a time.

User Response

No user action is possible.


-2002: One output column too long - SAP Documentation

Background documentation -2002: One output column too long

Explanation

The concatenation of values resulted in an excessively long alphanumeric value.

User Response

Do without this kind of output. If it can be assumed that all values in a column are shorter than the maximum length defined for this column, the attempt can be made to reduce the result to fewer characters by applying the SUBSTR function. In any case, the columns and expressions involved in a concatenation can be output separately.


Deleting Database Procedures - SAP Documentation

Procedure documentation Deleting Database Procedures

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the database procedure or have DROPIN privilege for the schema to which the database procedure is assigned.

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer window, open the Procedures folder.

  2. In the context menu of the database procedure, choose Delete.

More Information

SQL Reference Manual, DROP DBPROC[EDURE] Statement (drop_dbproc_statement)


-1452: Duplicate secondary key - SAP Documentation

Background documentation -1452: Duplicate secondary key

Explanation

Several table rows already exist with the same values in the specified columns when a UNIQUE definition is specified, when the column attribute UNIQUE is used or when a UNIQUE definition is specified in the CREATE INDEX statement.

User Response

Do not use UNIQUE; or make sure that only one table row contains a certain combination of values in the specified columns. The error message specifies the column or multiple-column index already containing the specified values.


-23104: Could not load table definition - SAP Documentation

Background documentation -23104: Could not load table definition

Explanation

The definition of a table could not be loaded.

User Response

Contact Support.


-28525: Procedure Address not found - SAP Documentation

Background documentation -28525: Procedure Address not found

Explanation

The function specified when dbpGetProcAddress was called could not be localized.

User Response

Contact Support.


FREEBLOCKMANAGERSTATISTICS - SAP Documentation

Object documentation FREEBLOCKMANAGERSTATISTICS

The system table SYSINFO.FREEBLOCKMANAGERSTATISTICS contains information on block states.

Structure

FREEBLOCKMANAGERSTATISTICS
USEDVOLUMES | FIXED(5) | Number of used data volumes
LASTUSEDVOLUME | FIXED(5) | Last requested block was on this volume
TOTALBLOCKCOUNT | FIXED(20) | Number of usable blocks
FREEBLOCKCOUNT | FIXED(20) | Number of free blocks
OCCUPIEDBLOCKCOUNT | FIXED(20) | Number of occupied blocks
SHADOWBLOCKCOUNT | FIXED(20) | Number of shadow blocks
BACKUPBLOCKCOUNT | FIXED(20) | Number of occupied blocks in state backup
BACKUPSHADOWBLOCKCOUNT | FIXED(20) | Number of shadow blocks in state backup
SINGLEBLOCKREQUESTCOUNT | FIXED(20) | Number of requests for a single free block
MULTIBLOCKREQUESTCOUNT | FIXED(20) | Number of requests for a multiple blocks
MULTIBLOCKREQUESTEDCOUNT | FIXED(20) | Number of blocks requested
MULTIBLOCKDELIVEREDCOUNT | FIXED(20) | Number of blocks delivered
CLUSTERREQUESTCOUNT | FIXED(20) | Number of requests for cluster
CLUSTERDELIVEREDCOUNT | FIXED(20) | Number of clusters delivered
DATABASEFULLCOUNT | FIXED(20) | Number of database full situations detected by the free block management

More Information

FREEBLOCKMANAGERBLOCKSTATES

FREEBLOCKMANAGERSECTIONS

FREEBLOCKMANAGERSTATISTICSRESET


LOCKSTATISTICSRESET - SAP Documentation

Object documentation LOCKSTATISTICSRESET

The system table SYSINFO.LOCKSTATISTICSRESET describes the degree to which lock management is being utilized and the number of special events that have occurred during lock management since the last RESET LOCKSTATISTICS or RESET ALL.

Structure

LOCKSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
AVGUSEDENTRYCOUNT | FIXED(10) | Average number of entries used
AVGUSEDENTRYCOUNTPERCENTAGE | FIXED(3) | Average percentage of entries used
MAXUSEDENTRYCOUNT | FIXED(10) | Maximum number of entries used
MAXUSEDENTRYCOUNTPERCENTAGE | FIXED(3) | Maximum percentage of entries used
LOCKESCALATIONCOUNT | FIXED(10) | Number of lock escalations executed
SQLLOCKCOLLISIONCOUNT | FIXED(10) | Number of lock collisions for SQL database objects
OMSLOCKCOLLISIONCOUNT | FIXED(10) | Number of lock collisions for OMS objects
DEADLOCKCOUNT | FIXED(10) | Number of dead locks recognized
SQLREQUESTTIMEOUTCOUNT | FIXED(10) | Number of unfulfilled lock requests for SQL database objects
OMSREQUESTTIMEOUTCOUNT | FIXED(10) | Number of unfulfilled lock requests for OMS objects

More Information

LOCKSTATISTICS

Concepts of the Database System, Locks


Creating Indexes - SAP Documentation

Procedure documentation Creating Indexes

An index is a database object that can be defined for an individual column or a series of columns in a database table. It consists of one or more inversion lists. An index may improve the performance of the database system.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the INDEX privilege for the table.

    More information: SQL Reference Manual, Privilege Specification (privilege_specification)

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the table for which you want to create an index.

  2. In the context menu of the table, choose Definition.

  3. Open the Indexes tab page.

  4. In the context menu of the editor window, choose Edit.

  5. In the context menu of the editor window, choose Add Index.

  6. Enter the index attributes.

    Indexes

    Property

    Description (Link to SQL Reference Manual)

    Index name

    Index Name (index_name)

    In Index

    Indicates whether a column belongs to the index

    Sort

    Sort sequence

    Name

    Column name

    Data Type

    Column data type

    You cannot use LOB columns in an index.

    Unique

    Indicates whether the values for this columns must be unique

    UNIQUE Definition (unique_definition)

    Disabled

    Indicates whether the index is deactivated

    Usage Count

    Indicates how often the system has used the index

    Bad

    Indicates whether the index is damaged

  7. In the context menu of the editor window, choose Alter Table.

More Information

SQL Reference Manual, CREATE INDEX Statement (create_index_statement)


-830: File open error - SAP Documentation

Background documentation -830: File open error

Explanation

A file could not be opened.

User Response

Check whether the file is available or the spelling of the filename is correct. For the exact error description, see the file appldiag.


-10757: XUSER error (<description>) - SAP Documentation

Background documentation -10757: XUSER error (<description>)

Explanation

You entered the KEY property for the CONNECT method. An error occurred while the related XUSER entry was being detected.

User Response

Use the XUSER list command to ensure that the XUSER entry you specified for the KEY property really exists. If the XUSER entry does not exist, create it using the XUSER set command.


IMPORT COLUMNS Command - SAP Documentation

Background documentation IMPORT COLUMNS Command

You can use the Loader command IMPORT COLUMNS to control the import of application data into a table.

Prerequisites

The table exists in the database. Otherwise it must be created before the IMPORT COLUMNS command is executed. You have either exported the required data with the corresponding EXPORT command or the data is available in the specified data format.

Structure

Syntax Syntax

  1. <import_columns_command> ::=
  IMPORT COLUMNS TABLE <table_name>
    [<if_condition>]
    [<duplicates_clause>]
    <import_column_spec> ... <data_instream_column_spec>Column description

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<data_instream_column_spec> ::=
  DATA <instream_columnformat_spec> [<import_lobcolumn_spec> ...]

<package_spec> ::=
  PACKAGE <oustream_csv_spec>
End of the code.

Loader generates an internal mass INSERT statement from the IMPORT COLUMNS command and executes it. During the import operation, all the tables modified by this IMPORT COLUMNS command can also be read and changed by other database users.

<duplicates_clause>

You use the DUPLICATES clause to specify how to proceed when importing data from a data stream if a row with the same key as the new row already exists in the table. This clause is not evaluated if the data is imported into the database in PAGES format.

REJECT DUPLICATES | The new line is rejected with an error message (default value).
IGNORE DUPLICATES | The new line is not inserted.
UPDATE DUPLICATES | The new line overwrites the existing line.

Result

The data in the data stream has been imported to the target table(s). All the changes made to the target table(s) have been written to the log area of the database instance.

Note Note

You use either the command IMPORT COLUMNS TABLE * ... DATA ... or the command IMPORT TABLE ... DATA ... to import all the application data of a table. The corresponding data stream must contain data for all the columns of the table. If not, Loader reports an error.

End of the note.

Errors: If the import operation cannot be completed successfully, Loader logs the last row that was successfully inserted in the table, the number of rows inserted, and the number of rows rejected in the log file.

Example

Loader Tutorial, IMPORT COLUMNS

More Information

Importing: Loader Commands

EXPORT COLUMNS Command

Loader Log File


-10307: Invalid length or indicator value for parameter (<number>) - SAP Documentation

Background documentation -10307: Invalid length or indicator value for parameter (<number>)

Explanation

You have entered a value for the <number> parameter with either an invalid length or an invalid indicator value.

User Response

Check the specified value. The value must be >= 0, SQLDBC_NULL_DATA or SQLDBC_DEFAULT_PARAM.


Creating and Using Database Objects: Overview - SAP Documentation

Background documentation Creating and Using Database Objects: Overview

You can use Database Studio to create and use database objects.

Schemas:

  • Creating Schemas

  • Deleting Schemas

Tables:

  • Creating Tables

  • Changing Table Properties

  • Defining Custom Table Properties

  • Deleting Tables

  • Creating Columns

  • Changing Column Properties

  • Defining Constraints for Columns

  • Deleting Columns

  • Defining Foreign Key Dependencies

View Tables:

  • Creating View Tables

  • Renaming View Tables

  • Deleting View Tables

Synonyms:

  • Creating Synonyms

  • Renaming Synonyms

  • Deleting Synonyms

Indexes:

  • Creating Indexes

  • Changing Index Properties

  • Activating or Deactivating Indexes

  • Deleting Indexes

Sequences:

  • Creating Sequences

  • Deleting Sequences

Database Procedures:

  • Creating Database Procedures

  • Executing Database Procedures

  • Deleting Database Procedures

Database Functions:

  • Creating Database Functions

  • Using Database Functions

  • Deleting Database Functions

Database Triggers:

  • Creating Database Triggers

  • Deleting Database Triggers

Prepared Statements:

  • Testing Prepared Statements

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

  • SQL Reference Manual

  • SQL Tutorial


0: Success - SAP Documentation

Background documentation 0: Success

Explanation

The SQL statement was successfully executed, with the required effect.

User Response

No user action is required.


360: Foreign key integrity violated - SAP Documentation

Background documentation 360: Foreign key integrity violated

Explanation

In an INSERT or UPDATE statement issued on a join view table, the column values that functionally depend on the referencing columns of the referencing table conflict with the existing column values.

User Response

Resolve the conflict by modifying the column values or the existing values.


-3048: Invalid date format - SAP Documentation

Background documentation -3048: Invalid date format

Explanation

The specified value is not a valid date value or does not correspond to the date and time format chosen during installation or the current session.

User Response

Correct the date value.


-833: Illegal INCLUDE position - SAP Documentation

Background documentation -833: Illegal INCLUDE position

Explanation

An INCLUDE statement is not at the correct position in the module.

User Response

Place the INCLUDE statement in the correct position.


-10101: Invalid value for ISOLATIONLEVEL (<description>) - SAP Documentation

Background documentation -10101: Invalid value for ISOLATIONLEVEL (<description>)

Explanation

You entered a value that is not allowed for the ISOLATIONLEVEL option of property SQLDBC_ConnectProperties for method SQLDBC_Connection::connect.<description> provides more information about the error.

User Response

Check the value that you enteres for the ISOLATIONLEVEL option.


-10323: Non-character and non-binary data for parameter/column (<number>) was tried to read piecewise - SAP Documentation

Background documentation -10323: Non-character and non-binary data for parameter/column (<number>) was tried to read piecewise

Explanation

There was an attempt to read a parameter or a column piecewise, but the parameter or column does not contain character or binary data.

User Response

Only use piecewise reading for characters or binary data.


-28545: Container exists already - SAP Documentation

Background documentation -28545: Container exists already

Explanation

Creation of the object-container failed since it is already existent in the core.

User Response

Internal error code.


-28537: Inheritance_error: Object has no key - SAP Documentation

Background documentation -28537: Inheritance_error: Object has no key

Explanation

The attempt of accessing an object over a key failed, since the object does not have a key.

User Response

Make sure that key accesses are only carried out on objects with a key.


-3049: Invalid time format - SAP Documentation

Background documentation -3049: Invalid time format

Explanation

The specified value is not a valid time value or does not correspond to the date and time format chosen during installation or the current session.

User Response

Correct the time value.


-28906: DB function code not found - SAP Documentation

Background documentation -28906: DB function code not found

Explanation

The compiled function code was not found.

User Response

Internal error. Contact Support.


CONVERTERMAPPING - SAP Documentation

Object documentation CONVERTERMAPPING

The system table SYSINFO.CONVERTERMAPPING contains information on the mapping of page identifications to block addresses.

Structure

CONVERTERMAPPING
PAGENUMBER | FIXED(20) | Page number
FILESYSTEMID | FIXED(5) | File system identification of the page
REVOVERYMODE | CHAR(10) | Recovery mode of the page
VOLUMESETID | FIXED(20) | Identification of the mapped volume set
VOLUMEID | FIXED(20) | Identification of the data volume
BLOCKNUMBER | FIXED(20) | Block offset on the data volume

More Information

Concepts of the Database System, Converter


-720: SQLCODE <no> comes from SYSPROFILE command - SAP Documentation

Background documentation -720: SQLCODE <no> comes from SYSPROFILE command

Explanation

The database error <no> occurred when writing the SYSPROFILE.

User Response

For error analysis and correction refer to the instructions given under the corresponding number. The application program may also be started without the PROFILE option.


-856: Invalid loop parameter value - SAP Documentation

Background documentation -856: Invalid loop parameter value

Explanation

In an SQL array statement, the value of the <LOOP PARAMETER> is set to <= 0.

User Response

Set the <LOOP PARAMETER> to a value > 0.


-3063: Invalid format code - SAP Documentation

Background documentation -3063: Invalid format code

Explanation

The format specification in a function for date or number conversion contains an invalid format code.

User Response

Remove the invalid format code.


Reverting to a Snapshot - SAP Documentation

Procedure documentation Reverting to a Snapshot

Reverting to a snapshot means that you discard all data changes that have been made since the snapshot and restore the state the database was in when you created the snapshot.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator.

    More information: Glossary, Server Permission

  • The database is in the ADMIN operational state.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Snapshots tab page.

  4. Select the snapshot you want to revert the database to.

  5. Choose Revert to...

  6. If you have created more than one snapshot, select the snapshot you want to use.

  7. If you do not want to start the database after it has been reverted to the snapshot, deselect Restart database after revert to snapshot.

    Recommendation Recommendation

    Deselect this option if you now want to execute other administration tasks that require the ADMIN operational state.

    End of the recommendation.

  8. Reverting to a snapshot disrupts the backup history. Carry out a complete data backup so you can back up log entries again.

    More information: Backing Up Data

More Information

Database Administration, Snapshot of the Data Area


25965: No data to import in datastream <file_name>; either the stream is empty or a specified condition does not match any data - SAP Documentation

Background documentation 25965: No data to import in datastream <file_name>; either the stream is empty or a specified condition does not match any data

Activities

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data from a set of table columns. However, no table columns were imported or updated.

User Response

Check the size and content of the file <file_name>. If the file is empty, no table columns could be imported or updated. If the file is not empty, check the conditions of your command for importing (IMPORT) or updating data and change these conditions if necessary.


SDB Operators - SAP Documentation

Background documentation SDB Operators

On Microsoft Windows, SDB Operators is the special operating system user group for SAP MaxDB. Members of this user group have comprehensive authorization to access database resources at the operating system level. SDB Operators is available as of version 7.7.

More Information

Database Administration, Special Operating System User Group on Microsoft Windows

Security Guide, Restricting Access to Database Resources (Microsoft Windows)


Configuring Database Studio - SAP Documentation

Procedure documentation Configuring Database Studio

Procedure

  1. Choose [image] Window [image] Preferences [image] Database Studio [image] .

  2. Configure your preferences for Database Studio:

    • Database Studio

    • Editors

    • Export/Import

    • Logging

    • Query Result

    • Repository

    • User Management (Do not change any settings in this section.)

  3. To configure general attributes of the Eclipse environment (for example fonts), choose [image] Window [image] Preferences [image] General [image] .


Integrating a Database System - SAP Documentation

Background documentation Integrating a Database System

You can administer your database system, for example with the DBA Cockpit or the Database Assistant. To be able to use the DBA Cockpit or the Database Assistant for monitoring remote systems, too, you need to configure these systems and integrate them into your system landscape.

Process

Note Note

The process of integrating your SAP MaxDB database system into the system landscape differs depending on which SAP NetWeaver release you are using. For a detailed description of the release-dependent procedure, refer to SAP Note 1028751.

End of the note.
Database Assistant: Integrating a Database System

You can use the Database Assistant to create or change connection and user data, among other things. The following functions are available: Display/Change Integration Data.

More information: Displaying/Changing Integration Data.

DBA Cockpit: Integrating a Database System

When you start the DBA Cockpit, the defined default system (default value: the local system is the default system) is called for administration with DBA Cockpit. You can call another system using one of the following options:

  • Call the desired database system

    Use the system landscape function bar to choose the list of systems System <Name of the configuration entry for the system>. You can select the desired system as follows:

    • Choose Current Selection: System In the list of all systems, you can select the desired system by different criteria.

    • Select the desired system from the dropdown box.

  • Configuring the database system

    In the system landscape toolbar, choose System Configuration. The screen DBA Cockpit: System Configuration Maintenance appears.

    The following functions are available: Display System Entry, Change System Entry, Delete System Entry, or Add System Entry.

  • Changing the setting of the default system for the current user

    In the system landscape toolbar, choose System Configuration. The screen DBA Cockpit: System Configuration Maintenance appears.

    In the System Configuration list, select the desired system and choose Default System.

More information: Configuring Systems for Remote Monitoring Using Remote Database Connections

MaxDB/liveCache System Overview: Integrating a Database System

The system displays an overview of all SAP MAxDB and SAP liveCache databases integrated into your system landscape. The following functions are available: Integrate Database or Display/Change Integration Data.

More information: MaxDB/liveCache System Overview

More Information

Database Administration: Overview of Activities


Changing Table Properties - SAP Documentation

Procedure documentation Changing Table Properties

You use the table editor to change table properties.

Note Note

To change table properties, you can also use SQL statements instead of the table editor.

More information:

  • Entering and Executing SQL Statements

  • SQL Reference Manual, ALTER TABLE Statement (alter_table_statement)

End of the note.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the ALTER privilege for the table.

    More information: SQL Reference Manual, Privilege Specification (priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the table in the explorer tree.

  2. In the context menu of the table, choose Definition.

    Note Note

    To display the definition as an SQL statement, choose Export SQL in the context menu of the editor window.

    End of the note.

  3. In the context menu of the editor window, choose Edit.

  4. Change the table definition.

    More information: Creating Tables

  5. In the context menu of the editor window, choose Alter Table.

More Information

Creating Tables


ADD_MONTHS(t,a) - SAP Documentation

Function documentation ADD_MONTHS(t,a)

ADD_MONTHS(t,a) is a date function that determines a date in the future or a date in the past.

Value t: When used in a function, the expression t (date_or_timestamp_expression) must supply a date, a time stamp, or an alphanumeric value that matches the current date or time stamp format.

Value a: The expression a (expression) supplies a numeric value that represents a number of months. Any decimal places in a are truncated if necessary.

If t is the last day of the month or if the resulting month has fewer days than the day component of t then the result is the last day of the resulting month. Otherwise, the result has the same day component as t.

ADD_MONTHS(t,a)
t, a | Result of the ADD_MONTHS(t,a) Function
Addition of a to t or subtraction of a from t | Date value or time stamp value
t or a is a NULL value | NULL value
a is a special NULL value | Error message

More Information

ADDDATE/SUBDATE(t,a)

ADDTIME/SUBTIME(t,a)


-28815: Object history not found - SAP Documentation

Background documentation -28815: Object history not found

Explanation

When an object is dereferenced, the liveCache data area that contains the before-images of persistent objects must satisfy the consistent view of the instance.Before-images are sorted according to their age, from old to new. Normally, only those before-images that are no longer accessed by a consistent view are deleted.In exceptional cases, memory problems can result in the deletion of before-images that can still be accessed.In these cases, liveCache can no longer retrieve the requested view of the instance.The older the consistent view, the greater the likelihood of this phenomenon.

User Response

Contact Support.


Loader Transformation History - SAP Documentation

Object documentation Loader Transformation History

When working in transport mode, Loader generates a transformation history (transport.log) in addition to the log file. This history records the generation and execution of packages.

Default directory of Loader transformation history transport.log: <loader_application_data>\log

Example Example

Starting Loader in transport mode

loadercli —p

Information about the default Loader transformation history (Microsoft Windows)

Package history: 'C:\Users\D019124\AppData\Roaming\sdb\loader\log\transport.log'

End of the example.

More Information

  • Transport Mode

    Transformation

  • Loader Log File

    Loader Log Functions

  • Database Administration, Log Files


-23100: OLE Error! Please restart SQL Studio - SAP Documentation

Background documentation -23100: OLE Error! Please restart SQL Studio

Expanation

An automation error occurred in the Windows operating system during an OLE operation.

User Response

End and restart SQL Studio.


-778: Conversion to UNICODE impossible - SAP Documentation

Background documentation -778: Conversion to UNICODE impossible

Explanation

An error occurred when converting CHAR data into UNICODE data.

User Response

Check whether a conversion such as this is really needed. You may have to change the declaration of the host variables for the CHAR data.


-10405: Cannot convert UCS2 data to ASCII - SAP Documentation

Background documentation -10405: Cannot convert UCS2 data to ASCII

Explanation

The UNICODE value (UCS2) of the parameter/column could not be read or inserted, because the value contains characters that cannot be displayed in ASCII.

User Response

Only enter UNICODE values (UCS2) that are part of the 7-bit ASCII character set.


-4018: Unknown default - SAP Documentation

Background documentation -4018: Unknown default

Explanation

There is no DEFAULT specified for the specified column.

User Response

Add a default specification.


DBA Cockpit: SAP MaxDB - SAP Documentation

Component documentation DBA Cockpit: SAP MaxDB

You can use the DBA Cockpit to monitor, control and configure your database. The DBA Cockpit provides you with access to many functions and indicators for monitoring and administration within the CCMS:

  • Checking system status and operation modes

  • Locating potential problems as quickly as possible

  • Early diagnosis of potential problems, for example, resource problems in the host or database system, which could adversely affect the SAP system

  • Analyzing and tuning the SAP system and environment (host and database systems) to optimize the throughput of the SAP system

  • Database Configuration

Note Note

The documentation for the SAP MaxDB database system also generally applies to SAP liveCache technology. If there are functional differences, these are explained.

End of the note.

Integration

Information about required and recommended activities for database administration: Database Administration: Overview of Activities.

The DBA Cockpit is a platform-independent tool that you can use to monitor and administer your database. You can access the DBA Cockpit by calling transaction DBACOCKPIT. The initial screen DBA Cockpit: System Configuration Maintenance appears. DBA Cockpit contains an explanation of the SAP GUI-based user interface. The following general information about operating the DBA Cockpit may also be useful:

  • Central System Data

  • Maintenance Actions in the DBA Cockpit

  • Configuration of Systems for Remote Monitoring

Features

The navigation frame of the DBA Cockpit contains a tree structure divided at the top level into the main task areas of database administration. These are, for example, performance monitoring, space management, and job scheduling. Within each task area there is a set of related action nodes.

Note Note

The information displayed in the DBA Cockpit vary depending on which SAP NetWeaver release you are using. These different developments for DBA Cockpit are described, if applicable, in the descriptions of the user menus.

End of the note.

  • Properties

  • Performance

  • Space

  • Backup and Recovery

  • Configuration

  • Jobs

  • Alerts

  • Diagnosis

  • Administration

  • Tools

  • Documentation

    • SAP MaxDB/liveCache in the SAP Library: You can call the documentation DBA Cockpit: SAP MaxDB in the SAP Library.

    • SAP MaxDB/liveCache in SDN: You can call up the SAP Community Network (SDN) for SAP MaxDB. The SAP MaxDB Knowledge Center contains the entire SAP MaxDB documentation in the area [image] Documentation [image] The Complete SAP MaxDB Documentation Set [image] .

Note Note

All documentation about managing an SAP system (and the SAP MaxDB database) using SAP CCMS is only relevant for SAP customers. You will find the entire CCMS documentation in the SAP Help Portal under http://help.sap.com. The SAP MaxDB-specific CCMS documentation is available as described in SAP Note 767598.

End of the note.

More Information

  • Database Administration in CCMS: SAP MaxDB

    Database Administration in CCMS: SAP liveCache Technology

  • Terms and Procedures

  • Glossary


-732: Index of component out of - SAP Documentation

Background documentation -732: Index of component out of

Explanation

The specified index is not in the range of values of the array.

User Response

Specify an index which is within the range of values.


SAP Library - SQL Tutorial

Start Level 1 Node: SQL Tutorial SQL Tutorial End Level 1 Node: SQL Tutorial
Start Level 2 Node: Demo Data for the SQL Tutorial Demo Data for the SQL Tutorial End Level 2 Node: Demo Data for the SQL Tutorial
Start Level 3 Node: SQL Statements for the HOTEL Demo Schema SQL Statements for the HOTEL Demo Schema End Level 3 Node: SQL Statements for the HOTEL Demo Schema
Start Level 3 Node: Explanation of the Tables in the HOTEL Demo Schema Explanation of the Tables in the HOTEL Demo Schema End Level 3 Node: Explanation of the Tables in the HOTEL Demo Schema
Start Level 2 Node: Data Query Data Query End Level 2 Node: Data Query
Start Level 3 Node: Selecting, Arranging and Renaming Columns Selecting, Arranging and Renaming Columns End Level 3 Node: Selecting, Arranging and Renaming Columns
Start Level 3 Node: Selecting and Arranging Rows Selecting and Arranging Rows End Level 3 Node: Selecting and Arranging Rows
Start Level 3 Node: Conditions: Comparison, AND, OR, BETWEEN, IN Conditions: Comparison, AND, OR, BETWEEN, IN End Level 3 Node: Conditions: Comparison, AND, OR, BETWEEN, IN
Start Level 3 Node: Searching for Character Strings: LIKE Searching for Character Strings: LIKE End Level 3 Node: Searching for Character Strings: LIKE
Start Level 3 Node: Negative Conditions: NOT Negative Conditions: NOT End Level 3 Node: Negative Conditions: NOT
Start Level 3 Node: Creating Groups: GROUP BY, HAVING Creating Groups: GROUP BY, HAVING End Level 3 Node: Creating Groups: GROUP BY, HAVING
Start Level 3 Node: Arithmetic Operations Arithmetic Operations End Level 3 Node: Arithmetic Operations
Start Level 3 Node: Functions Functions End Level 3 Node: Functions
Start Level 3 Node: Set Functions Set Functions End Level 3 Node: Set Functions
Start Level 3 Node: Date and Time Calculations Date and Time Calculations End Level 3 Node: Date and Time Calculations
Start Level 3 Node: Converting Values Converting Values End Level 3 Node: Converting Values
Start Level 3 Node: Changing Character Strings Changing Character Strings End Level 3 Node: Changing Character Strings
Start Level 3 Node: Information About Character Strings Information About Character Strings End Level 3 Node: Information About Character Strings
Start Level 3 Node: Subquery: Inner Queries Subquery: Inner Queries End Level 3 Node: Subquery: Inner Queries
Start Level 3 Node: Joins: Information From Several Tables Joins: Information From Several Tables End Level 3 Node: Joins: Information From Several Tables
Start Level 3 Node: Set Operations: UNION, INTERSECT, EXCEPT Set Operations: UNION, INTERSECT, EXCEPT End Level 3 Node: Set Operations: UNION, INTERSECT, EXCEPT
Start Level 2 Node: Data Definition Data Definition End Level 2 Node: Data Definition
Start Level 3 Node: Tables Tables End Level 3 Node: Tables
Start Level 3 Node: Constraints Constraints End Level 3 Node: Constraints
Start Level 3 Node: Primary key Primary key End Level 3 Node: Primary key
Start Level 3 Node: Foreign Key Dependencies Between Tables Foreign Key Dependencies Between Tables End Level 3 Node: Foreign Key Dependencies Between Tables
Start Level 3 Node: View Tables View Tables End Level 3 Node: View Tables
Start Level 3 Node: Indexes Indexes End Level 3 Node: Indexes
Start Level 3 Node: Domains Domains End Level 3 Node: Domains
Start Level 3 Node: Database Procedures Database Procedures End Level 3 Node: Database Procedures
Start Level 3 Node: Database Functions Database Functions End Level 3 Node: Database Functions
Start Level 3 Node: Database Triggers Database Triggers End Level 3 Node: Database Triggers
Start Level 3 Node: Number Generators for Tables Number Generators for Tables End Level 3 Node: Number Generators for Tables
Start Level 3 Node: Number Generator for a Single Table Column Number Generator for a Single Table Column End Level 3 Node: Number Generator for a Single Table Column
Start Level 2 Node: Data Manipulation Data Manipulation End Level 2 Node: Data Manipulation
Start Level 3 Node: Inserting, Updating and Deleting Rows Inserting, Updating and Deleting Rows End Level 3 Node: Inserting, Updating and Deleting Rows
Start Level 2 Node: Authorization Authorization End Level 2 Node: Authorization
Start Level 3 Node: Database Users and Their Privileges Database Users and Their Privileges End Level 3 Node: Database Users and Their Privileges
Start Level 3 Node: Roles Roles End Level 3 Node: Roles
Start Level 3 Node: Schemas Schemas End Level 3 Node: Schemas
Start Level 2 Node: Evaluating System Tables (Examples) Evaluating System Tables (Examples) End Level 2 Node: Evaluating System Tables (Examples)


From -7000 to -7999 - SAP Documentation

Background documentation From -7000 to -7999

Database Kernel Error Messages
-7002 | KEY not allowed
-7003 | NOT NULL not allowed
-7004 | DEFAULT not allowed
-7005 | Lower bound greater than upper bound not allowed
-7006 | Reserved identifier not allowed
-7007 | Key column not allowed
-7008 | Updates of this table not allowed
-7009 | NULL value in key column not allowed
-7011 | Correlated sub-query not allowed
-7012 | More than one update row not allowed
-7015 | More than one result row not allowed
-7016 | Parameter spec not allowed in this context
-7017 | User not allowed
-7018 | Variable not allowed in view definition
-7019 | Feature not allowed in view definition
-7021 | View column derived from function not allowed
-7022 | Columns from more than one table not allowed
-7023 | Dropping of all columns not allowed
-7024 | Alter column not allowed, constraint violation
-7026 | SQL statement not allowed without previous FETCH
-7029 | Function not allowed for this data type
-7032 | SQL statement not allowed for column of data type LOB
-7035 | DEFAULT specification not allowed for this column
-7036 | ROWNO specification not allowed in this context
-7037 | NULL value for NOT NULL column not allowed
-7038 | Foreign key column not allowed
-7039 | Cycle in referential constraint definition not allowed
-7040 | Referential constraint not allowed
-7041 | Result table name not allowed
-7042 | Key update not allowed
-7043 | Group member not allowed
-7045 | Parameter spec not allowed
-7046 | Column with length greater than 254 not allowed
-7048 | DROP/ALTER USER not allowed while user is connected
-7050 | Fastload with indexed table not allowed
-7051 | Read only view WITH CHECK OPTION not allowed
-7055 | Column(s) already indexed
-7056 | Sub-query not allowed
-7057 | View definition contradicts new table definition
-7058 | Correlated sub-query with select in from clause not allowed
-7061 | LOCK ROW for this table not allowed
-7062 | Open subtransaction not allowed, use SQL mode ORACLE
-7063 | Temp table not allowed
-7064 | Feature not allowed in temp table definition
-7065 | SUBTRANS COMMIT/ROLLBACK not allowed without SUBTRANS BEGIN
-7066 | Unique index referenced by foreign key not allowed
-7067 | Update without repeated read not allowed
-7068 | Outer join not allowed in this context
-7069 | Outer join with bushy trees not allowed
-7071 | AUTOSAVE LOG must be stopped
-7072 | More than one column with default SERIAL not allowed
-7073 | Internal recreate failed with
-7074 | Cycle in granted roles not allowed
-7075 | Current save skipped, next is ready to take on this tape
-7076 | No more data to read from tape
-7077 | Synonym not allowed
-7078 | No backup is running
-7079 | A backup is already running
-7080 | Query in statement not allowed
-7082 | SQL statement not allowed for this table type
-7084 | Parameter change not allowed
-7085 | Function not allowed for this cursor
-7086 | Schema not allowed
-7500 | DCOM HRESULT
-7501 | ProgramaticId not found
-7503 | Constructor not found
-7506 | Parameter type not supported
-7900 | Different block sizes


-24922: ERR_OPCHK: cannot check state of backup operation - SAP Documentation

Background documentation -24922: ERR_OPCHK: cannot check state of backup operation

Explanation

You were unable to check the state of the database instance or backup tool.

User Reponse

Attempt to fix the problem with the help of the extended error description. If you cannot solve the problem, contact Support.


-777: Conversion from UNICODE impossible - SAP Documentation

Background documentation -777: Conversion from UNICODE impossible

Explanation

An error occurred when converting UNICODE data into CHAR data.

User Response

Check whether a conversion such as this is really needed. You may have to change the declaration of the host variables for the CHAR data.


FILESYSTEMS - SAP Documentation

Object documentation FILESYSTEMS

The system table SYSINFO.FILESYSTEMS describes the existing internal file systems.

Structure

FILESYSTEMS
ID | CHAR(8) BYTE | ID of the internal file system in the database catalog
NAME | CHAR(32) | Local name of the internal file system, which is granted when the file system is imported
PROVIDERID | CHAR(255) | Provider name
SNAPSHOTID | FIXED(10,0) | Snapshot ID
FILESYSTEMINDEX | FIXED(2,0) | Internally granted number of the internal file system, which generally starts at 0 and rises with each granting
CREATEDATE | TIMESTAMP | Date on which the internal file system was imported
COMMENT | CLOB | Comment on the internal file system

More Information

‎DATAVOLUMES

Glossary, File Directory (Database-Internal)


-25234: Some column descriptions without end position but file format is FWV - SAP Documentation

Background documentation -25234: Some column descriptions without end position but file format is FWV

Explanation

Error in the Loader command to import or update data.The FWV format for the data streams is specified in the command. With this format, position specifications in the form start position ‑ end position are required.

User Response

Correct the positions you entered and re-execute the command.


-874: Unknown cursor name - SAP Documentation

Background documentation -874: Unknown cursor name

Explanation

The name of the cursor is not known.

User Response

Correct the name or define a cursor.


auto_extend - SAP Documentation

Background documentation auto_extend

You can configure your database system in such a way that it automatically adds a new data volume as soon as the fill level of the data area reaches a certain percentage. To do this, use the function for the automatic extension of the data area.

The number of data volumes, which can be added while the database is in operation, is limited by the value of the MaxDataVolumes database parameter. The name of the new data volume is determined by the system based on the existing volume definitions.

You can use the Database Manager parameter AutoExtDir to define the directory in which the new data volume is to be created (see: dbm_configset). If this parameter is not defined, Database Manager creates the new data volume in the run directory of the database.

You can activate and deactivate this function. As per the system default, this function is ON and the system adds a new data volume to the data area as soon as the fill level reaches 90%.

You can change the fill level threshold using the DBM command auto_extend and entering a new percentage. This remains valid until you change it again.

If you activate this function and do not enter a percent value, the percent value defined last time is used.

Note Note

Like other DBM commands, this one requires its own event task. For this reason, make sure when you switch on this function that the FloatingServiceTasks and PreservedEventTasks database parameter values are large enough.

Also make sure that the X server is running since the auto_extend function only works if X server is running on the database computer.

End of the note.

Prerequisites

  • You have the server permission ParamFull or AccessUtility.

  • The last data volume added is of the FILE type.

Structure

auto_extend <mode> [<percentage>]

Options
Option | Description
<mode> | Function for the automatic extension of the data area Possible values are: ON: Activate function OFF: Deactivate function SHOW: Display function
<percentage> | Percentage at which the system is to add a new data volume The following applies: 1 ≤ <percentage> ≤ 100 The default value is 90

Result

OK

[ON [<percentage>] | OFF [, <reason> | UNKNOWN]

Values for the Reply Fields
Value | Description
ON | The function for the automatic extension of the data area is active
<percentage> | Defined percentage as of which the system adds a data volume
OFF | The function for the automatic extension of the data area is inactive
<reason> | Reason why the function was deactivated
UNKNOWN | The status of the function for the automatic extension of the data area cannot be determined

Example

Call Database Manager CLI in session mode, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB:

>dbmcli -d DEMODB -u OLEG,MONDAY

dbmcli on DEMODB>

Switch on the function for the automatic extension of the data area. The system should add a data volume as soon as the data area is 66 % full:

dbmcli on DEMODB>auto_extend ON 66

OK

Display the status of the function for the automatic extension of the data area:

dbmcli on DEMODB>auto_extend SHOW

OK

ON 66

More Information

Concepts of the Database System, Volumes (Permanent Storage)


-23103: Failed to create DBC Handle - SAP Documentation

Background documentation -23103: Failed to create DBC Handle

Explanation

Could not create a database connection pool.

User Response

Contact Support.


-28527: Directory not found - SAP Documentation

Background documentation -28527: Directory not found

Explanation

The path name could not be retrieved for dbpGetDbrootSapPath or dbpGetWorkingDirectory.The buffer for the name is too small.

User Response

Contact Support.


-28010: Base class is not registered - SAP Documentation

Background documentation -28010: Base class is not registered

Explanation

Registering a derived class failed. The specified base class was not found.

User Response

Check if the correct base class was specified and make sure that the base class is registered before the derived class is.


From -27000 to -28999 - SAP Documentation

Background documentation From -27000 to -28999

Error Messages of the liveCache Technology
-27000 | Unknown error
-27003 | Numeric input parameter overflow
-27006 | Incompatible data types
-27009 | Command too long
-27014 | Connect not ok
-27015 | Connection down
-27016 | DB shut down
-27017 | Too many users
-27018 | Connection error
-27019 | Conversion UNICODE to ASCII not possible
-28000 | Operator NEW failed
-28001 | Access via NIL OID
-28002 | Invalid OID
-28003 | Unknown GUID
-28005 | Duplicate object
-28006 | Object not locked
-28007 | OID not compatible with given class
-28009 | Duplicate class id
-28010 | Base class is not registered
-28011 | Container-entry is out of date
-28012 | Wrong class entry pointer
-28013 | Try to flush object which is header only
-28014 | Var-object has been overwritten
-28015 | Wrong alignment of data
-28016 | Unknown container
-28017 | Duplicate callback interface
-28101 | Invalid index description
-28102 | Too many index partitions
-28103 | Too many index prefix fields
-28104 | Wrong index access
-28105 | Unique index field changed
-28501 | Error reading OMS input stream
-28502 | Error writing OMS output stream
-28503 | Crash in DB-Procedure
-28505 | No component object found
-28508 | Unsupported parameter type
-28513 | Method not found
-28514 | Unknown OMS version
-28515 | OMS Version already open
-28516 | Commit or Rollback required
-28517 | Already in Critical Section
-28518 | Not in Critical Section
-28521 | Already in version
-28522 | Missing before image
-28523 | Unknown schema
-28524 | Duplicate schema
-28525 | Procedure Address not found
-28527 | Directory not found
-28528 | Library not released
-28529 | Too small name buffer
-28530 | omsTerminate called
-28531 | OMS read only
-28532 | Version bound by transaction
-28533 | Integer out of packed range
-28534 | Package must be recreated
-28537 | Inheritance_error: Object has no key
-28538 | Inheritance_error: Object has wrong key
-28540 | Invalid OmsCriticalSection ID
-28541 | DB procedure parameters invalid
-28545 | Container exists already
-28547 | Version is dropped
-28548 | Internal object link corruption
-28549 | Name is invalid
-28550 | Index operation failed
-28551 | Version open at trans-end
-28600 | Invalid request code in package
-28601 | Object data packet for read missing
-28602 | Packet size does not match object size
-28603 | Requested packet size to transfer an object is too big
-28604 | Trying to queue too many data packets when sending object data
-28605 | Invalid operation in UDE Server-Kernel communication
-28606 | Communication error
-28607 | Missing object data packet
-28608 | Invalid reply for stored procedure
-28609 | Stored procedure not found
-28801 | Wrong class id
-28802 | Wrong object version
-28803 | Wrong object version
-28804 | Too old OID
-28806 | Nil page pointer
-28807 | No next object
-28808 | Hash not found
-28810 | Duplicate hash key
-28811 | Hash key not found
-28812 | Invalid iterator
-28813 | Unknown consistent version
-28814 | Object not found
-28815 | Object history not found
-28817 | Wrong object length
-28818 | Wrong object position
-28819 | Object has been updated by other transactions
-28820 | An (uncommited) object with the given key exists already
-28822 | Invalid object file ID (internal error)
-28823 | Page already in use
-28826 | Pagecounter inconsistent
-28828 | Inconsistent information concerning “is container dropped”
-28832 | Tried to access already dropped container
-28833 | Consistent view has been cancelled
-28835 | Key of new object is still visible within consistent version
-28836 | Recreation of index for OmsKeyedContainer failed
-28837 | Consistent view is still bound to another transaction
-28838 | Wrong sorting of an old sequence
-28901 | No case match found
-28902 | Too many nested try/catch statements
-28903 | DB function $1 must return a value
-28904 | DB function containing SQL statements not allowed
-28905 | DB function called for indexing failed
-28906 | DB function code not found
-28907 | Function stopped due to error
-28908 | Function must be deterministic
-28910 | STOP(0) not allowed
-28950 | System error: missing object flush during commit
-28951 | System error: invalid deallocation
-28999 | Required DB Error
-28822 to -28999 | Internal Error


-24916: ERR_MAXVOLCNT - max volume count exceeded - SAP Documentation

Background documentation -24916: ERR_MAXVOLCNT - max volume count exceeded

Explanation

The number of volumes of the type being used exceeds the maximum value that is currently set.

User Response

Increase the value of the general database parameter MaxLogVolumes for the log volumes, or the MaxDataVolumes value for the data volumes. To apply the new database parameter values, must restart the database.


Displaying Configuration and Log Files - SAP Documentation

Procedure documentation Displaying Configuration and Log Files

Prerequisites

You are logged on to the database as database system administrator or as a DBM operator with server authorization for accessing database files.

More information: Glossary, Server Permission

Procedure

Displaying Database Files

  1. In the explorer, expand the folders of the logged-on database system administrator or DBM operator.

  2. Open the Diagnosis Files folder.

    The most important database configuration and log files are listed.

    More information: Database Administration,

    • Configuration Files

    • Log Files

  3. To display the content and attributes of a file, choose Open in the context menu of the file.

    Note that you cannot display binary files directly. You can only save them and then open them using a suitable external editor.

Saving the Database Messages Log File (Kernel Log File) to a Local Text File

  1. Display the Database Messages file.

    This is the most important database log files, which contains all database kernel messages (error messages, warnings, and information). The beginning of the file contains information about the software version, important paths and the current values of the database parameters.

    Syntax Syntax

    1.    1:  Thread      0x1DC Task      -  2009-07-28 16:29:17     DIAG           0:  Using dbghlp version 4.0 rev 5
   2:  Thread      0x1DC Task      -  2009-07-28 16:29:17     DIAG           0:  Symbol search path:
   3:  Thread      0x1DC Task      -  2009-07-28 16:29:17     DIAG           0:  C:\ProgramData\sdb\globaldata\DEMODB;C:\Program Files\sdb\Installation_2009-07-21\pgm;C:\Program Files\sdb\Installation_2009-07-21\symbols;C:\Program Files\sdb\Installation_2009-07-21\sap;C:\Program Files\sdb\test\jtest\tests;C:\Windows
   4:  Thread      0x1DC Task      -  2009-07-28 16:29:17     RTE        20233:  Dump of all kernel parameters start
   5:                                 2009-07-28 16:29:17     RunTime       15:   AbortHandlingMode=BacktraceAndNormalMiniDump
   6:                                 2009-07-28 16:29:17     RunTime       15:   AdditionalLogQueueIOLimitation=0
   7:                                 2009-07-28 16:29:17     RunTime       15:   ADMIN=1
[...]
    End of the code.

    The end of the file contains the latest database actions.

    Syntax Syntax

    1. [...]
1275:  Thread      0xA54 Task      1  2009-07-29 14:36:28     Savepoint      1:  Savepoint (Time) started by T1
1276:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20003:  SVP(1) Start Write Data
1277:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20004:  SVP(1) Stop Data IO, Pages: 36 IO: 8
1278:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20005:  SVP(2) Wait for last synchronizing task: 146
1279:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20006:  SVP(2) Stop Wait for last synchronizing task, Pages: 0 IO: 0
1280:  Thread      0xA48 Task    146  2009-07-29 14:36:28     DataCache      4:  Mark data pages for savepoint (prepare phase)
1281:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20007:  SVP(3) Start Write Data
1282:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20008:  SVP(3) Stop Data IO, Pages: 2 IO: 2
1283:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20009:  SVP(3) Start Write Converter
1284:  Thread      0xA48 Task    146  2009-07-29 14:36:28     Pager      20011:  SVP(3) Stop Converter IO, Pages: 8 IO: 8
1285:  Thread      0xA48 Task    146  2009-07-29 14:36:28     DataCache      3:  Savepoint with ID 33 completed
    End of the code.

  2. Choose Save (Save)

  3. Choose a location.

    Database Studio: Repositories

    Property

    Description

    My Objects

    Objects in the logged-on user's private branch of the repository

    Shared Objects

    Objects in the public branch of the repository

    Local User Folder

    Local, user-specific folder in the file system

    Example Example

    <user_home>\sdb\My Local Folder

    End of the example.

    To change the local user folder, choose [image] Window [image] Preferences [image] Database Studio [image] Repository [image] and enter the new location.

    Packages

    Loader directory, used for exporting and importing data

    More information: Exporting and Importing: Overview
Displaying the Database Studio Log File

To display the content of the current Database Studio log file, choose [image] Window [image] Show View [image] Event Log Viewer [image] .

Database Studio Log Files
File Name | Directory | Content
dbstudio.log | <user_home>\sdb\DatabaseStudio\.metadata\.plugins\com.sap.sdb.tools.core | Database Studio log file The system overwrites this log file each time Database Studio is started and saves the old log file as dbstudio.log.bak.
dbstudio.log.bak | <user_home>\sdb\DatabaseStudio\.metadata\.plugins\com.sap.sdb.tools.core | Previous Database Studio log file

More Information

Troubleshooting

Messages (Reference for the database information and error messages)


-24994: ERR_RTE - runtime environment error - SAP Documentation

Background documentation -24994: ERR_RTE - runtime environment error

Explanation

The database runtime environment was unable to perform a function correctly.

User Response

Please read the additional runtime environment error message.


-5008: Missing string constant - SAP Documentation

Background documentation -5008: Missing string constant

Explanation

A string constant is missing in the SQL statement.

User Response

Insert a string literal into the SQL statement.


-8035: Foreign key must exist - SAP Documentation

Background documentation -8035: Foreign key must exist

Explanation

An UPDATE statement was issued on an updateable join view table. This UPDATE statement leads to an internal insert into one of the underlying base tables. The specifications made in the UPDATE statement are not sufficient to form all mandatory columns which are needed for the implicit INSERT statement.

User Response

Issue an INSERT statement on the underlying base table. This can prevent the necessity of inserting when performing the UPDATE statement on the join view table.


-7038: Foreign key column not allowed - SAP Documentation

Background documentation -7038: Foreign key column not allowed

Explanation

A foreign key column is a column which was specified in the referencing column of a referential constraint definition.

  1. The attempt was made to delete a table column which was specified as a referencing column of a CONSTRAINT definition.

  2. The attempt was made to delete the key of a table. The columns of the key were specified implicitly or explicitly as referencing columns of a CONSTRAINT definition

User Response

Delete the referential CONSTRAINT definition and then the column or key.


-852: Missing program file - SAP Documentation

Background documentation -852: Missing program file

Explanation

The source file is unknown.

User Response

Check whether the file is available or the spelling of the filename is correct.


-772: Multibyte char set not allowed - SAP Documentation

Background documentation -772: Multibyte char set not allowed

Explanation

The CONNECT statement received an unknown multibyte specification.

User Response

Correct the CONNECT statement.


-721: Macro not initiated, no SQLCHECK - SAP Documentation

Background documentation -721: Macro not initiated, no SQLCHECK

Explanation

No SET MACRO was performed. Therefore the SQL statement cannot be checked.

User Response

Ensure that SET MACRO is performed before the SQL statement within the program flow.


SQL Tutorial - SAP Documentation

Component documentation SQL Tutorial

SAP MaxDB is a relational database system with an SQL interface. The SAP MaxDB data is organized in tables. You can use a set of simple SQL (Structured Query Language) statements based on English to perform a wide range of operations on data and tables in SAP MaxDB. This SQL tutorial is designed to introduce you to the SQL language using the SAP MaxDB database system.

For a detailed description of SQL statements, see the SQL Reference Manual documentation and the SQL Syntax description.

Features

Demo Data

To work through the examples in this SQL tutorial, you need the demo data for the SQL Tutorial.

Note Note

This demo data was developed for practice and testing purposes and contains several predefined demo users and demo data in the HOTEL demo schema. Do not use these demo data in a production system.

End of the note.
Example SQL Statements

The SQL statements that are described in the examples in this tutorial can be grouped in the following areas:

  • The SELECT statement enables data to be selected from a table by row or column. Rows in several tables can be linked together. Data can be sorted, grouped, and calculated.

    For examples, see Data Query.

  • An additional group of statements is used to define and redefine the table structure and other database objects.

    For examples, see Data Definition.

  • The INSERT statement can be used to insert rows and the DELETE statement to delete rows. The UPDATE statement can be used to make changes.

    For examples, see Data Manipulation.

  • An additional group of statements is used to control data access authorizations for users and user groups.

    For examples, see Authorization.

  • When performing checks, it is often helpful to evaluate the system tables.

    For examples, see Evaluating System Tables (Examples).

Note Note

To make SQL statements more readable, the keywords are written in upper-case letters and the SQL statements are structured. Upper and lower-case spellings of syntax elements and blank characters or line breaks are not relevant for executing SQL statements.

Upper and lower-case letters, however, may be important when choosing identifiers for the database objects and entering values in the form of literals.

End of the note.

More Information

Concepts of the Database System, Demo Data

Glossary


IMPORT COLUMNS - SAP Documentation

Background documentation IMPORT COLUMNS

You can import the column values of a table exported from a database using the EXPORT COLUMNS command into a database table. Use the IMPORT COLUMNS command to do so.

Prerequisites

You can use the demo databases DEMODB and TESTDB. You have exported the required data from demo database DEMODB. In demo database TESTDB, create the data administrator MONA if you have not already done so. Start the Loader and log onto database TESTDB as database administrator MONA with the password RED.

Use the session mode: loadercli -d testdb -u mona,red

Create the HOTEL schema as database user MONA if this does not already exist. Create the table in the HOTEL schema if this does not yet exist.

Activities

The data of the CUSTOMER table in the HOTEL schema is to be imported. You can make entries after the keyword DATA to select the application data you would like to import.

Caution Caution

If you import a table, the Loader also creates all the objects and links (views, foreign key dependencies with other tables…) that are defined for the table. If the necessary objects are not present and the import therefore cannot be executed, the Loader notifies you of this fact. Typical error messages include -25451 and -25392. If these errors occur, the import is terminated at this point.

End of the caution.

Test the Loader behavior for different tables. If necessary, enter the required dependent objects into the TESTDB database. The CUSTOMER table, for example, is dependent on the CITY table.

Importing All the Application Data in a Table

You can import all the application data of a table.

IMPORT COLUMNS TABLE hotel.customer

    cno 1-5

    title 6-25

    firstname 26-45

    name 46-85

    zip 86-105

    address 106-145

  DATA INSTREAM 'customer_fwv.data' FWV

The application data (DATA) is imported in the FWV format.

IMPORT COLUMNS TABLE hotel.customer

    cno 1-5

    title 6-25

    firstname 26-45

    name 46-85

    zip 86-105

    address 106-145

  DATA INSTREAM 'customer_fwvbinary.data' FWV BINARY

All (TABLE) application data (DATA) is imported in the FWV BINARY format. The corresponding data stream must contain data for all the table’s columns. If not, the Loader reports an error.

See also: Loader, Data stream, CSV, FWV, FWV BINARY

Note Note

You can also use the IMPORT TABLE ... DATA ... command to import all column values of a table.

End of the note.
if_condition

You can select individual data records from the DATA data stream and then import only these records to the specified table. Note the sequence of the syntax elements. Enter the IF condition first.

IMPORT COLUMNS TABLE hotel.customer

  IF POS 1 > '4000'

  DATA INSTREAM 'hotel_csv.data'

Rows that have a value above 4000 in the CNO column are imported to the CUSTOMER table.

See also: Loader, Selecting Data Records

DUPLICATES Clause

Use the DUPLICATES clause to control the behavior if duplicate table rows occur. Note the sequence of the syntax elements. Enter the DUPLICATES clause after the IF condition.

IMPORT COLUMNS TABLE hotel.customer

  UPDATE DUPLICATES

  DATA INSTREAM 'customer_csv.data'

The application data of table CUSTOMER is imported and an existing row is overwritten with the imported data record.

See also: Loader, IMPORT COLUMNS Command, Duplicates Clause

Importing the Application Data from Specific Columns in a Table

You can import the individual column values of a table.

IMPORT COLUMNS TABLE hotel.customer

    cno 1

    title 2

    name 3

    zip 4

    address 5

  DATA INSTREAM 'customer_csv.data'

The specified columns of the CUSTOMER table are imported in the specified order. The Loader expects data in the data stream only for the specified columns, which have to be in the desired order for import. The other columns are imported either with their DEFAULT values or with the NULL value, depending on how the columns are defined.

You have to import data to all columns for which a DEFAULT or NULL value was not specified when the table was defined, and which are required to have values by an integrity condition. If one of the necessary columns is not specified, the Loader terminates processing with an error.

Handling LOB Values

If you use the CSV and FWV [BINARY] formats, extra data streams are created for the LOB data during export. The data of the HOTEL table in the HOTEL schema is to be imported. The HOTEL has the LOB column INFO, the contents of which were exported in a separate data stream. Enter the LOB syntax element after the DATA syntax element.

IMPORT COLUMNS TABLE hotel.hotel

  DATA INSTREAM 'hotel_csv.data'

  LOB INSTREAM INFO 'hotel_info_csv.lob'

All the columns in the HOTEL table are imported. The LOB values are stored in the data stream hotel_info_csv.lob.

See also: Loader, Importing LOB Values

Complete Syntax of the IMPORT COLUMNS Command

Combining the syntax options can result in correspondingly complex commands. Note the sequence of the syntax elements.

IMPORT COLUMNS TABLE hotel.customer

  IF POS 1 >= '4000'

  UPDATE DUPLICATES

    cno 1

    title 2

    name 3

    zip 4

    address 5

  DATA INSTREAM FILE 'customer_csv.data' CSV

For a complete syntax description, see IMPORT COLUMNS command in the Loader documentation.

More Information

Other commands for Importing

Session Mode


OMSDISCLOSEDCLASSES - SAP Documentation

Object documentation OMSDISCLOSEDCLASSES

The system table DOMAIN.OMSDISCLOSEDCLASSES contains a list of all disclosed classes.

Structure

OMSDISCLOSEDCLASSES
CLASSID | FIXED(10) | ID of the disclosed class
CLASSNAME | CHAR(132) | Name of the disclosed class

More Information

OMSDISCLOSEDCLASSMEMEBERS


-10507: Internal error: No metadata available for row set operation - SAP Documentation

Background documentation -10507: Internal error: No metadata available for row set operation

Explanation

An internal error has occurred. As a result of this error, no information is available for the structure of the result set that should be opened for UPDATE operations.

User Reponse

Simplify your SQL statement.


-6002: Duplicate privilege - SAP Documentation

Background documentation -6002: Duplicate privilege

Explanation

A privilege to be granted was listed twice in the SQL statement.

User Response

Remove one of these privileges from the SQL statement.


SQLMODE Command - SAP Documentation

Background documentation SQLMODE Command

You can use the Loader command SQLMODE to specify the SQL mode of the database when you start a database session.

Structure

Syntax Syntax

  1. <sql_mode_command> ::=
  SQLMODE <sql_mode>

<sql_mode> ::=
  INTERNAL
| ORACLE
End of the code.

The commands for exporting and importing data and the SQL statements are interpreted according to the defined SQL mode (SQL dialect) if the data stream does not have PAGES format.

SQL mode
INTERNAL | Internal SQL mode (system default value) in the database system
ORACLE | SQL mode according to the ORACLE7 definition

If you do not specify an SQL mode, SQL mode INTERNAL is used. The defined SQL mode remains active until it is changed with the SET SQLMODE command. You can change the SQL mode in a command file or a script using the SQLMODE command.

More Information

Command File

Opening a Session: Loader Commands


-28517: Already in Critical Section - SAP Documentation

Background documentation -28517: Already in Critical Section

Explanation

The omsEnter function was called for an instance of OmsCriticalSection although this instance is already in the critical section. This is not allowed.

User Response

Contact Support.


-24912: ERR_WRONGINST - DBM server instroot is <inst_path> - SAP Documentation

Background documentation -24912: ERR_WRONGINST - DBM server instroot is <inst_path>

Explanation

You attempted to register an installation using a DBM Server from a different installation. This is not possible.

User Response

Use the correct DBM Server. When using the Database Manager CLI, you can use the switch -R to force the use of a specific DBM Server.


-8044: Conversion for character set value impossible - SAP Documentation

Background documentation -8044: Conversion for character set value impossible

Explanation

You tried to convert ASCII or UCS-2 data to another format. The attempt failed.

User Response

You cannot perform a conversion explicitly. You can try to avoid this error by explicitly converting the data used, for example, for comparisons.


Managing the Database Manager Tool - SAP Documentation

Background documentation Managing the Database Manager Tool

The parameter settings for Database Manager are stored in the dbm.cfg configuration file. The file is stored in the run directory of the database.

Standard Commands
DBM Command | Description
dbm_version | Displaying the software version
bye | exit | quit | release | Exiting Database Manager

Other Commands for Managing the Database Manager Tool

More Information

Database Administration, Configuration Files


-925: Communication failure - SAP Documentation

Background documentation -925: Communication failure

Explanation

Network problems between the client and the database occurred, while parameters of a CALL statement for a database procedure have been transferred.

User Response

Solve the network problems.


-28101: Invalid index description - SAP Documentation

Background documentation -28101: Invalid index description

Explanation

While attempting to access a persistent object with an index it was not possible to determine a valid index description for this object.

User Response

Check if the indicated index-id actually has an index defined on this class.


Setting Up the DBA Planning Calendar - SAP Documentation

Procedure documentation Setting Up the DBA Planning Calendar

You can configure the back end of the DBA Planning Calender to control the execution of background jobs. You can configure the back end for all systems, for selected database platforms, or for single systems only.

The system is configured by using the first available configuration from the following:

  1. The system-specific configuration

  2. The configuration for the database platform

  3. The configuration valid for all platforms

  4. The standard configuration – current user, selection of background server by background dispatcher, high priority

Prerequisites

DBA Planning Calendar

Procedure

Note Note

In some SAP NetWeaver releases, the call is performed in the DBA Cockpit with [image] Jobs [image] Set Up the DBA Planning Calendar [image] .

End of the note.

  1. Call the DBA Cockpit and choose [image] Jobs [image] Back End Configuration [image] .

    Note Note

    Alternatively, choose [image] Goto [image] Back End Configuration [image] from the menu in the DBA Planning Calendar.

    End of the note.

  2. In the Selected Scope group box, choose the scope of the configuration entry.

  3. In Background Dispatching group box, choose appropriate values as follows:

    Field

    Meaning

    Background Server

    Specifies the server, where scheduled jobs are executed

    If no server is specified, the background job dispatcher dynamically selects the server.

    Job Priority

    Specifies the priority of the job

    If no priority is specified, jobs run with default priority (medium).

    User

    Name of the user to execute the job

    If no user is specified, the dialog user is used.

  4. Save your changes.

You can suppress the spool output. To do this, in the backend configuraiton, choose [image] Administration [image] MaxDB Settings [image] and select the corresponding option.

More Information

Jobs


-7057: View definition contradicts new table definition - SAP Documentation

Background documentation -7057: View definition contradicts new table definition

Explanation

  1. An attempt was made to add a column to a table or to drop a column from a table. SELECT * was used when defining the specified view table and new names were assigned to the view table columns. After the table was modified, the number of view table columns no longer matched the number of table columns.

  2. An attempt was made to drop a referential CONSTRAINT definition that is prerequisite for an updatable join view table.

User Response

  1. Delete the view table and define it again. Specify the required columns individually in the selected columns of the query definition.

  2. You can only delete the referential CONSTRAINT definition after you have deleted the updatable view table.


Performance Improvement in the IMPORT TABLE - SAP Documentation

Background documentation Performance Improvement in the IMPORT TABLE

You can use the syntax rule usage_spec in the DATA data stream to control whether the data of a table imported in CSV or FWV data format should be imported with a mass INSERT (RECORDS USAGE) or with pages (PAGE WITH ...).

Structure

Syntax Syntax

  1. <usage_spec> ::=
  RECORDS USAGE
| PAGE WITH <unsigned_integer> % USAGE
| PAGE WITH <unsigned_integer> RECORDS USAGE
End of the code.

The default value for usage_spec is: RECORDS USAGE. If a percentage is specified in usage_spec syntax rule PAGE WITH ... , this number must be between 50 and 100 (default value: 80). The length of individual table records is important when you specify the number of rows.

You can considerably speed up the import of tables (IMPORT TABLE command) by specifying PAGE WITH ... (importing as pages). This is considerably faster than using RECORDS USAGE (importing via a mass INSERT). If you specify the syntax rule PAGE WITH ... for the import, the data is entered directly into the pages of the database and no log entries are written. When you specify the rule RECORDS USAGE, the data is entered in the database as a mass INSERT and log entries are written so that entries can be cancelled if errors occur. You can only use the syntax rule PAGE WITH ... if the following prerequisites are met:

  • The target table exists in the database.

  • You have logged on to Loader with the database user that is the owner of the target table.

  • The target table does not have an index.

  • The target table does not have an LOB column.

  • The application data in the data stream to be imported is sorted by primary key of the target table in ascending order.

  • If the target table already contains application data, only those data records whose key values are greater than the largest key value in the target table can be inserted into the target table.

You can use the syntax rule PAGE WITH ... to define the extent to which a page is filled with data records. To do so, you can specify a percentage between 50 and 100 or define the number of rows (data records, records) that you want to import to each page. If you specify a number of rows that exceeds the actual number possible, Loader displays an error message during the import operation, indicating the maximum number of rows permitted for each page. If the table is not modified at all, or only slightly, it is a good idea to utilize the occupied memory by more than 80%. If you anticipate considerable dynamic growth for the table, you should utilize the occupied memory by less than 80%. If you use syntax rule PAGE WITH ... consider the following:

  • Since no log entries are written when PAGE WITH ... is specified, you must back up the new table data after you have imported it. You can either back up the appropriate pages (incremental data backup) or all the data (complete data backup).

  • The table is write-protected until you back up the new application data.

Note Note

You can also import and export data from a table in PAGES format so that the information is stored in the data stream as pages. In this case, the usage_spec syntax rule is neither possible nor necessary (EXPORT TABLE Command, IMPORT TABLE Command).

End of the note.

Example

Loader Tutorial, IMPORT TABLE


Deleting Database Triggers - SAP Documentation

Procedure documentation Deleting Database Triggers

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the table for which the database trigger is defined.

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, open the Triggers folders.

  2. In the context menu of the database trigger, choose Delete.

More Information

SQL Reference Manual, DROP TRIGGER Statement (drop_trigger_statement)


-28999: Required DBPError - SAP Documentation

Background documentation -28999: Required DBPError

Explanation

The system has caused an exception on purpose to check error handling. This error only occurs when using a special test-kernel.

User Response

Internal error.


-23063: Could not create Global Com Object - SAP Documentation

Background documentation -23063: Could not create Global Com Object

Explanation

An SQL Studio object could not be created.

User Response

Exit the SQL Studio.Check whether the system has enough memory.Restart the SQL Studio.


-832: File write error - SAP Documentation

Background documentation -832: File write error

Explanation

A file could not be written. This may be a device failure.

User Response

Check whether the file is available or the spelling of the filename is correct. For the exact error description, see the file appldiag.


CONSISTENTVIEWOPENTRANSACTIONS - SAP Documentation

Object documentation CONSISTENTVIEWOPENTRANSACTIONS

The system table SYSINFO.CONSISTENTVIEWOPENTRANSACTIONS describes the transactions that were active when the consistent view was generated.

Structure

CONSISTENTVIEWOPENTRANSACTIONS
CONSISTENTVIEWID | FIXED(15) | ID of the consistent view
OPENTRANSACTIONID | FIXED(15) | ID of the transaction that was active when the consistent view was generated

More Information

Concepts of the Database System, Example: Consistent View

Glossary, Consistent View


Software Components - SAP Documentation

Background documentation Software Components

Software components are the smallest software units you can install. However, dependencies exist between software components which are determined by the content or versions of the software.

In the command line, the installation of individual software components is complex and requires the user to understand and take into account these dependencies. The installation of software components is not interactive and can only run in the background. Therefore, you need to determine any other components required and the order in which they are to be installed beforehand. The installation program terminates the installation as soon as it recognizes that dependencies have not been taken into account.

For this reason, we recommend that you use installation in the command line in special cases only. When using Installation Manager, dependencies are automatically considered.

Note that the following table is a general overview of the software components as of SAP MaxDB version 7.8. Individual components may be missing in a particular build version of the software. For details see the MaxDB/liveCache Forum at https://www.sdn.sap.com/irj/sdn/maxdb.

The Database Software Comprises the Following Packages:
<package_name> | Description
ADO.NET Driver | SAP MaxDB .NET driver for accessing the SAP MaxDB database system, Available on Microsoft Windows only
Base | Programs programs required to access the database system (including Database Manager CLI, XUSER and SQLCLI)
Database Kernel | Database kernel with runtime environment
DB Analyzer | Database Analyzer program (tool for analyzing database performance)
FastLoad API | Object-oriented C++ interface to access the SAP MaxDB fastload function
Global Listener | Specialized X server
Installation Compatibility | Content ensures the downwards compatibility,allows to install SAP MaxDB versions lower than 7.8 later on
Installer | Installation administration tools (deinstallation program, installation diagnosis tool sdbregview)
JDBC | SAP MaxDB JDBC driver for accessing the SAP MaxDB database system
Loader | Loader program (tool for importing and exporting data)
ODBC | SAP MaxDB ODBC driver for accessing the SAP MaxDB database system
Redist Python | Python interface and extensions
SAP Utilities | dbmrfc and ni libraries:
SAP Utilities Installation Compatibility | Content ensures the downwards compatibility in SAP systems, allows to install SAP MaxDB versions lower than 7.8 later on
Server Utilities | Tools for administering the database kernel (including XCONS)
SQLDBC | Object-oriented C++ interface for accessing the SAP MaxDB database system. Contains a non-versioned SQLDBC library, among other things.
SQLDBC<version> | Versioned SQLDBC library, relevant for SAP applications only
WebDAV-Servlet | Implements the WebDAV service for use in a JSP container (e.g. Tomcat, SAP Netweaver AS)
Dependencies

The following dependencies exist between software components:

Base [-> ODBC]* -> DB Analyzer

Base -> ODBC -> ADO.NET Driver

Base -> SQLDBC -> ADO.NET

Base -> SQLDBC -> SQLDBC<version>

Base -> JDBC -> WebDAV-Servlet

Base -> Loader

Base -> Redist Python

Base -> SAP Utilities

Base -> Server Utilities -> Database Kernel

Installer -> Global Listener

Installer -> Installation Compatibility

Installer -> SAP Utilities Installation Compatibility

Note Note

* Required for DB Analyzer on Microsoft Windows only

End of the note.
Explanation of Dependencies

Each version-dependent installation requires its own Base package. The Installation package is part of the global installation.

  • The software component DB Analyzer cannot be installed until you have installed Base (on Unix) or Base and ODBC (on Microsoft Windows).

  • The software component ADO.NET Driver cannot be installed until ODBC or SQLDBC has been installed.

    • ODBC or SQLDBC cannot be installed until Base has been installed

  • The software component SQLDBC<version> cannot be installed until you have installed SQLDBC.

    • The software component SQLDBC cannot be installed until Base has been installed.

  • The software component WebDAV-Servlet cannot be installed until JDBC has been installed.

    • The software component JDBC cannot be installed until Base has been installed.

  • The software component Loader cannot be installed until Base has been installed.

  • The software component Redist Python cannot be installed until Base has been installed.

  • The software component SAP Utilities cannot be installed until Base has been installed.

  • The software component Database Kernel cannot be installed until you have installed Server Utilities.

    • The software component Server Utilities cannot be installed until Base has been installed.

  • The software component Global Listener cannot be installed until Installer has been installed.

  • The software component Installation Compatibility cannot be installed until Installer has been installed.

  • The software component SAP Utilities Installation Compatibility cannot be installed until Installer has been installed.


Selects and Fetches - SAP Documentation

Background documentation Selects and Fetches

<number of> selects and fetches, selectivity <percentage>%: <number of> rows read, <number of> rows qualified

Explanation

The strategies for accessing table data are poor for SELECT or FETCH statements. The system has to read a large number of table rows to find a small number of rows that fulfill a WHERE condition.

User Response

Find the statement that causes this poor ratio of read rows to found rows, and check the access strategies for this statement.

More Information

For information on creating optimized SQL statements, see the SQL Optimizer documentation.


-10314: Invalid parameter processing sequence, process non-LOB data before parameter (<number>) - SAP Documentation

Background documentation -10314: Invalid parameter processing sequence, process non-LOB data before parameter (<number>)

Explanation

The parameter index transferred to the SQLDBC_PreparedStatement::nextParameter method can not be processed as the next parameter.

User Reponse

  • Change the order of processing for parameters

  • Process the parameters describing LOB columns after the parameters for other columns.


-814: Trace file close error - SAP Documentation

Background documentation -814: Trace file close error

Explanation

The trace file could not be closed. The error in the program was ignored.

User Response

Modify the file attributes (characteristics). For the exact error description, see the file appldiag .


Caches - SAP Documentation

Procedure documentation Caches

In the Space user menu you can see, among other things, the sizes of the most important caches, the number of accesses to these caches, and the cache hit rates since the last time the Database Monitoring function was started.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Caches [image] .

Result

The system displays information about the size and general efficiency of the caches of the database. In a balanced system, the hit rate for the data cache is more than 99 %, for the catalog cache more than 90 %. The lower the hit rate, the lower the efficiency of your database system.

Cache Sizes | Size of the I/O buffer cache (data cache, converter and other caches)
Cache Accesses | Statistical information about accesses to the data cache (SAP liveCache technology: accesses to links to undo log entries for the objects (History/Undo), the OMS data (OMS Data), and SQL data (SQL Data)), catalog cache, and sequence cache
Data cache usage | Usage information for the data cache (SAP liveCache technology: usage of the areas for SQL data (SQL Data), OMS data (OMS Data), and the links to undo log entries for the objects (History/Undo))
Cache-Specific Parameter Settings | CacheMemorySize: Size of the I/O buffer cache CAT_CACHE_SUPPLY: Size of the catalog cache

The I/O buffer cache (with its main component, the data cache) should be configured large enough that the greatest possible amount of data you require for normal operation of your SAP system can be stored in the data cache. Otherwise, the data is written to the data area, which negatively affects database performance. If necessary, change the size of the I/O buffer cache by setting the general database parameter CacheMemorySize.

For SAP systems with special requirements, a higher data cache hit rate may also be necessary (such as SAP NetWeaver BI).

Comments About SAP liveCache Technology

The I/O buffer cache, and therefore the data cache as well, must be dimensioned so that it can hold all OMS data, links to undo log entries, and SQL data in the data cache. Otherwise, the data is written to the data area, which negatively affects SAP liveCache performance.

The memory of the data cache should take up about 40% of the main memory available to the SAP liveCache database. You may need to adjust its size to the requirements of the application.

More information: Database Administration in CCMS, Monitoring the Main Memory Area

More Information

  • Database Alert Monitor: Caches

  • liveCache Alert Monitor, Caches, Memory

  • Database Administration,

    Monitoring Databases

    General Database Parameters

    Special Database Parameters

  • Concepts of the Database System, Working Memory Areas


Recovery - SAP Documentation

Background documentation Recovery

See Restore


Restoring Databases - SAP Documentation

Procedure documentation Restoring Databases

After a database failure or database errors, you can restore a database or revert it to an earlier state by importing data backups and, if necessary, log backups from data carriers.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for restoring the database.

    More information: Glossary, Server Permission

  • The data carriers with the data backups and, where applicable, log backups are available.

    If you are using a tape loader, insert all tapes belonging to the backup.

    More information: Backing Up Data, Backing Up Log Entries

  • If you are using a third-party backup tool, connect it.

    More information: Installation Manual, Connecting Third-Party Backup Tools

  • The database is in the ADMIN operational state.

  • Only on Microsoft Windows:

    If you want to restore the database using backups from data carriers on a remote computer, carry out the steps described in Database Administration, Backing Up and Restoring Data with Remote Computers.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Recovery...

  3. If necessary, transfer the database to the ADMIN operational state.

  4. Select the recovery type:

    Recovery Types

    Recovery Type

    Description

    Additional Prerequisites

    Recover last backup

    You restore the last backup from the backup history

    The log files dbm.knl and dbm.mdf are not damaged. This means that the backup history is complete.

    If you are using third-party backup tools, then the dbm.ebf log file must also be not damaged.

    More information: Database Administration, Log Files

    Recover specified backup from history

    You restore a specific backup from the backup history

    The log files dbm.knl and dbm.mdf are not damaged. This means that the backup history is complete.

    If you are using third-party backup tools, then the dbm.ebf log file must also be not damaged.

    Recover a medium

    You restore the backup from a data carrier without referring to the backup history

    -

    Initialize database before recovery

    You initialize the database before restoring it

    Usually the database system attempts to import redo log entries still present in the log area during recovery. To prevent this and force the deletion of all redo log entries in the log area, initialize the log area before the recovery.

    Example Example

    After a training course, you want to restore the training course to its original state by importing a data backup with the original database state. By deleting the redo log entries, you ensure that all changes to the course database made by course participants are discarded.

    End of the example.

    -

    Recover until a specific time

    You restore the database to its state at a particular point in the past

    If the desired point in time is after the last data backup and the log area no longer contains all the required redo log entries, for example because they were damaged, you also need the log backups since the last data backup.

  5. If necessary, select the backup template or data carrier.

  6. If necessary, select a backup.

  7. Start the recovery.

    The system displays the current status of the recovery process in the status window.

    The Recovery Results tab page shows the data carriers from which the system has already imported data or log entries.

    In the Actions view, the system displays the recovery steps performed so far.

    More information: Actions (View)

    Note Note

    If an error occurs during recovery, check whether your backup is intact.

    More information: Checking Backups

    End of the note.

  8. Once the recovery is complete, choose Restart.

  9. If automatic log backup was active before the recovery, reactivate it now.

    More information: Activating or Deactivating Automatic Log Backup

  10. If necessary, recreate any damaged indexes.

    More information: Recreating Damaged Indexes

More Information

Database Administration, Restoring Databases


Activating or Deactivating Automatic Log Backup - SAP Documentation

Procedure documentation Activating or Deactivating Automatic Log Backup

If you have activated automatic log backup, the database system backs up the redo log entries automatically.

Backups of redo log entries (log backups) are required so that the database can be restored to the desired point in time after certain system breakdowns. Redo log entries are where the database system logs all changes that database users have made to data.

Regular log backups are also important for another reason: The database system can overwrite a log segment of the log area with a new entry only after it has been backed up.

Note Note

You can also back up the redo log entries manually.

More information: Backing Up Log Entries

End of the note.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

    More information: Glossary, Server Permission

  • You can only back up redo log entries after at least one complete data backup has been carried out.

    More information: Backing Up Data

  • You have created a backup template for log backups.

    Note Note

    For automatic log backup, you cannot use pipes.

    End of the note.

    More information: Defining Backup Templates

  • The database is in the ONLINE or ADMIN operational state.

  • Overwrite mode for the log area is switched off.

    More information: Changing Log Settings

  • Only on Microsoft Windows:

    If you want to back up data to a data carrier on a remote computer, perform the steps described in Database Administration, Backing Up and Restoring Data with Remote Computers.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Overview tab page.

  4. Choose Automatic Log Backup.

Activating Automatic Log Backup

  1. Select Activate Automatic Log Backup.

  2. Select the backup template.

  3. Select when you want the system to run log backups.

    • Create log backup when log segment is full (Default)

    • Create a log backup every <number> seconds

  4. Choose Activate.

Note Note

For log backups to data carriers of the file type, you have to archive the backup files regularly. To do this, use the database tool Database Manager CLI.

More information: Database Manager CLI, archive_stage

End of the note.
Deactivating Automatic Log Backup

  1. Select Deactivate automatic log backup.

  2. Choose Deactivate.

Switching to a Different Backup Template

  1. Select Restart automatic log backup

  2. Select the backup template.

  3. Choose Restart.

Example

You have activated automatic log backup and specified the following backup template:

Example of a Backup Template for a Log Backup
Property | Value
Name of the backup template | DEMODB_LOG
Backup type | LOG
Data carrier type | FILE
Data carrier (Device/File) | DEMODB_MYLOG Note that i you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory. Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_LOG
Size of data carrier | No restriction (blank or 0)
Block size | 8 pages
Overwritable | No

The system writes continuous log backups to the following backup files:

DEMODB_MYLOG.001

DEMODB_MYLOG.002

DEMODB_MYLOG.003

DEMODB_MYLOG.004

DEMODB_MYLOG.005

More Information

Database Administration, Backing Up Log Entries


-28907: Function stopped due to error - SAP Documentation

Background documentation -28907: Function stopped due to error

Explanation

A function call has been stopped by a STOP-command.

User Response

Returning an error can be correct when specified by the author of the function. Only if this should not be the case, the function must be corrected.


-10603: SQL command would generate a result set - SAP Documentation

Background documentation -10603: SQL command would generate a result set

Explanation

The SQLDBC_Statement::addBatch or SQLDBC_Statement::executeBatch method that was called could not be executed, because the SQL statements that were transferred would have generated a result set.

User Response

Do not use any SQL statements that would generate a result set (SELECT or database procedure) for these methods.


Deleting Sequences - SAP Documentation

Procedure documentation Deleting Sequences

Prerequisites

  • You are logged on to the database as a database user.

  • You are the owner of the sequence or have DROPIN privilege for the schema to which the sequence belongs.

    More information: SQL Reference Manual, Privilege Specification for a Schema (schema_priv_spec)

  • The database is in the ONLINE operational state.

Procedure

  1. Select the sequence in the explorer tree.

  2. In the context menu of the sequence, choose Delete.

More Information

SQL Reference Manual, DROP SEQUENCE Statement (drop_sequence_statement)


700: Session inactivity timeout (work rolled back) - SAP Documentation

Background documentation 700: Session inactivity timeout (work rolled back)

Explanation

Your transaction was implicitly canceled and rolled back by an implicit ROLLBACK statement. The database session was implicitly terminated because the user failed to carry out any operations during a certain period of time (special database parameter SessionTimeout, or the timeout value specified in the CONNECT statement).

User Response

Repeat the CONNECT statement and, if necessary, specify a larger timeout value. You will also need to check the value of the SessionTimeout database parameter, and possibly change this value.


-1755: SQL statement will drop further objects (use CASCADE) - SAP Documentation

Background documentation -1755: SQL statement will drop further objects (use CASCADE)

Explanation

A DROP USER, DROP TABLE, DROP VIEW or REVOKE statement was specified for which the CASCADE option had not been specified implicitly or explicitly. Other objects depend on the object to be deleted. These objects must be deleted as well. But this is only possible with an implicit or explicit specification of the CASCADE option.

User Response

Before specifying the same SQL statement with the CASCADE option, you should check which dependent objects exist.


Errors in the Execution of the SDBUPD Program - SAP Documentation

Background documentation Errors in the Execution of the SDBUPD Program

If an error occurs when you execute the SDBUPD program, the program terminates with a message describing the cause of the error unless you specify a converse option in the execution command (See Overview of Options for the SDBUPD Program).

Frequent Causes of Errors:

  • An unexpected error occurred when you executed SDBUPD.

  • You are attempting to use SDBUPD to switch to a software version that is lower than your current version (called a downgrade in the following).

    Examples of this situation:

    • You selected the wrong software version by mistake.

    • The upgrade of the database terminated with an error. You then tried to use SDBUPD to return to the original software version.

    • The database upgrade was successful, however, you want to return to a lower software version for other reasons.

    Note Note

    You cannot use the SDBUPD program to downgrade software. If you want to use SDBUPD, the new software must have at least a higher build number than the existing one.

    End of the note.

Activities

Downgrading Server Software, No databases Exist Yet:

Downgrading Server Software, Databases Exist

Downgrading Client Software

More Information

Glossary, Version


Obsolete Database Parameters - SAP Documentation

Background documentation Obsolete Database Parameters

Some database parameters are marked as obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

Obsolete Database Parameters (Selection)
Name | Old Names | Marked as Deprecated Since Version | Removed Since Version | Description
DeprecatedParameter38 | EnableSynchronousTaskIO _USE_IOPROCS_ONLY | 7.8 | - | YES: I/O operations are executed only by special I/O threads NO: The kernel decides whether a task executes an I/O operation itself or delegate the I/O operation to a special I/O thread
- | MaxVolumes MAXVOLUMES | 7.8 | - | Maximum number of data and log volumes, including mirrored volumes
- | MiniDumpType MINI_DUMP | 7.8 | - | Defines whether the system writes the memory dumps knlmini.dmp and srvmini.dmp (for postmortem debugging) and how much information these dumps contain
- | _BACKUP_HISTFILE | 7.7 | 7.7 | Name of the history file for data and log backups
- | _BACKUP_MED_DEF | 7.7 | 7.7 | Name of the file containing the definitions of the backup templates
DeprecatedParameter22 | _UNICODE | 7.7 | - | Defines whether the database system uses Unicode as the character set for the names of database objects in the database catalog
DeprecatedParameter01 | BACKUP_BLOCK_CNT | 7.7 | - | Block size used by the database system when writing backups to data carriers Only useful for tapes that have an optimal block size
- | ClusterCompressionThreshold | 7.7.06.04 7.7.04.27 7.8.00.04 | - | Minimum number of blocks in a cluster that is eligible for compression that needs to be reached before the database system starts compressing the cluster (in 1/1000 of the total block count)
DeprecatedParameter13 | EXPAND_COM_TRACE | 7.7 | - | Specifies whether memory space is reserved when COM trace files are created
DeprecatedParameter29 | USE_OPEN_DIRECT | 7.7 | - | Replaced by UseFilesystemCacheForVolume, see Support Database Parameters YES: the database system uses the O_DIRECT flag when opening volumes (if this flag is supported by the file system). You use this flat to configure that the operating system does not use a separate cache for I/O operations. Note that this flag is ignored for Linux kernel < 2.4.18.Changes only apply after restart

More Information

Database Administration, Database Parameters


-25355: Error processing LOB value (column '<column_name>'): <error_code> - SAP Documentation

Background documentation -25355: Error processing LOB value (column '<column_name>'): <error_code>

Explanation

You have executed a command to import (IMPORT) or update (UPDATE) data of a table containing LOB columns. The command terminated while reading LOB data from the data flow or during the conversion of LOB data of the specified column. The error <error_code> shows the cause of the error.See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


-24920: ERR_BACKUPOP: backup operation was unsuccessful - SAP Documentation

Background documentation -24920: ERR_BACKUPOP: backup operation was unsuccessful

Explanation

The backup, check or restore action failed due to problems with either the database or the backup tool. If it is a backup check that has failed, this may have been caused by errors in the relevant backup.

User Response

Attempt to fix the problem with the help of the extended error description. If you cannot solve the problem, contact Support.


-1007: Parameter list too long - SAP Documentation

Background documentation -1007: Parameter list too long

Explanation

More parameters have been specified in a statement than are permitted in the pertinent EXECUTE statement.

User Response

Modify the number of parameters in such a way that it corresponds to the specifications made in the column list.


-831: File read error - SAP Documentation

Background documentation -831: File read error

Explanation

A file could not be read. This may be a device failure.

User Response

Check whether the file is available or the spelling of the filename is correct. For the exact error description, see the file appldiag.


-10317: LOB type for parameter (<number>) not allowed (conflicts with use of DATA AT EXECUTE parameter) - SAP Documentation

Background documentation -10317: LOB type for parameter (<number>) not allowed (conflicts with use of DATA AT EXECUTE parameter)

Explanation

One parameter was bound to an SQLDBC_LOBstructure, but a different parameter is bound to DATA AT EXECUTE.

User Response

Do not use DATA AT EXECUTE and SQLDBC_LOB parameters at the same time.


-7029: Function not allowed for this data type - SAP Documentation

Background documentation -7029: Function not allowed for this data type

Explanation

  1. A DATE, TIME, TIMESTAMP, USER, USERGROUP, TRUE, FALSE or STAMP entry was used for a default specification of a column whose data type is incompatible with this entry.

  2. A set function with DISTINCT was called for a value whose maximum length exceeds 1024 bytes.

  3. A function was called for a value which does not allow this function to be used.

  4. A date_or_timestamp_expression was created together with a value whose data type is invalid for this.

User Response

  1. In the case of a default specification, you need to choose another default specification or delete the current one altogether.

  2. Use the SUBSTR function to shorten the value.

  3. Use a QUERY statement issued on the DOMAIN.COLUMNS system table to determine the data types of the specified columns. You can check whether it's possible to achieve the desired effect using a function to convert numbers into character strings or vice versa.


ROLES - SAP Documentation

Example documentation ROLES

Use of the system tableDOMAIN.ROLES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define and use roles. Proceed as described in SQL Tutorial, Roles.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table ROLES to determine the following database information, among other things:

  • All roles for which it is necessary to enter a password to activate them

    SELECT owner, role

    FROM DOMAIN.ROLES

    WHERE password_required = 'YES'

  • Role of the current database user that is automatically activated when a database session is opened

    SELECT role

    FROM DOMAIN.ROLES

    WHERE defaultrole = 'YES'

More Information

All active roles in the current database session: see SESSION_ROLES

Role privilege: see ROLEPRIVILEGES


ACTIVECONFIGURATION - SAP Documentation

Example documentation ACTIVECONFIGURATION

Use of the system table SYSINFO.ACTIVECONFIGURATION

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table ACTIVECONFIGURATION to determine the following database information, among other things:

  • Name and value of the database parameter RunDirectoryPath

    SELECT parametername, value

    FROM SYSINFO.ACTIVECONFIGURATION

    WHERE parametername = 'RunDirectoryPath'

  • Displaying whether the parameter MaxBackupMediacan be changed in the ONLINEoperational state and whether it is immediately effective following any change

    SELECT parametername, changeable

    FROM SYSINFO.ACTIVECONFIGURATION

    WHERE parametername = 'MaxBackupMedia'


-24950: ERR_USRFAIL - user authorization failed - SAP Documentation

Background documentation -24950: ERR_USRFAIL - user authorization failed

Explanation

The authorization on the DBM server failed. The user name and/or the password used are not correct.

User Response

Enter the correct user/password combination and log on to the DBM server again. You can correct the user data for the database instance in the Database Manager GUI.


-25308: CONSTRAINT condition violated - SAP Documentation

Background documentation -25308: CONSTRAINT condition violated

Explanation

An error has occurred when importing data.The data record specified does not meet the requirements defined in the CONSTRAINT condition for this table.

User Response

Correct the data and re-execute the command.


LOGQUEUEINFORMATION - SAP Documentation

Object documentation LOGQUEUEINFORMATION

The system table SYSINFO.TABLESIZE contains size information about log queues.

Structure

LOGQUEUEINFORMATION
QUEUEID | FIXED(5) | Identification of the log queue
SYNCHRONIZED | CHAR(3) | Indicates whether the log queue is synchronized (YES | NO)

More Information

Concepts of the Database System, Working Memory Areas


-6006: Duplicate name - SAP Documentation

Background documentation -6006: Duplicate name

Explannation

There is already a data object with the specified name.

User Response

Repeat the SQL statement with another name.


-767: Unterminated C string - SAP Documentation

Background documentation -767: Unterminated C string

Explanation

The zero byte delimiter is missing.

User Response

Insert a zero byte.


-27015: Connection down - SAP Documentation

Background documentation -27015: Connection down

Explanation

The liveCache connection has been broken.

User Response

Contact Support.


-10313: Requested parameter (<number>) was already processed - SAP Documentation

Background documentation -10313: Requested parameter (<number>) was already processed

Explanation

A parameter that was already processed cannot be assigned any more values. After SQLDBC_PreparedStatment::nextParameter has been called, no more values can be assigned to the previous parameter. While data was being written piecewise, an attempt was made to assign further data to parameter <number>, which was already processed

User Response

Do not assign any more values to a parameter that has already been processed.


TRANSFORMATIONRESOURCES - SAP Documentation

Object documentation TRANSFORMATIONRESOURCES

The system table SYSLOADER.TRANSFORMATIONRESOURCES describes the data sources and data targets involved in a Loader transformation.

Structure

TRANSFORMATIONRESOURCES
PACKAGEGUID | CHAR(24) BYTE | Unique identification of the transformation package
SERVERNODE | CHAR(32) | Computer node on which the database to be transformed is installed
SERVERDB | CHAR(32) | Name of the database that is to be transformed
USERNAME | CHAR(32) | User name
CODEPAGEID | CHAR(32) | Identification of the ASCII code page that is to be used
STORAGEDEVICE | CHAR(32) | External data carrier that is to be used
CATALOGSTREAMNAME | CHAR(254) | Name of the CATALOG data stream
CATALOGSTREAMTYPE | CHAR(32) | Data carrier of the CATALOG data stream (FILE | PIPE | TAPE)
CATALOGSTREAMEBID | CHAR(32) | External backup ID of the CATALOG data stream
DATASTREAMNAME | CHAR(254) | Name of the DATA data stream
DATASTREAMTYPE | CHAR(32) | Data carrier of the DATA data stream (FILE | PIPE | TAPE)
DATASTREAMEBID | CHAR(32) | External backup ID of the DATA data stream

More Information

Loader, Transformation

Loader, Loader System Tables

Definitions of the System Tables


backup_replace - SAP Documentation

Background documentation backup_replace

A running backup operation was interrupted because the system reported that a data carrier is full.

Use the backup_replace command to replace the full data carrier. The system will now continue the backup operation. The remaining data to be backed up is saved to all data carriers in the group

After the system has executed this DBM command, information about the backup is output. The information is only given when the backup operation is finished or is interrupted again. For this reason, the response to this DBM command can take a long time.

Note Note

Pay special attention to the Returncode reply field, which contains a numeric value for a message.

End of the note.

If it is clear from the message number that the backup operation has been interrupted again and not completed, continue the session with a succeeding command (backup_replace, backup_ignore), or terminate the session with backup_cancel.

Prerequisites

  • You have the server permission Backup.

  • You have started backing up the database. The backup operation was interrupted because one of the data carriers was reported as full. You are still in the same database session.

Structure

backup_replace <location>

Options
Option | Description
<location> | Complete file or device name of the data carrier

Result

Values for the Reply Fields
Value | Description
Date | Date
Time | Start time of the backup
Server | Name of the database computer
Database | Name of the database
Kernel Version | Version of the database kernel
Pages Transferred | Number of pages transferred
Pages Left | Number of pages still to be transferred
Volumes | Number of data carriers used
Medianame | Name of the backup template
Location | File or device name
Errortext | Error message text See also: Messages documentation
Label | Backup ID
Is Consistent | Only for data backup: Backup is internally consistent
First LOG Page | For data backup: First page of the log backup to be read For log backup: First page saved in the log area
Last LOG Page | For log backup only: Last page saved in the log area
DB Stamp 1 Date DB Stamp 1 Time | Time stamp for the first page of the log backup
DB Stamp 2 Date DB Stamp 2 Time | Time stamp for the last page of the log backup
Page Count | Total number of pages backed up
Devices Used | Number of backup devices used
Database ID | Database ID used to identify data and log backups that belong together

In the event of errors, see Reply Format.

More Information

Messages documentation

Database Administration, Backing Up Data, Backing Up Log Entries


Software Overview - SAP Documentation

Background documentation Software Overview

Starting with database version 7.8, SAP MaxDB installation principles have changed. From version 7.8, the following features are supported:

  • Multiple SAP MaxDB installations of the same version can be installed on one computer

  • Multiple SAP MaxDB installations of different versions can be installed on one computer

  • Multiple different clients as well as multiple versions of the same client can be installed on the same computer

  • Any server or client installation can be maintained individually

  • SAP MaxDB and SAP liveCaches databases can be maintained individually

When installing SAP MaxDB software of version 7.8 and higher, the software and database are stored in the following paths:

Installation Directories from Database Version 7.8
Path Name | Variable Name | Properties | Shared | Stored Components
Global programs path | GlobalProgPath | Once per computer only, can be defined for the first installation on a computer* | By all SAP MaxDB installations on this computer | Installation tools (for example: sdbuninst, sdbverify, sdbconfig), global listener (sdbgloballistener)
Global data path | GlobalDataPath | Once per computer only, can be defined for the first installation on a computer* | By all SAP MaxDB installations on this computer | Parameter and log files of the SAP MaxDB installations (for example: installation registry and installation log files, database parameter files, knldiag file, etc.)
Installation path | InstallationPath | Once per installation, several installation paths on a computer allowed | No | Database server software, like database kernel, X server software (for SAP MaxDB versions < 7.8), and database client software, like DBMCLI, SQLDBC
Private data path | Private Data Path | Optional, can be defined once per installation, several private paths on a computer are allowed | No | If defined: All database related files are stored here and not in the global data path

* If there are previous installations of SAP MaxDB on this computer, the relevant software will be stored under the existing path.

As a consequence of the new installation principles, higher versions do not update existing software of a previous version unintentionally.

Since more than one client can be installed on an individual computer, each application server has its own SAP MaxDB runtime. This allows to update any client installation without affecting another client installation. For example, you can now update the SAP MaxDB runtime of an individual application server without a second application server on the same computer being affected. Likewise, you can upgrade a database together with its software to a higher version without affecting another database on this computer and its current connections.

You also can run test systems and production systems on the same computer.

The creation of system copies in SAP systems can be made far easier if you specify a private data path when you install the SAP MaxDB software.

To benefit most from all the new features, we recommend that you create one database per software installation only. However, it is still possible to create several databases that use the same software installation.

The following graphics give an overview of the changed storage locations for programs and data in database versions 7.7 and lower compared to database versions 7.8 and higher.

This graphic is explained in the accompanying text.

Comparison of Program Directories for Software Versions ≤ 7.7 and from Version 7.8

This graphic is explained in the accompanying text.

Comparison of Data Directories for Software Versions ≤ 7.7 and from Version 7.8


-846: Invalid statement in section - SAP Documentation

Background documentation -846: Invalid statement in section

Explanation

A statement in the section is invalid.

User Response

Correct the statement or use another SQL statement.


-25350: Conversion from UNICODE data to ASCII data is not supported. This conversion may cause information loss - SAP Documentation

Background documentation -25350: Conversion from UNICODE data to ASCII data is not supported. This conversion may cause information loss

Explanation

You have executed a command to import (IMPORT), update (UPDATE), or export (EXPORT) data. The command was terminated because you have tried to import data with UCS2 or UTF8 encoding to a database that has the parameter _UNICODE=NO set, or you have tried to export data as ASCII files from a database that has the parameter _UNICODE=YES set.

User Response

If the error occurred while importing or updating data, make sure that the database parameter _UNICODE=YES is set. Then re-import the data. If the error occurred in the export, set the file attribute UCS2 in the export command, and re-execute the command.


LOCKSTATISTICS - SAP Documentation

Object documentation LOCKSTATISTICS

The system table SYSINFO.LOCKSTATISTICS describes the degree to which lock management is being utilized and the number of special events that have occurred during lock management since the database system was started.

Structure

LOCKSTATISTICS
ENTRYCOUNT | FIXED(10) | Number of entries available for locks and lock requests
USEDENTRYCOUNT | FIXED(10) | Number of entries used
USEDENTRYCOUNTPERCENTAGE | FIXED(3) | Percentage of entries used
AVGUSEDENTRYCOUNT | FIXED(10) | Average number of entries used
AVGUSEDENTRYCOUNTPERCENTAGE | FIXED(3) | Average percentage of entries used
MAXUSEDENTRYCOUNT | FIXED(10) | Maximum number of entries used
MAXUSEDENTRYCOUNTPERCENTAGE | FIXED(3) | Maximum percentage of entries used
TABLELOCKCOUNT | FIXED(10) | Number of table locks held
ROWLOCKCOUNT | FIXED(10) | Number of row locks held
HOLDERCOUNT | FIXED(10) | Number of transactions holding locks
REQUESTORCOUNT | FIXED(10) | Number of transactions for which there are lock requests
LOCKESCALATIONVALUE | FIXED(10) | Number of row locks from which the row locks are converted into table locks (lock escalation)
LOCKESCALATIONCOUNT | FIXED(10) | Number of lock escalations executed
SQLLOCKCOLLISIONCOUNT | FIXED(10) | Number of lock collisions for SQL database objects
OMSLOCKCOLLISIONCOUNT | FIXED(10) | Number of lock collisions for OMS objects
DEADLOCKCOUNT | FIXED(10) | Number of dead locks recognized
SQLREQUESTTIMEOUTCOUNT | FIXED(10) | Number of unfulfilled lock requests for SQL database objects
OMSREQUESTTIMEOUTCOUNT | FIXED(10) | Number of unfulfilled lock requests for OMS objects
TRANSACTIONREGIONCOUNT | FIXED(5) | Number of regions used to administer the transaction
TABLEREGIONCOUNT | FIXED(5) | Number of regions used to administer the table locks
ROWREGIONCOUNT | FIXED(5) | Number of regions used to administer the row locks

More Information

LOCKSTATISTICSRESET

Concepts of the Database System, Locks


Isolated Installation - SAP Documentation

Background documentation Isolated Installation

Starting with database version 7.8, SAP MaxDB installation principles have changed. From version 7.8, the following features are supported:

  • Multiple SAP MaxDB installations of the same version can be installed on one computer

  • Multiple SAP MaxDB installations of different versions can be installed on one computer

  • Multiple different clients as well as multiple versions of the same client can be installed on the same computer

  • Any server or client installation can be maintained individually

  • SAP MaxDB databases /liveCaches can be maintained individually

More Information

Installation


-5001: Missing privilege - SAP Documentation

Background documentation -5001: Missing privilege

Explanation

  1. The user is not authorized to execute the SQL statement.

  2. The user is not authorized to execute this SQL statement for data definition. The privilege necessary for this SQL statement is only granted within a role. Such limited privileges are sufficient for other SQL statements, but not for those for data definitions.

User Response

Use a QUERY statement issued on the DOMAIN.TABLEPRIVILEGES or DOMAIN.COLUMNS system table to determine what privileges you have for the given table or its columns. It is not possible to execute the desired SQL statement.


auto_update_statistics - SAP Documentation

Background documentation auto_update_statistics

You can automatically update the SQL Optimizer statistics.

You can switch this function on or off. The default setting is OFF.

You also use this DBM command to display the status of this function.

If the function is ON, the system updates the SQL optimizer statistics based on the entries made by the system in the SYSUPDSTATWANTED system table. The update is triggered by respective database events.

Note Note

Like other DBM commands, this DBM command requires its own event task. For this reason, make sure when you execute this DBM command that the FloatingServiceTasks and PreservedEventTasks database parameter values are large enough.

Make sure that X server keeps running while this function is active.

End of the note.

Prerequisites

You have the server permission AccessSQL and EvtDispMgm.

Structure

auto_update_statistics <mode>

<mode> :: = ON | OFF | SHOW

Options
Option | Description
<mode> | Function for automatically updating the statistics of the SQL optimizerPossible values are: ON: Enable function OFF: Disable function SHOW: Display function

Result

OK

[ON | OFF | UNKNOWN]

Values for the Reply Fields
Value | Description
ON | OFF | UNKNOWN | Output if the SHOW mode is used ON: The function for automatically updating the statistics of the SQL optimizer is activated. OFF: The function for automatically updating the statistics of the SQL optimizer is inactive. UNKNOWN: The system cannot determine the status of the function for automatically updating the statistics of the SQL optimizer.

In the event of errors, see Reply Format.

More Information

SQL Optimizer, SQL Optimizer Statistics

Database Administration, Analyzing Database Performance


-28910: STOP(0) not allowed - SAP Documentation

Background documentation -28910: STOP(0) not allowed

Explanation

The execution of a database procedure, database function or a trigger shall be stopped with the STOP-statement where the first parameter has the value 0. This is not allowed.

User Response

Instead of using the STOP-statement, use the RETURN-statement.


-70: Session inactivity timeout (Work rolled back) - SAP Documentation

Background documentation -70: Session inactivity timeout (Work rolled back)

Explanation

The user's transaction was implicitly canceled and reset by a ROLLBACK statement. The database session was implicitly terminated, because the user failed to carry out any operations on the database system during the period of time specified by the timeout value.

User Response

Repeat the CONNECT statement, maybe specifying a higher timeout value. It may also be necessary to check and modify the value of the special database parameter SessionTimeout.


-6003: Duplicate result table name - SAP Documentation

Background documentation -6003: Duplicate result table name

Explanation

The ANSI and DB2 SQL modes require a result table generated using a DECLARE CURSOR statement to be closed using a CLOSE statement before this result table name can be used to open a new result table within the same transaction.

User Response

Insert a CLOSE statement into the application.


Editing Objects in a Repository - SAP Documentation

Procedure documentation Editing Objects in a Repository

Procedure

  1. In the explorer tree, go to My Repository.

    Database Studio: Repositories

    Property

    Description

    My Objects

    Objects in the logged-on user's private branch of the repository

    Shared Objects

    Objects in the public branch of the repository

    Local User Folder

    Local, user-specific folder in the file system

    Example Example

    <user_home>\sdb\My Local Folder

    End of the example.

    To change the local user folder, choose [image] Window [image] Preferences [image] Database Studio [image] Repository [image] and enter the new location.

    Packages

    Loader directory, used for exporting and importing data

    More information: Exporting and Importing: Overview

  2. Open the repository in which the file to be edited is located.

  3. To open the file for editing, choose Open in the context menu of the file.

More Information

Saving SQL Statements or Definitions of Database Objects in a Repository

Concepts of the Database System, Repositories


-8023: COSTLIMIT must be greater than COSTWARNING - SAP Documentation

Background documentation -8023: COSTLIMIT must be greater than COSTWARNING

Explanation

A COSTLIMIT value was specified which was less than or equal to the specified COSTWARNING value. The COSTLIMIT value, however, must be greater than the COSTWARNING value.

User Response

Use a QUERY statement issued on the system table DOMAIN.USERS to find out the COSTWARNING value for existing users.


SQL Mode ORACLE - SAP Documentation

Component documentation SQL Mode ORACLE

You can operate the SAP MaxDB database system in ORACLE SQL mode. The following sections describe the differences between an Oracle Version 7 database system and a SAP MaxDB (in ORACLE SQL mode) database system.

Logical Database Structure

There are basic differences between the logical database structures of the Oracle Version 7 database system and SAP MaxDB.

  • From a logical point of view, an Oracle database consists of tablespaces, segments, extents, blocks, tables, and data records.

  • From a logical point of view, SAP MaxDB essentially consists of the tables in the database catalog and the application data in the form of data records.

All Oracle SQL statements referring to the administration of tablespaces, segments, extents, or blocks are therefore meaningless in SAP MaxDB.

Consistent Reading/Locking

The consistent reading functionality offered by Oracle can be achieved in SAP MaxDB using locks in isolation level ≥ 2.

Oracle allows an unlimited number of exclusive row locks. In SAP MaxDB, an escalation takes effect from a certain number of row locks; that is, the whole table is locked. The escalation point in time depends on the defined lock list size.

Database Procedures/Triggers

  • In Oracle, database procedures, database functions, and triggers are defined in PL/SQL (a language similar to ADA).

  • In SAP MaxDB, database procedures, database functions, and triggers are defined in a language similar to C.

DBA Users and Privileges

In contrast to Oracle, database administrators (DBA users) in SAP MaxDB are also subject to the privileges concept and cannot execute DDL statements (such as CREATE INDEX) or DML statements (such as DELETE) if they have not been assigned the corresponding privileges.

Other Differences

  • SQL Syntax Elements: Differences

  • SQL Statements: Differences

  • Error Messages: Differences

More Information

Concepts of the Database System, SQL

Glossary, SQL Mode

SQL Reference Manual, CONNECT Statement (connect_statement)


SAP Library - Database Analyzer

Start Level 1 Node: Database Analyzer Database Analyzer End Level 1 Node: Database Analyzer
Start Level 2 Node: Calling Database Analyzer Calling Database Analyzer End Level 2 Node: Calling Database Analyzer
Start Level 2 Node: Database Analyzer Configuration File Database Analyzer Configuration File End Level 2 Node: Database Analyzer Configuration File
Start Level 2 Node: Database Analyzer Log Files Database Analyzer Log Files End Level 2 Node: Database Analyzer Log Files
Start Level 2 Node: Database Analyzer Messages Database Analyzer Messages End Level 2 Node: Database Analyzer Messages
Start Level 3 Node: Avg User cmd exec Time for Task Avg User cmd exec Time for Task End Level 3 Node: Avg User cmd exec Time for Task
Start Level 3 Node: Avg User Suspend Time for Task Avg User Suspend Time for Task End Level 3 Node: Avg User Suspend Time for Task
Start Level 3 Node: Avg User Wait Time For Task Avg User Wait Time For Task End Level 3 Node: Avg User Wait Time For Task
Start Level 3 Node: Catalog Cache Hit Rate Catalog Cache Hit Rate End Level 3 Node: Catalog Cache Hit Rate
Start Level 3 Node: Collision Rate Collision Rate End Level 3 Node: Collision Rate
Start Level 3 Node: Data Cache Hit Rate Data Cache Hit Rate End Level 3 Node: Data Cache Hit Rate
Start Level 3 Node: Data Volume Filling Level Data Volume Filling Level End Level 3 Node: Data Volume Filling Level
Start Level 3 Node: Deletes/Updates Deletes/Updates End Level 3 Node: Deletes/Updates
Start Level 3 Node: Free User Tasks Free User Tasks End Level 3 Node: Free User Tasks
Start Level 3 Node: Lock List Escalations Lock List Escalations End Level 3 Node: Lock List Escalations
Start Level 3 Node: Log Area Filling Level Log Area Filling Level End Level 3 Node: Log Area Filling Level
Start Level 3 Node: Log Queue Overflows Log Queue Overflows End Level 3 Node: Log Queue Overflows
Start Level 3 Node: Log Write Time Log Write Time End Level 3 Node: Log Write Time
Start Level 3 Node: Max Log Queue Filling Max Log Queue Filling End Level 3 Node: Max Log Queue Filling
Start Level 3 Node: Number of Cached History Pages Number of Cached History Pages End Level 3 Node: Number of Cached History Pages
Start Level 3 Node: Number of Physical Reads Number of Physical Reads End Level 3 Node: Number of Physical Reads
Start Level 3 Node: Number of Physical Writes Number of Physical Writes End Level 3 Node: Number of Physical Writes
Start Level 3 Node: Number of Physical Writes of Temporary Pages Number of Physical Writes of Temporary Pages End Level 3 Node: Number of Physical Writes of Temporary Pages
Start Level 3 Node: OMS Cache Hit Rate OMS Cache Hit Rate End Level 3 Node: OMS Cache Hit Rate
Start Level 3 Node: OMS Heap Collisions OMS Heap Collisions End Level 3 Node: OMS Heap Collisions
Start Level 3 Node: OMS Heap Utilization OMS Heap Utilization End Level 3 Node: OMS Heap Utilization
Start Level 3 Node: OMS History Cache Hit Rate OMS History Cache Hit Rate End Level 3 Node: OMS History Cache Hit Rate
Start Level 3 Node: OMS Terminates OMS Terminates End Level 3 Node: OMS Terminates
Start Level 3 Node: OMS Version is Old OMS Version is Old End Level 3 Node: OMS Version is Old
Start Level 3 Node: OMS Version is Unloaded OMS Version is Unloaded End Level 3 Node: OMS Version is Unloaded
Start Level 3 Node: Optimizer Strategies Optimizer Strategies End Level 3 Node: Optimizer Strategies
Start Level 3 Node: Out of Memory Exceptions Out of Memory Exceptions End Level 3 Node: Out of Memory Exceptions
Start Level 3 Node: Parse Activities Parse Activities End Level 3 Node: Parse Activities
Start Level 3 Node: Physical Reads for User Task Physical Reads for User Task End Level 3 Node: Physical Reads for User Task
Start Level 3 Node: Selects and Fetches Selects and Fetches End Level 3 Node: Selects and Fetches
Start Level 3 Node: Table scans Table scans End Level 3 Node: Table scans
Start Level 3 Node: User Task Blocked in State User Task Blocked in State End Level 3 Node: User Task Blocked in State
Start Level 3 Node: User Task Physical Writes User Task Physical Writes End Level 3 Node: User Task Physical Writes


Installing SQLDBC - SAP Documentation

Procedure documentation Installing SQLDBC

Procedure

  1. Install the SQLDBC software component.

    More information: Glossary, Installation

  2. Add the path of the SQLDBC libraries to the LD_LIBRARY_PATH environmental variable:

    • Microsoft Windows: <installation_path>/pgm

    • Unix and Linux: <installation_path>/lib

    Note Note

    You can display the installation path using the dbm_getpath DBM command:

    dbmcli dbm_getpath InstallationPath

    For more information, see Database Manager CLI, dbm_getpath.

    End of the note.

Result

The following files are installed on your computer.

libSQLDBC

libSQLDBC is the runtime library libSQLDBC for executing programs that access SAP MaxDB databases. It contains the following libraries, which all run independently of each other:

  • Version-independent runtime library libSQLDBC.dll or libSQLDBC.so (Unix and Linux)

  • Version-dependent runtime library libSQLDBC<version>.dll or libSQLDBC<version>.so (Unix and Linux)

    Example Example

    libSQLDBC76.dll for SAP MaxDB 7.6

    End of the example.

  • Runtime library libSQLDBC_C.dll for the support of native C applications

SQLDBC SDK

SQLDBC SDK is a software development kit for developing database applications and database interfaces for SAP MaxDB. It contains the following files:

  • Header file SQLDBC.h for C++

  • Header file SQLDBC_C.h for C

  • Static and dynamic link libraries for C and C++

The files are installed in the <installation_path>/sdk/sqldbc directory.

sqldbc_cons

sqldbc_cons is the executable for writing SQLDBC traces.

More information: Using the SQLDBC Trace

More Information

SQLDBC Classes


-24993: ERR_RTEEXT - runtime environment error - SAP Documentation

Background documentation -24993: ERR_RTEEXT - runtime environment error

Explanation

The database runtime environment was unable to perform a function correctly.

User Response

Please read the additional runtime environment error message.


medium_migrate - SAP Documentation

Background documentation medium_migrate

You can transfer existing definitions for backup templates (previously known as backup media) from the media definition file control.med (database version 6.2) to the new template definition file dbm.mmm (as of database version 7.2.4.2).

The definition from the old file is not transferred if an identical name exists for the old and new definition file.

Recommendation Recommendation

The old definitions for backup templates do not contain entries on the relevant backup type for a particular template. For this reason you should define the backup method for a template of this type immediately after the transfer using the DBM command medium_put. If you do not, you have to specify the backup method explicitly later on if you want to start a backup using this template.

End of the recommendation.

Prerequisites

You have the server permission Backup or DBInfoRead.

Structure

medium_migrate

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Configuration Files


Tools - SAP Documentation

Background documentation Tools

The following user menus in the DBA Cockpit are available to call tools for advanced administrative tasks:

  • Database Studio

  • Database Manager (CLI)

  • Database Console

  • Database Trace

  • SQLDBC Trace

Note Note

From MaxDB Version 7.7 onwards, Database Studio replaces the database tools Database Manager GUI, SQL Studio, and Synchronization Manager and also offers additional functions (such as a GUI for the program loader). If you are using an SAP MaxDB version below 7.7, you can therefore use the Tools menu to call Database Manager GUI and SQL Studio, if required.

End of the note.

More Information

DBA Cockpit: SAP MaxDB


-25012: No user connection to server db established - SAP Documentation

Background documentation -25012: No user connection to server db established

Explanation

You have executed a loader command or an SQL statement. The command or statement were terminated since no database user is logged on to the database.

User Response

Log a user onto the database and re-execute the command.


Configuration of Systems for Remote Monitoring (SAP Library - SAP MaxDB Library)

 Start of Content Area

Background documentation Configuration of Systems for Remote Monitoring Locate the document in its SAP Library structure

To be able to use the DBA Cockpit to monitor remote systems, you have to configure those systems in the DBA Cockpit. You can configure your database system either using database information that is stored in the system landscape directory (SLD) for automatic generation and update of system entries or manually using database connections and system entries.

You access the screen The DBA Cockpit: System Configuration Maintenance by choosing System Configuration in the DBA Cockpit. A list of all monitored systems is displayed with an icon showing the current status of a system. You can change the status of a system by choosing Stop or Go.

In the event of severe errors, we recommend that you disable your system to prevent further problems. After you have investigated and corrected the error, you have to enable your system again.

Normally, when you start the DBA Cockpit, the local system is set as default system. To change this setting, select a system from the list and choose Default System.

This setting only applies to the user currently logged on to the system. It is not a system-wide setting.

You use one of the following methods to monitor a system remotely:

● Remote database connections

This method uses additional connections. It is the main access method for monitoring and administration tasks and is mandatory. You can specify remote connections for any database and maintain the connections using the DBA Cockpit. For more information, see Maintaining Database Connections.

● RFC connection

For this method you have to assign an RFC connection to your system. RFC connections are available for SAP ABAP systems only. You can use RFC connections:

○ As an optional access path for ABAP-related monitoring functions, for example, for the consistency check of the ABAP Dictionary. That is, the DBA Cockpit uses the RFC connection in parallel to the database connection for the same system.

○ MS SQL Server only:

For a database connection that is localized in another ABAP system. That is, the DBA Cockpit can use the RFC connection together with the database connection.

You can only maintain RFC connections with transaction SM59, not with the DBA Cockpit.

See also:

Configuring Systems for Remote Monitoring Using Remote Database Connections

Configuring Systems for Remote Monitoring Using the System Landscape Directory (SLD)

End of Content Area


-24930: ERR_XPVALUESET - parameter value not in value set - SAP Documentation

Background documentation -24930: ERR_XPVALUESET - parameter value not in value set

Explanation

The entered database parameter value is not within the permitted value range.

User Response

Correct your entry, and re-execute the DBM command.


SAP Library - SQL Reference Manual

Start Level 1 Node: SQL Reference Manual SQL Reference Manual End Level 1 Node: SQL Reference Manual
Start Level 2 Node: Data Definition Data Definition End Level 2 Node: Data Definition
Start Level 3 Node: Ensuring Data Integrity Ensuring Data Integrity End Level 3 Node: Ensuring Data Integrity
Start Level 3 Node: CREATE TABLE Statement (create_table_statement) CREATE TABLE Statement (create_table_statement) End Level 3 Node: CREATE TABLE Statement (create_table_statement)
Start Level 4 Node: Column Definition (column_definition) Column Definition (column_definition) End Level 4 Node: Column Definition (column_definition)
Start Level 5 Node: Data Type (data_type) Data Type (data_type) End Level 5 Node: Data Type (data_type)
Start Level 6 Node: CHAR[ACTER] CHAR[ACTER] End Level 6 Node: CHAR[ACTER]
Start Level 6 Node: VARCHAR VARCHAR End Level 6 Node: VARCHAR
Start Level 6 Node: LOB Column LOB Column End Level 6 Node: LOB Column
Start Level 6 Node: Code Attribute Code Attribute End Level 6 Node: Code Attribute
Start Level 6 Node: BOOLEAN BOOLEAN End Level 6 Node: BOOLEAN
Start Level 6 Node: FIXED FIXED End Level 6 Node: FIXED
Start Level 6 Node: FLOAT FLOAT End Level 6 Node: FLOAT
Start Level 6 Node: INT[EGER] INT[EGER] End Level 6 Node: INT[EGER]
Start Level 6 Node: SMALLINT SMALLINT End Level 6 Node: SMALLINT
Start Level 6 Node: DATE (Date Value) DATE (Date Value) End Level 6 Node: DATE (Date Value)
Start Level 6 Node: TIME (Time Value) TIME (Time Value) End Level 6 Node: TIME (Time Value)
Start Level 6 Node: TIMESTAMP (Time Stamp Value) TIMESTAMP (Time Stamp Value) End Level 6 Node: TIMESTAMP (Time Stamp Value)
Start Level 6 Node: NULL Value NULL Value End Level 6 Node: NULL Value
Start Level 6 Node: Special NULL Value Special NULL Value End Level 6 Node: Special NULL Value
Start Level 6 Node: Number Number End Level 6 Node: Number
Start Level 6 Node: Character String Character String End Level 6 Node: Character String
Start Level 5 Node: Column Attributes (column_attributes) Column Attributes (column_attributes) End Level 5 Node: Column Attributes (column_attributes)
Start Level 5 Node: Memory Requirements of a Column Value According to Data Type Memory Requirements of a Column Value According to Data Type End Level 5 Node: Memory Requirements of a Column Value According to Data Type
Start Level 4 Node: CONSTRAINT Definition (constraint_definition) CONSTRAINT Definition (constraint_definition) End Level 4 Node: CONSTRAINT Definition (constraint_definition)
Start Level 4 Node: Referential CONSTRAINT Definition (referential_constraint_defini Referential CONSTRAINT Definition (referential_constraint_defini End Level 4 Node: Referential CONSTRAINT Definition (referential_constraint_defini
Start Level 4 Node: Key Definition (key_definition) Key Definition (key_definition) End Level 4 Node: Key Definition (key_definition)
Start Level 4 Node: UNIQUE Definition (unique_definition) UNIQUE Definition (unique_definition) End Level 4 Node: UNIQUE Definition (unique_definition)
Start Level 3 Node: DROP TABLE Statement (drop_table_statement) DROP TABLE Statement (drop_table_statement) End Level 3 Node: DROP TABLE Statement (drop_table_statement)
Start Level 3 Node: ALTER TABLE Statement (alter_table_statement) ALTER TABLE Statement (alter_table_statement) End Level 3 Node: ALTER TABLE Statement (alter_table_statement)
Start Level 4 Node: ADD Definition (add_definition) ADD Definition (add_definition) End Level 4 Node: ADD Definition (add_definition)
Start Level 4 Node: ALTER Definition (alter_definition) ALTER Definition (alter_definition) End Level 4 Node: ALTER Definition (alter_definition)
Start Level 4 Node: COLUMN Change Definition (column_change_definition) COLUMN Change Definition (column_change_definition) End Level 4 Node: COLUMN Change Definition (column_change_definition)
Start Level 4 Node: DROP Definition (drop_definition) DROP Definition (drop_definition) End Level 4 Node: DROP Definition (drop_definition)
Start Level 4 Node: MODIFY Definition (modify_definition) MODIFY Definition (modify_definition) End Level 4 Node: MODIFY Definition (modify_definition)
Start Level 3 Node: RENAME TABLE Statement (rename_table_statement) RENAME TABLE Statement (rename_table_statement) End Level 3 Node: RENAME TABLE Statement (rename_table_statement)
Start Level 3 Node: RENAME COLUMN Statement (rename_column_statement) RENAME COLUMN Statement (rename_column_statement) End Level 3 Node: RENAME COLUMN Statement (rename_column_statement)
Start Level 3 Node: EXISTS TABLE Statement (exists_table_statement) EXISTS TABLE Statement (exists_table_statement) End Level 3 Node: EXISTS TABLE Statement (exists_table_statement)
Start Level 3 Node: CREATE SCHEMA Statement (create_schema_statement) CREATE SCHEMA Statement (create_schema_statement) End Level 3 Node: CREATE SCHEMA Statement (create_schema_statement)
Start Level 3 Node: RENAME SCHEMA Statement (rename_schema_statement) RENAME SCHEMA Statement (rename_schema_statement) End Level 3 Node: RENAME SCHEMA Statement (rename_schema_statement)
Start Level 3 Node: DROP SCHEMA Statement (drop_schema_statement) DROP SCHEMA Statement (drop_schema_statement) End Level 3 Node: DROP SCHEMA Statement (drop_schema_statement)
Start Level 3 Node: CREATE DOMAIN Statement (create_domain_statement) CREATE DOMAIN Statement (create_domain_statement) End Level 3 Node: CREATE DOMAIN Statement (create_domain_statement)
Start Level 3 Node: DROP DOMAIN Statement (drop_domain_statement) DROP DOMAIN Statement (drop_domain_statement) End Level 3 Node: DROP DOMAIN Statement (drop_domain_statement)
Start Level 3 Node: CREATE SEQUENCE Statement (create_sequence_statement) CREATE SEQUENCE Statement (create_sequence_statement) End Level 3 Node: CREATE SEQUENCE Statement (create_sequence_statement)
Start Level 3 Node: DROP SEQUENCE Statement (drop_sequence_statement) DROP SEQUENCE Statement (drop_sequence_statement) End Level 3 Node: DROP SEQUENCE Statement (drop_sequence_statement)
Start Level 3 Node: CREATE SYNONYM Statement (create_synonym_statement) CREATE SYNONYM Statement (create_synonym_statement) End Level 3 Node: CREATE SYNONYM Statement (create_synonym_statement)
Start Level 3 Node: DROP SYNONYM statement (drop_synonym_statement) DROP SYNONYM statement (drop_synonym_statement) End Level 3 Node: DROP SYNONYM statement (drop_synonym_statement)
Start Level 3 Node: RENAME SYNONYM Statement (rename_synonym_statement) RENAME SYNONYM Statement (rename_synonym_statement) End Level 3 Node: RENAME SYNONYM Statement (rename_synonym_statement)
Start Level 3 Node: CREATE VIEW Statement (create_view_statement) CREATE VIEW Statement (create_view_statement) End Level 3 Node: CREATE VIEW Statement (create_view_statement)
Start Level 4 Node: INSERT/UPDATE/DELETE Privilege for Owners of View Tables INSERT/UPDATE/DELETE Privilege for Owners of View Tables End Level 4 Node: INSERT/UPDATE/DELETE Privilege for Owners of View Tables
Start Level 4 Node: Updateable Join View Table Updateable Join View Table End Level 4 Node: Updateable Join View Table
Start Level 3 Node: DROP VIEW Statement (drop_view_statement) DROP VIEW Statement (drop_view_statement) End Level 3 Node: DROP VIEW Statement (drop_view_statement)
Start Level 3 Node: RENAME VIEW Statement (rename_view_statement) RENAME VIEW Statement (rename_view_statement) End Level 3 Node: RENAME VIEW Statement (rename_view_statement)
Start Level 3 Node: CREATE INDEX Statement (create_index_statement) CREATE INDEX Statement (create_index_statement) End Level 3 Node: CREATE INDEX Statement (create_index_statement)
Start Level 3 Node: DROP INDEX Statement (drop_index_statement) DROP INDEX Statement (drop_index_statement) End Level 3 Node: DROP INDEX Statement (drop_index_statement)
Start Level 3 Node: ALTER INDEX Statement (alter_index_statement) ALTER INDEX Statement (alter_index_statement) End Level 3 Node: ALTER INDEX Statement (alter_index_statement)
Start Level 3 Node: RENAME INDEX Statement (rename_index_statement) RENAME INDEX Statement (rename_index_statement) End Level 3 Node: RENAME INDEX Statement (rename_index_statement)
Start Level 3 Node: CREATE DBPROC[EDURE] Statement (create_dbproc_statement) CREATE DBPROC[EDURE] Statement (create_dbproc_statement) End Level 3 Node: CREATE DBPROC[EDURE] Statement (create_dbproc_statement)
Start Level 4 Node: Routine (routine) Routine (routine) End Level 4 Node: Routine (routine)
Start Level 4 Node: General CASE Statement (searched_case_statement) General CASE Statement (searched_case_statement) End Level 4 Node: General CASE Statement (searched_case_statement)
Start Level 4 Node: Simple CASE Statement (simple_case_statement) Simple CASE Statement (simple_case_statement) End Level 4 Node: Simple CASE Statement (simple_case_statement)
Start Level 3 Node: DROP DBPROC[EDURE] Statement (drop_dbproc_statement) DROP DBPROC[EDURE] Statement (drop_dbproc_statement) End Level 3 Node: DROP DBPROC[EDURE] Statement (drop_dbproc_statement)
Start Level 3 Node: CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement End Level 3 Node: CREATE SYSTEM TRIGGER Statement (create_system_trigger_statement
Start Level 3 Node: DROP SYSTEM TRIGGER Statement (drop_system_trigger_statement) DROP SYSTEM TRIGGER Statement (drop_system_trigger_statement) End Level 3 Node: DROP SYSTEM TRIGGER Statement (drop_system_trigger_statement)
Start Level 3 Node: CREATE FUNCTION Statement (create_function_statement) CREATE FUNCTION Statement (create_function_statement) End Level 3 Node: CREATE FUNCTION Statement (create_function_statement)
Start Level 3 Node: DROP FUNCTION Statement (drop_function_statement) DROP FUNCTION Statement (drop_function_statement) End Level 3 Node: DROP FUNCTION Statement (drop_function_statement)
Start Level 3 Node: CREATE TRIGGER Statement (create_trigger_statement) CREATE TRIGGER Statement (create_trigger_statement) End Level 3 Node: CREATE TRIGGER Statement (create_trigger_statement)
Start Level 3 Node: DROP TRIGGER Statement (drop_trigger_statement) DROP TRIGGER Statement (drop_trigger_statement) End Level 3 Node: DROP TRIGGER Statement (drop_trigger_statement)
Start Level 3 Node: COMMENT ON Statement (comment_on_statement) COMMENT ON Statement (comment_on_statement) End Level 3 Node: COMMENT ON Statement (comment_on_statement)
Start Level 2 Node: Authorization Authorization End Level 2 Node: Authorization
Start Level 3 Node: CREATE USER Statement (create_user_statement) CREATE USER Statement (create_user_statement) End Level 3 Node: CREATE USER Statement (create_user_statement)
Start Level 3 Node: CREATE USERGROUP Statement (create_usergroup_statement) CREATE USERGROUP Statement (create_usergroup_statement) End Level 3 Node: CREATE USERGROUP Statement (create_usergroup_statement)
Start Level 3 Node: DROP USER Statement (drop_user_statement) DROP USER Statement (drop_user_statement) End Level 3 Node: DROP USER Statement (drop_user_statement)
Start Level 3 Node: DROP USERGROUP Statement (drop_usergroup_statement) DROP USERGROUP Statement (drop_usergroup_statement) End Level 3 Node: DROP USERGROUP Statement (drop_usergroup_statement)
Start Level 3 Node: ALTER USER Statement (alter_user_statement) ALTER USER Statement (alter_user_statement) End Level 3 Node: ALTER USER Statement (alter_user_statement)
Start Level 3 Node: ALTER USERGROUP Statement (alter_usergroup_statement) ALTER USERGROUP Statement (alter_usergroup_statement) End Level 3 Node: ALTER USERGROUP Statement (alter_usergroup_statement)
Start Level 3 Node: RENAME USER Statement (rename_user_statement) RENAME USER Statement (rename_user_statement) End Level 3 Node: RENAME USER Statement (rename_user_statement)
Start Level 3 Node: RENAME USERGROUP Statement (rename_usergroup_statement) RENAME USERGROUP Statement (rename_usergroup_statement) End Level 3 Node: RENAME USERGROUP Statement (rename_usergroup_statement)
Start Level 3 Node: GRANT USER Statement (grant_user_statement) GRANT USER Statement (grant_user_statement) End Level 3 Node: GRANT USER Statement (grant_user_statement)
Start Level 3 Node: GRANT USERGROUP Statement (grant_usergroup_statement) GRANT USERGROUP Statement (grant_usergroup_statement) End Level 3 Node: GRANT USERGROUP Statement (grant_usergroup_statement)
Start Level 3 Node: ALTER PASSWORD Statement (alter_password_statement) ALTER PASSWORD Statement (alter_password_statement) End Level 3 Node: ALTER PASSWORD Statement (alter_password_statement)
Start Level 3 Node: CREATE ROLE Statement (create_role_statement) CREATE ROLE Statement (create_role_statement) End Level 3 Node: CREATE ROLE Statement (create_role_statement)
Start Level 3 Node: DROP ROLE Statement (drop_role_statement) DROP ROLE Statement (drop_role_statement) End Level 3 Node: DROP ROLE Statement (drop_role_statement)
Start Level 3 Node: GRANT Statement (grant_statement) GRANT Statement (grant_statement) End Level 3 Node: GRANT Statement (grant_statement)
Start Level 3 Node: REVOKE Statement (revoke_statement) REVOKE Statement (revoke_statement) End Level 3 Node: REVOKE Statement (revoke_statement)
Start Level 2 Node: Data Manipulation Data Manipulation End Level 2 Node: Data Manipulation
Start Level 3 Node: INSERT Statement (insert_statement) INSERT Statement (insert_statement) End Level 3 Node: INSERT Statement (insert_statement)
Start Level 4 Node: Data Type of the Target Column and Data Type of the Value to be Data Type of the Target Column and Data Type of the Value to be End Level 4 Node: Data Type of the Target Column and Data Type of the Value to be
Start Level 4 Node: Join View Table, QUERY Expression, CONSTRAINT Definition, Trigge Join View Table, QUERY Expression, CONSTRAINT Definition, Trigge End Level 4 Node: Join View Table, QUERY Expression, CONSTRAINT Definition, Trigge
Start Level 3 Node: UPDATE Statement (update_statement) UPDATE Statement (update_statement) End Level 3 Node: UPDATE Statement (update_statement)
Start Level 3 Node: DELETE Statement (delete_statement) DELETE Statement (delete_statement) End Level 3 Node: DELETE Statement (delete_statement)
Start Level 3 Node: NEXT STAMP Statement (next_stamp_statement) NEXT STAMP Statement (next_stamp_statement) End Level 3 Node: NEXT STAMP Statement (next_stamp_statement)
Start Level 3 Node: CALL Statement (call_statement) CALL Statement (call_statement) End Level 3 Node: CALL Statement (call_statement)
Start Level 2 Node: Data Query Data Query End Level 2 Node: Data Query
Start Level 3 Node: QUERY Statement (query_statement) QUERY Statement (query_statement) End Level 3 Node: QUERY Statement (query_statement)
Start Level 4 Node: DECLARE CURSOR Statement (declare_cursor_statement) DECLARE CURSOR Statement (declare_cursor_statement) End Level 4 Node: DECLARE CURSOR Statement (declare_cursor_statement)
Start Level 4 Node: Recursive DECLARE CURSOR Statement (recursive_declare_cursor_sta Recursive DECLARE CURSOR Statement (recursive_declare_cursor_sta End Level 4 Node: Recursive DECLARE CURSOR Statement (recursive_declare_cursor_sta
Start Level 4 Node: SELECT Statement (select_statement) SELECT Statement (select_statement) End Level 4 Node: SELECT Statement (select_statement)
Start Level 4 Node: QUERY Expression (query_expression) QUERY Expression (query_expression) End Level 4 Node: QUERY Expression (query_expression)
Start Level 4 Node: Table Expression (table_expression) Table Expression (table_expression) End Level 4 Node: Table Expression (table_expression)
Start Level 4 Node: Subquery (subquery) Subquery (subquery) End Level 4 Node: Subquery (subquery)
Start Level 4 Node: ORDER Clause (order_clause) ORDER Clause (order_clause) End Level 4 Node: ORDER Clause (order_clause)
Start Level 4 Node: UPDATE Clause (update_clause) UPDATE Clause (update_clause) End Level 4 Node: UPDATE Clause (update_clause)
Start Level 4 Node: LOCK Option (lock_option) LOCK Option (lock_option) End Level 4 Node: LOCK Option (lock_option)
Start Level 3 Node: FETCH Statement (fetch_statement) FETCH Statement (fetch_statement) End Level 3 Node: FETCH Statement (fetch_statement)
Start Level 3 Node: CLOSE Statement (close_statement) CLOSE Statement (close_statement) End Level 3 Node: CLOSE Statement (close_statement)
Start Level 3 Node: SINGLE SELECT Statement (single_select_statement) SINGLE SELECT Statement (single_select_statement) End Level 3 Node: SINGLE SELECT Statement (single_select_statement)
Start Level 3 Node: EXPLAIN Statement (explain_statement) EXPLAIN Statement (explain_statement) End Level 3 Node: EXPLAIN Statement (explain_statement)
Start Level 2 Node: Transactions Transactions End Level 2 Node: Transactions
Start Level 3 Node: CONNECT Statement (connect_statement) CONNECT Statement (connect_statement) End Level 3 Node: CONNECT Statement (connect_statement)
Start Level 3 Node: SET Statement (set_statement) SET Statement (set_statement) End Level 3 Node: SET Statement (set_statement)
Start Level 3 Node: COMMIT Statement (commit_statement) COMMIT Statement (commit_statement) End Level 3 Node: COMMIT Statement (commit_statement)
Start Level 3 Node: ROLLBACK Statement (rollback_statement) ROLLBACK Statement (rollback_statement) End Level 3 Node: ROLLBACK Statement (rollback_statement)
Start Level 3 Node: SUBTRANS Statement (subtrans_statement) SUBTRANS Statement (subtrans_statement) End Level 3 Node: SUBTRANS Statement (subtrans_statement)
Start Level 3 Node: INNER TRANSACTION Statement (inner_transaction_statement) INNER TRANSACTION Statement (inner_transaction_statement) End Level 3 Node: INNER TRANSACTION Statement (inner_transaction_statement)
Start Level 3 Node: SQL SAVEPOINT Statements (savepoint/rollback_to_/release_savepoi SQL SAVEPOINT Statements (savepoint/rollback_to_/release_savepoi End Level 3 Node: SQL SAVEPOINT Statements (savepoint/rollback_to_/release_savepoi
Start Level 3 Node: LOCK Statement (lock_statement) LOCK Statement (lock_statement) End Level 3 Node: LOCK Statement (lock_statement)
Start Level 3 Node: UNLOCK Statement (unlock_statement) UNLOCK Statement (unlock_statement) End Level 3 Node: UNLOCK Statement (unlock_statement)
Start Level 3 Node: RELEASE Statement (release_statement) RELEASE Statement (release_statement) End Level 3 Node: RELEASE Statement (release_statement)
Start Level 2 Node: Statistics Statistics End Level 2 Node: Statistics
Start Level 3 Node: UPDATE STATISTICS Statement (update_statistics_statement) UPDATE STATISTICS Statement (update_statistics_statement) End Level 3 Node: UPDATE STATISTICS Statement (update_statistics_statement)
Start Level 3 Node: MONITOR Statement (monitor_statement) MONITOR Statement (monitor_statement) End Level 3 Node: MONITOR Statement (monitor_statement)
Start Level 2 Node: SQL Statements: Overview SQL Statements: Overview End Level 2 Node: SQL Statements: Overview
Start Level 3 Node: Comment (sql_comment) Comment (sql_comment) End Level 3 Node: Comment (sql_comment)
Start Level 2 Node: Frequently Used Syntax Elements: Overview Frequently Used Syntax Elements: Overview End Level 2 Node: Frequently Used Syntax Elements: Overview
Start Level 3 Node: CASCADE Option (cascade_option) CASCADE Option (cascade_option) End Level 3 Node: CASCADE Option (cascade_option)
Start Level 3 Node: Character (character) Character (character) End Level 3 Node: Character (character)
Start Level 3 Node: Column Specification (column_spec) Column Specification (column_spec) End Level 3 Node: Column Specification (column_spec)
Start Level 3 Node: DEFAULT Specification (default_spec) DEFAULT Specification (default_spec) End Level 3 Node: DEFAULT Specification (default_spec)
Start Level 3 Node: DELETE Rule (delete_rule) DELETE Rule (delete_rule) End Level 3 Node: DELETE Rule (delete_rule)
Start Level 3 Node: DISTINCT Specification (distinct_spec) DISTINCT Specification (distinct_spec) End Level 3 Node: DISTINCT Specification (distinct_spec)
Start Level 3 Node: DUPLICATES Clause (duplicates_clause) DUPLICATES Clause (duplicates_clause) End Level 3 Node: DUPLICATES Clause (duplicates_clause)
Start Level 3 Node: Expression (expression) Expression (expression) End Level 3 Node: Expression (expression)
Start Level 3 Node: Specifying Values (extended_value_spec) Specifying Values (extended_value_spec) End Level 3 Node: Specifying Values (extended_value_spec)
Start Level 3 Node: Function (function_spec) Function (function_spec) End Level 3 Node: Function (function_spec)
Start Level 4 Node: Arithmetic Function (arithmetic_function) Arithmetic Function (arithmetic_function) End Level 4 Node: Arithmetic Function (arithmetic_function)
Start Level 5 Node: ABS(a) ABS(a) End Level 5 Node: ABS(a)
Start Level 5 Node: CEIL(a) CEIL(a) End Level 5 Node: CEIL(a)
Start Level 5 Node: EXP(a) EXP(a) End Level 5 Node: EXP(a)
Start Level 5 Node: FIXED(a,p,s) FIXED(a,p,s) End Level 5 Node: FIXED(a,p,s)
Start Level 5 Node: FLOAT(a,p) FLOAT(a,p) End Level 5 Node: FLOAT(a,p)
Start Level 5 Node: FLOOR(a) FLOOR(a) End Level 5 Node: FLOOR(a)
Start Level 5 Node: INDEX(a,b,p,s) INDEX(a,b,p,s) End Level 5 Node: INDEX(a,b,p,s)
Start Level 5 Node: LENGTH(a) LENGTH(a) End Level 5 Node: LENGTH(a)
Start Level 5 Node: LN(a) LN(a) End Level 5 Node: LN(a)
Start Level 5 Node: LOG(a) LOG(a) End Level 5 Node: LOG(a)
Start Level 5 Node: NOROUND(a) NOROUND(a) End Level 5 Node: NOROUND(a)
Start Level 5 Node: PI PI End Level 5 Node: PI
Start Level 5 Node: POWER(a,n) POWER(a,n) End Level 5 Node: POWER(a,n)
Start Level 5 Node: ROUND(a,n) ROUND(a,n) End Level 5 Node: ROUND(a,n)
Start Level 5 Node: SIGN(a) SIGN(a) End Level 5 Node: SIGN(a)
Start Level 5 Node: SQRT(a) SQRT(a) End Level 5 Node: SQRT(a)
Start Level 5 Node: TRUNC(a,n) TRUNC(a,n) End Level 5 Node: TRUNC(a,n)
Start Level 4 Node: Conversion Function (conversion_function) Conversion Function (conversion_function) End Level 4 Node: Conversion Function (conversion_function)
Start Level 5 Node: CHAR(a,t) CHAR(a,t) End Level 5 Node: CHAR(a,t)
Start Level 5 Node: CHR(a,n) CHR(a,n) End Level 5 Node: CHR(a,n)
Start Level 5 Node: HEX(a) HEX(a) End Level 5 Node: HEX(a)
Start Level 5 Node: HEXTORAW(a) HEXTORAW(a) End Level 5 Node: HEXTORAW(a)
Start Level 5 Node: INTTORAW(a) INTTORAW(a) End Level 5 Node: INTTORAW(a)
Start Level 5 Node: NUM(a) NUM(a) End Level 5 Node: NUM(a)
Start Level 5 Node: Date and Time Format (datetimeformat) Date and Time Format (datetimeformat) End Level 5 Node: Date and Time Format (datetimeformat)
Start Level 4 Node: Date Function (date_function) Date Function (date_function) End Level 4 Node: Date Function (date_function)
Start Level 5 Node: ADDDATE/SUBDATE(t,a) ADDDATE/SUBDATE(t,a) End Level 5 Node: ADDDATE/SUBDATE(t,a)
Start Level 5 Node: ADD_MONTHS(t,a) ADD_MONTHS(t,a) End Level 5 Node: ADD_MONTHS(t,a)
Start Level 5 Node: DATEDIFF(t,s) DATEDIFF(t,s) End Level 5 Node: DATEDIFF(t,s)
Start Level 5 Node: DAYNAME/MONTHNAME(t) DAYNAME/MONTHNAME(t) End Level 5 Node: DAYNAME/MONTHNAME(t)
Start Level 5 Node: DAYOFWEEK/WEEKOFYEAR/DAYOFMONTH/DAYOFYEAR(t) DAYOFWEEK/WEEKOFYEAR/DAYOFMONTH/DAYOFYEAR(t) End Level 5 Node: DAYOFWEEK/WEEKOFYEAR/DAYOFMONTH/DAYOFYEAR(t)
Start Level 5 Node: MAKEDATE(a,b) MAKEDATE(a,b) End Level 5 Node: MAKEDATE(a,b)
Start Level 4 Node: Database Function Call (dbfunction_call) Database Function Call (dbfunction_call) End Level 4 Node: Database Function Call (dbfunction_call)
Start Level 4 Node: Extraction (extraction_function) Extraction (extraction_function) End Level 4 Node: Extraction (extraction_function)
Start Level 5 Node: DATE(a) DATE(a) End Level 5 Node: DATE(a)
Start Level 5 Node: HOUR/MINUTE/SECOND(t) HOUR/MINUTE/SECOND(t) End Level 5 Node: HOUR/MINUTE/SECOND(t)
Start Level 5 Node: MICROSECOND(a) MICROSECOND(a) End Level 5 Node: MICROSECOND(a)
Start Level 5 Node: TIME(a) TIME(a) End Level 5 Node: TIME(a)
Start Level 5 Node: TIMESTAMP(a,b) TIMESTAMP(a,b) End Level 5 Node: TIMESTAMP(a,b)
Start Level 5 Node: YEAR/MONTH/DAY(t) YEAR/MONTH/DAY(t) End Level 5 Node: YEAR/MONTH/DAY(t)
Start Level 4 Node: Special Function (special_function) Special Function (special_function) End Level 4 Node: Special Function (special_function)
Start Level 5 Node: DECODE(x,y(i),...,z) DECODE(x,y(i),...,z) End Level 5 Node: DECODE(x,y(i),...,z)
Start Level 5 Node: GREATEST/LEAST(x,y,...) GREATEST/LEAST(x,y,...) End Level 5 Node: GREATEST/LEAST(x,y,...)
Start Level 5 Node: VALUE(x,y,...) VALUE(x,y,...) End Level 5 Node: VALUE(x,y,...)
Start Level 5 Node: General CASE Function (searched_case_function) General CASE Function (searched_case_function) End Level 5 Node: General CASE Function (searched_case_function)
Start Level 5 Node: Simple CASE Function (simple_case_function) Simple CASE Function (simple_case_function) End Level 5 Node: Simple CASE Function (simple_case_function)
Start Level 4 Node: String Function (string_function) String Function (string_function) End Level 4 Node: String Function (string_function)
Start Level 5 Node: ALPHA(x,n) ALPHA(x,n) End Level 5 Node: ALPHA(x,n)
Start Level 5 Node: ASCII(x) ASCII(x) End Level 5 Node: ASCII(x)
Start Level 5 Node: CONCAT(x,y) CONCAT(x,y) End Level 5 Node: CONCAT(x,y)
Start Level 5 Node: EXPAND(x,n) EXPAND(x,n) End Level 5 Node: EXPAND(x,n)
Start Level 5 Node: INITCAP(x) INITCAP(x) End Level 5 Node: INITCAP(x)
Start Level 5 Node: LFILL(x,a,n) LFILL(x,a,n) End Level 5 Node: LFILL(x,a,n)
Start Level 5 Node: LPAD(x,a,y,n) LPAD(x,a,y,n) End Level 5 Node: LPAD(x,a,y,n)
Start Level 5 Node: LTRIM(x,y) LTRIM(x,y) End Level 5 Node: LTRIM(x,y)
Start Level 5 Node: MAPCHAR(x,n,i) MAPCHAR(x,n,i) End Level 5 Node: MAPCHAR(x,n,i)
Start Level 5 Node: REPLACE(x,y,z) REPLACE(x,y,z) End Level 5 Node: REPLACE(x,y,z)
Start Level 5 Node: RFILL(x,a,n) RFILL(x,a,n) End Level 5 Node: RFILL(x,a,n)
Start Level 5 Node: RPAD(x,a,y,n) RPAD(x,a,y,n) End Level 5 Node: RPAD(x,a,y,n)
Start Level 5 Node: RTRIM(x,y) RTRIM(x,y) End Level 5 Node: RTRIM(x,y)
Start Level 5 Node: SOUNDEX(x) SOUNDEX(x) End Level 5 Node: SOUNDEX(x)
Start Level 5 Node: SQLMODE() SQLMODE() End Level 5 Node: SQLMODE()
Start Level 5 Node: SUBSTR(x,a,b) SUBSTR(x,a,b) End Level 5 Node: SUBSTR(x,a,b)
Start Level 5 Node: TRANSLATE(x,y,z) TRANSLATE(x,y,z) End Level 5 Node: TRANSLATE(x,y,z)
Start Level 5 Node: TRIM(x,y) TRIM(x,y) End Level 5 Node: TRIM(x,y)
Start Level 5 Node: UPPER/LOWER(x) UPPER/LOWER(x) End Level 5 Node: UPPER/LOWER(x)
Start Level 4 Node: Time Function (time_function) Time Function (time_function) End Level 4 Node: Time Function (time_function)
Start Level 5 Node: ADDTIME/SUBTIME(t,a) ADDTIME/SUBTIME(t,a) End Level 5 Node: ADDTIME/SUBTIME(t,a)
Start Level 5 Node: MAKETIME(h,m,s) MAKETIME(h,m,s) End Level 5 Node: MAKETIME(h,m,s)
Start Level 5 Node: TIMEDIFF(t,s) TIMEDIFF(t,s) End Level 5 Node: TIMEDIFF(t,s)
Start Level 4 Node: Trigonometric Function (trigonometric_function) Trigonometric Function (trigonometric_function) End Level 4 Node: Trigonometric Function (trigonometric_function)
Start Level 3 Node: Joined Table (joined_table) Joined Table (joined_table) End Level 3 Node: Joined Table (joined_table)
Start Level 3 Node: Key Specification (key_spec) Key Specification (key_spec) End Level 3 Node: Key Specification (key_spec)
Start Level 3 Node: Literal (literal) Literal (literal) End Level 3 Node: Literal (literal)
Start Level 4 Node: Fixed Point Number (fixed_point_literal) Fixed Point Number (fixed_point_literal) End Level 4 Node: Fixed Point Number (fixed_point_literal)
Start Level 4 Node: Floating Point Number (floating_point_literal) Floating Point Number (floating_point_literal) End Level 4 Node: Floating Point Number (floating_point_literal)
Start Level 4 Node: Unsigned Integer (unsigned_integer) Unsigned Integer (unsigned_integer) End Level 4 Node: Unsigned Integer (unsigned_integer)
Start Level 4 Node: Integer (integer) Integer (integer) End Level 4 Node: Integer (integer)
Start Level 3 Node: Parameter Specification (parameter_spec) Parameter Specification (parameter_spec) End Level 3 Node: Parameter Specification (parameter_spec)
Start Level 3 Node: Predicate (predicate) Predicate (predicate) End Level 3 Node: Predicate (predicate)
Start Level 4 Node: BETWEEN Predicate (between_predicate) BETWEEN Predicate (between_predicate) End Level 4 Node: BETWEEN Predicate (between_predicate)
Start Level 4 Node: Boolean Predicate (bool_predicate) Boolean Predicate (bool_predicate) End Level 4 Node: Boolean Predicate (bool_predicate)
Start Level 4 Node: Comparison Predicate (comparison_predicate) Comparison Predicate (comparison_predicate) End Level 4 Node: Comparison Predicate (comparison_predicate)
Start Level 4 Node: DEFAULT Predicate (default_predicate) DEFAULT Predicate (default_predicate) End Level 4 Node: DEFAULT Predicate (default_predicate)
Start Level 4 Node: EXISTS Predicate (exists_predicate) EXISTS Predicate (exists_predicate) End Level 4 Node: EXISTS Predicate (exists_predicate)
Start Level 4 Node: IN Predicate (in_predicate) IN Predicate (in_predicate) End Level 4 Node: IN Predicate (in_predicate)
Start Level 4 Node: JOIN Predicate (join_predicate) JOIN Predicate (join_predicate) End Level 4 Node: JOIN Predicate (join_predicate)
Start Level 4 Node: LIKE Predicate (like_predicate) LIKE Predicate (like_predicate) End Level 4 Node: LIKE Predicate (like_predicate)
Start Level 4 Node: NULL Predicate (null_predicate) NULL Predicate (null_predicate) End Level 4 Node: NULL Predicate (null_predicate)
Start Level 4 Node: Quantified Predicate (quantified_predicate) Quantified Predicate (quantified_predicate) End Level 4 Node: Quantified Predicate (quantified_predicate)
Start Level 4 Node: ROWNO Predicate (rowno_predicate) ROWNO Predicate (rowno_predicate) End Level 4 Node: ROWNO Predicate (rowno_predicate)
Start Level 4 Node: SOUNDS Predicate (sounds_predicate) SOUNDS Predicate (sounds_predicate) End Level 4 Node: SOUNDS Predicate (sounds_predicate)
Start Level 3 Node: SAMPLE Definition (sample_definition) SAMPLE Definition (sample_definition) End Level 3 Node: SAMPLE Definition (sample_definition)
Start Level 3 Node: Search Condition (search_condition) Search Condition (search_condition) End Level 3 Node: Search Condition (search_condition)
Start Level 3 Node: Selected Column (select_column) Selected Column (select_column) End Level 3 Node: Selected Column (select_column)
Start Level 3 Node: Set Function (set_function_spec) Set Function (set_function_spec) End Level 3 Node: Set Function (set_function_spec)
Start Level 3 Node: Character Set (token) Character Set (token) End Level 3 Node: Character Set (token)
Start Level 4 Node: Identifier (identifier) Identifier (identifier) End Level 4 Node: Identifier (identifier)
Start Level 4 Node: Keyword (keyword) Keyword (keyword) End Level 4 Node: Keyword (keyword)
Start Level 2 Node: Functions: Overview Functions: Overview End Level 2 Node: Functions: Overview
Start Level 2 Node: Names: Overview Names: Overview End Level 2 Node: Names: Overview
Start Level 3 Node: Alias Name (alias_name) Alias Name (alias_name) End Level 3 Node: Alias Name (alias_name)
Start Level 3 Node: Column Name (column_name) Column Name (column_name) End Level 3 Node: Column Name (column_name)
Start Level 3 Node: Constraint Name (constraint_name) Constraint Name (constraint_name) End Level 3 Node: Constraint Name (constraint_name)
Start Level 3 Node: Data Source Name (data_source_name) Data Source Name (data_source_name) End Level 3 Node: Data Source Name (data_source_name)
Start Level 3 Node: Name of a Database Function (dbfunction_name) Name of a Database Function (dbfunction_name) End Level 3 Node: Name of a Database Function (dbfunction_name)
Start Level 3 Node: Name of a Database Procedure (dbproc_name) Name of a Database Procedure (dbproc_name) End Level 3 Node: Name of a Database Procedure (dbproc_name)
Start Level 3 Node: Domain Name (domain_name) Domain Name (domain_name) End Level 3 Node: Domain Name (domain_name)
Start Level 3 Node: Index Name (index_name) Index Name (index_name) End Level 3 Node: Index Name (index_name)
Start Level 3 Node: Indicator Name (indicator_name) Indicator Name (indicator_name) End Level 3 Node: Indicator Name (indicator_name)
Start Level 3 Node: MapChar Set Name (mapchar_set_name) MapChar Set Name (mapchar_set_name) End Level 3 Node: MapChar Set Name (mapchar_set_name)
Start Level 3 Node: Password (password) Password (password) End Level 3 Node: Password (password)
Start Level 3 Node: Parameter Name (parameter_name) Parameter Name (parameter_name) End Level 3 Node: Parameter Name (parameter_name)
Start Level 3 Node: Reference Name (reference_name) Reference Name (reference_name) End Level 3 Node: Reference Name (reference_name)
Start Level 3 Node: Name of a Referential Constraint (referential_constraint_name) Name of a Referential Constraint (referential_constraint_name) End Level 3 Node: Name of a Referential Constraint (referential_constraint_name)
Start Level 3 Node: Results Table Name (result_table_name) Results Table Name (result_table_name) End Level 3 Node: Results Table Name (result_table_name)
Start Level 3 Node: Role Name (role_name) Role Name (role_name) End Level 3 Node: Role Name (role_name)
Start Level 3 Node: Schema Name (schema_name) Schema Name (schema_name) End Level 3 Node: Schema Name (schema_name)
Start Level 3 Node: Sequence Name (sequence_name) Sequence Name (sequence_name) End Level 3 Node: Sequence Name (sequence_name)
Start Level 3 Node: Synonym Name (synonym_name) Synonym Name (synonym_name) End Level 3 Node: Synonym Name (synonym_name)
Start Level 3 Node: Table Name (table_name) Table Name (table_name) End Level 3 Node: Table Name (table_name)
Start Level 3 Node: Trigger Name (trigger_name) Trigger Name (trigger_name) End Level 3 Node: Trigger Name (trigger_name)
Start Level 3 Node: User Group Name (usergroup_name) User Group Name (usergroup_name) End Level 3 Node: User Group Name (usergroup_name)
Start Level 3 Node: User Name (user_name) User Name (user_name) End Level 3 Node: User Name (user_name)
Start Level 2 Node: Privileges: Overview Privileges: Overview End Level 2 Node: Privileges: Overview
Start Level 3 Node: Privilege Specification (priv_spec) Privilege Specification (priv_spec) End Level 3 Node: Privilege Specification (priv_spec)
Start Level 3 Node: Privilege Specification for a Schema (schema_priv_spec) Privilege Specification for a Schema (schema_priv_spec) End Level 3 Node: Privilege Specification for a Schema (schema_priv_spec)
Start Level 2 Node: SQL Syntax SQL Syntax End Level 2 Node: SQL Syntax
Start Level 3 Node: add_definition add_definition End Level 3 Node: add_definition
Start Level 3 Node: alias_name alias_name End Level 3 Node: alias_name
Start Level 3 Node: all_function all_function End Level 3 Node: all_function
Start Level 3 Node: alter_definition alter_definition End Level 3 Node: alter_definition
Start Level 3 Node: alter_index_statement alter_index_statement End Level 3 Node: alter_index_statement
Start Level 3 Node: alter_password_statement alter_password_statement End Level 3 Node: alter_password_statement
Start Level 3 Node: alter_table_statement alter_table_statement End Level 3 Node: alter_table_statement
Start Level 3 Node: alter_user_statement alter_user_statement End Level 3 Node: alter_user_statement
Start Level 3 Node: alter_usergroup_statement alter_usergroup_statement End Level 3 Node: alter_usergroup_statement
Start Level 3 Node: argument argument End Level 3 Node: argument
Start Level 3 Node: argument1 argument1 End Level 3 Node: argument1
Start Level 3 Node: arithmetic_function arithmetic_function End Level 3 Node: arithmetic_function
Start Level 3 Node: ascii_or_unicode ascii_or_unicode End Level 3 Node: ascii_or_unicode
Start Level 3 Node: assignment_statement assignment_statement End Level 3 Node: assignment_statement
Start Level 3 Node: between_predicate between_predicate End Level 3 Node: between_predicate
Start Level 3 Node: bool_predicate bool_predicate End Level 3 Node: bool_predicate
Start Level 3 Node: boolean_factor boolean_factor End Level 3 Node: boolean_factor
Start Level 3 Node: boolean_term boolean_term End Level 3 Node: boolean_term
Start Level 3 Node: call_statement call_statement End Level 3 Node: call_statement
Start Level 3 Node: cascade_option cascade_option End Level 3 Node: cascade_option
Start Level 3 Node: case_else_clause case_else_clause End Level 3 Node: case_else_clause
Start Level 3 Node: case_function case_function End Level 3 Node: case_function
Start Level 3 Node: case_statement case_statement End Level 3 Node: case_statement
Start Level 3 Node: character character End Level 3 Node: character
Start Level 3 Node: check_expression check_expression End Level 3 Node: check_expression
Start Level 3 Node: close_statement close_statement End Level 3 Node: close_statement
Start Level 3 Node: column_attributes column_attributes End Level 3 Node: column_attributes
Start Level 3 Node: column_change_definition column_change_definition End Level 3 Node: column_change_definition
Start Level 3 Node: column_definition column_definition End Level 3 Node: column_definition
Start Level 3 Node: column_list column_list End Level 3 Node: column_list
Start Level 3 Node: column_name column_name End Level 3 Node: column_name
Start Level 3 Node: column_spec column_spec End Level 3 Node: column_spec
Start Level 3 Node: comment comment End Level 3 Node: comment
Start Level 3 Node: comment_on_statement comment_on_statement End Level 3 Node: comment_on_statement
Start Level 3 Node: commit_statement commit_statement End Level 3 Node: commit_statement
Start Level 3 Node: comp_op comp_op End Level 3 Node: comp_op
Start Level 3 Node: comparison_predicate comparison_predicate End Level 3 Node: comparison_predicate
Start Level 3 Node: connect_mode connect_mode End Level 3 Node: connect_mode
Start Level 3 Node: connect_option connect_option End Level 3 Node: connect_option
Start Level 3 Node: connect_statement connect_statement End Level 3 Node: connect_statement
Start Level 3 Node: constraint_definition constraint_definition End Level 3 Node: constraint_definition
Start Level 3 Node: constraint_name constraint_name End Level 3 Node: constraint_name
Start Level 3 Node: conversion_function conversion_function End Level 3 Node: conversion_function
Start Level 3 Node: create_dbproc_statement create_dbproc_statement End Level 3 Node: create_dbproc_statement
Start Level 3 Node: create_domain_statement create_domain_statement End Level 3 Node: create_domain_statement
Start Level 3 Node: create_function_statement create_function_statement End Level 3 Node: create_function_statement
Start Level 3 Node: create_index_statement create_index_statement End Level 3 Node: create_index_statement
Start Level 3 Node: create_role_statement create_role_statement End Level 3 Node: create_role_statement
Start Level 3 Node: create_schema_statement create_schema_statement End Level 3 Node: create_schema_statement
Start Level 3 Node: create_sequence_statement create_sequence_statement End Level 3 Node: create_sequence_statement
Start Level 3 Node: create_synonym_statement create_synonym_statement End Level 3 Node: create_synonym_statement
Start Level 3 Node: create_system_trigger_statement create_system_trigger_statement End Level 3 Node: create_system_trigger_statement
Start Level 3 Node: create_table_statement create_table_statement End Level 3 Node: create_table_statement
Start Level 3 Node: create_table_temp create_table_temp End Level 3 Node: create_table_temp
Start Level 3 Node: create_trigger_statement create_trigger_statement End Level 3 Node: create_trigger_statement
Start Level 3 Node: create_user_statement create_user_statement End Level 3 Node: create_user_statement
Start Level 3 Node: create_usergroup_statement create_usergroup_statement End Level 3 Node: create_usergroup_statement
Start Level 3 Node: create_view_statement create_view_statement End Level 3 Node: create_view_statement
Start Level 3 Node: data_source_name data_source_name End Level 3 Node: data_source_name
Start Level 3 Node: data_type data_type End Level 3 Node: data_type
Start Level 3 Node: date_function date_function End Level 3 Node: date_function
Start Level 3 Node: date_or_timestamp_expression date_or_timestamp_expression End Level 3 Node: date_or_timestamp_expression
Start Level 3 Node: datetimeformat datetimeformat End Level 3 Node: datetimeformat
Start Level 3 Node: dbfunction_call dbfunction_call End Level 3 Node: dbfunction_call
Start Level 3 Node: dbfunction_name dbfunction_name End Level 3 Node: dbfunction_name
Start Level 3 Node: dbproc_name dbproc_name End Level 3 Node: dbproc_name
Start Level 3 Node: declare_cursor_statement declare_cursor_statement End Level 3 Node: declare_cursor_statement
Start Level 3 Node: default_expression default_expression End Level 3 Node: default_expression
Start Level 3 Node: default_predicate default_predicate End Level 3 Node: default_predicate
Start Level 3 Node: default_spec default_spec End Level 3 Node: default_spec
Start Level 3 Node: delete_rule delete_rule End Level 3 Node: delete_rule
Start Level 3 Node: delete_statement delete_statement End Level 3 Node: delete_statement
Start Level 3 Node: delimiter_token delimiter_token End Level 3 Node: delimiter_token
Start Level 3 Node: derived_column derived_column End Level 3 Node: derived_column
Start Level 3 Node: digit digit End Level 3 Node: digit
Start Level 3 Node: digit_sequence digit_sequence End Level 3 Node: digit_sequence
Start Level 3 Node: distinct_function distinct_function End Level 3 Node: distinct_function
Start Level 3 Node: distinct_spec distinct_spec End Level 3 Node: distinct_spec
Start Level 3 Node: domain_name domain_name End Level 3 Node: domain_name
Start Level 3 Node: double_quotes double_quotes End Level 3 Node: double_quotes
Start Level 3 Node: drop_dbproc_statement drop_dbproc_statement End Level 3 Node: drop_dbproc_statement
Start Level 3 Node: drop_definition drop_definition End Level 3 Node: drop_definition
Start Level 3 Node: drop_domain_statement drop_domain_statement End Level 3 Node: drop_domain_statement
Start Level 3 Node: drop_function_statement drop_function_statement End Level 3 Node: drop_function_statement
Start Level 3 Node: drop_index_statement drop_index_statement End Level 3 Node: drop_index_statement
Start Level 3 Node: drop_role_statement drop_role_statement End Level 3 Node: drop_role_statement
Start Level 3 Node: drop_schema_statement drop_schema_statement End Level 3 Node: drop_schema_statement
Start Level 3 Node: drop_sequence_statement drop_sequence_statement End Level 3 Node: drop_sequence_statement
Start Level 3 Node: drop_synonym_statement drop_synonym_statement End Level 3 Node: drop_synonym_statement
Start Level 3 Node: drop_system_trigger_statement drop_system_trigger_statement End Level 3 Node: drop_system_trigger_statement
Start Level 3 Node: drop_table_statement drop_table_statement End Level 3 Node: drop_table_statement
Start Level 3 Node: drop_table_temp drop_table_temp End Level 3 Node: drop_table_temp
Start Level 3 Node: drop_trigger_statement drop_trigger_statement End Level 3 Node: drop_trigger_statement
Start Level 3 Node: drop_user_statement drop_user_statement End Level 3 Node: drop_user_statement
Start Level 3 Node: drop_usergroup_statement drop_usergroup_statement End Level 3 Node: drop_usergroup_statement
Start Level 3 Node: drop_view_statement drop_view_statement End Level 3 Node: drop_view_statement
Start Level 3 Node: duplicates_clause duplicates_clause End Level 3 Node: duplicates_clause
Start Level 3 Node: equal_or_not equal_or_not End Level 3 Node: equal_or_not
Start Level 3 Node: exists_predicate exists_predicate End Level 3 Node: exists_predicate
Start Level 3 Node: exists_table_statement exists_table_statement End Level 3 Node: exists_table_statement
Start Level 3 Node: explain_statement explain_statement End Level 3 Node: explain_statement
Start Level 3 Node: exponent exponent End Level 3 Node: exponent
Start Level 3 Node: expression expression End Level 3 Node: expression
Start Level 3 Node: expression_list expression_list End Level 3 Node: expression_list
Start Level 3 Node: extended_expression extended_expression End Level 3 Node: extended_expression
Start Level 3 Node: extended_letter extended_letter End Level 3 Node: extended_letter
Start Level 3 Node: extended_value_spec extended_value_spec End Level 3 Node: extended_value_spec
Start Level 3 Node: extraction_function extraction_function End Level 3 Node: extraction_function
Start Level 3 Node: factor factor End Level 3 Node: factor
Start Level 3 Node: fetch_statement fetch_statement End Level 3 Node: fetch_statement
Start Level 3 Node: final_select final_select End Level 3 Node: final_select
Start Level 3 Node: first_character first_character End Level 3 Node: first_character
Start Level 3 Node: first_password_character first_password_character End Level 3 Node: first_password_character
Start Level 3 Node: fixed_point_literal fixed_point_literal End Level 3 Node: fixed_point_literal
Start Level 3 Node: floating_point_literal floating_point_literal End Level 3 Node: floating_point_literal
Start Level 3 Node: formal_parameter formal_parameter End Level 3 Node: formal_parameter
Start Level 3 Node: formal_parameter1 formal_parameter1 End Level 3 Node: formal_parameter1
Start Level 3 Node: from_clause from_clause End Level 3 Node: from_clause
Start Level 3 Node: from_table_spec from_table_spec End Level 3 Node: from_table_spec
Start Level 3 Node: function_spec function_spec End Level 3 Node: function_spec
Start Level 3 Node: grant_statement grant_statement End Level 3 Node: grant_statement
Start Level 3 Node: grant_user_statement grant_user_statement End Level 3 Node: grant_user_statement
Start Level 3 Node: grant_usergroup_statement grant_usergroup_statement End Level 3 Node: grant_usergroup_statement
Start Level 3 Node: granted_usergroups granted_usergroups End Level 3 Node: granted_usergroups
Start Level 3 Node: granted_users granted_users End Level 3 Node: granted_users
Start Level 3 Node: grantee grantee End Level 3 Node: grantee
Start Level 3 Node: group_clause group_clause End Level 3 Node: group_clause
Start Level 3 Node: having_clause having_clause End Level 3 Node: having_clause
Start Level 3 Node: hex_digit hex_digit End Level 3 Node: hex_digit
Start Level 3 Node: hex_digit_seq hex_digit_seq End Level 3 Node: hex_digit_seq
Start Level 3 Node: hex_literal hex_literal End Level 3 Node: hex_literal
Start Level 3 Node: hours hours End Level 3 Node: hours
Start Level 3 Node: identifier identifier End Level 3 Node: identifier
Start Level 3 Node: identifier_tail_character identifier_tail_character End Level 3 Node: identifier_tail_character
Start Level 3 Node: if_statement if_statement End Level 3 Node: if_statement
Start Level 3 Node: in_predicate in_predicate End Level 3 Node: in_predicate
Start Level 3 Node: index_column_name index_column_name End Level 3 Node: index_column_name
Start Level 3 Node: index_name index_name End Level 3 Node: index_name
Start Level 3 Node: index_spec index_spec End Level 3 Node: index_spec
Start Level 3 Node: indicator_name indicator_name End Level 3 Node: indicator_name
Start Level 3 Node: initial_select initial_select End Level 3 Node: initial_select
Start Level 3 Node: inner_transaction_statement inner_transaction_statement End Level 3 Node: inner_transaction_statement
Start Level 3 Node: insert_expression insert_expression End Level 3 Node: insert_expression
Start Level 3 Node: insert_statement insert_statement End Level 3 Node: insert_statement
Start Level 3 Node: integer integer End Level 3 Node: integer
Start Level 3 Node: internal_oracle internal_oracle End Level 3 Node: internal_oracle
Start Level 3 Node: join_predicate join_predicate End Level 3 Node: join_predicate
Start Level 3 Node: join_spec join_spec End Level 3 Node: join_spec
Start Level 3 Node: joined_table joined_table End Level 3 Node: joined_table
Start Level 3 Node: key_definition key_definition End Level 3 Node: key_definition
Start Level 3 Node: key_or_not_null_spec key_or_not_null_spec End Level 3 Node: key_or_not_null_spec
Start Level 3 Node: key_spec key_spec End Level 3 Node: key_spec
Start Level 3 Node: keyword keyword End Level 3 Node: keyword
Start Level 3 Node: language_specific_character language_specific_character End Level 3 Node: language_specific_character
Start Level 3 Node: letter letter End Level 3 Node: letter
Start Level 3 Node: like_expression like_expression End Level 3 Node: like_expression
Start Level 3 Node: like_predicate like_predicate End Level 3 Node: like_predicate
Start Level 3 Node: limit_clause limit_clause End Level 3 Node: limit_clause
Start Level 3 Node: literal literal End Level 3 Node: literal
Start Level 3 Node: local_variable local_variable End Level 3 Node: local_variable
Start Level 3 Node: local_variable_list local_variable_list End Level 3 Node: local_variable_list
Start Level 3 Node: local_variables local_variables End Level 3 Node: local_variables
Start Level 3 Node: lock_option lock_option End Level 3 Node: lock_option
Start Level 3 Node: lock_spec lock_spec End Level 3 Node: lock_spec
Start Level 3 Node: lock_statement lock_statement End Level 3 Node: lock_statement
Start Level 3 Node: mantissa mantissa End Level 3 Node: mantissa
Start Level 3 Node: mapchar_set_name mapchar_set_name End Level 3 Node: mapchar_set_name
Start Level 3 Node: match_char match_char End Level 3 Node: match_char
Start Level 3 Node: match_set match_set End Level 3 Node: match_set
Start Level 3 Node: match_string match_string End Level 3 Node: match_string
Start Level 3 Node: minutes minutes End Level 3 Node: minutes
Start Level 3 Node: modify_column_definition modify_column_definition End Level 3 Node: modify_column_definition
Start Level 3 Node: modify_definition modify_definition End Level 3 Node: modify_definition
Start Level 3 Node: monitor_statement monitor_statement End Level 3 Node: monitor_statement
Start Level 3 Node: new_index_name new_index_name End Level 3 Node: new_index_name
Start Level 3 Node: new_password new_password End Level 3 Node: new_password
Start Level 3 Node: new_schema_name new_schema_name End Level 3 Node: new_schema_name
Start Level 3 Node: new_synonym_name new_synonym_name End Level 3 Node: new_synonym_name
Start Level 3 Node: new_table_name new_table_name End Level 3 Node: new_table_name
Start Level 3 Node: new_user_name new_user_name End Level 3 Node: new_user_name
Start Level 3 Node: new_usergroup_name new_usergroup_name End Level 3 Node: new_usergroup_name
Start Level 3 Node: next_stamp_statement next_stamp_statement End Level 3 Node: next_stamp_statement
Start Level 3 Node: not_reserved_keyword not_reserved_keyword End Level 3 Node: not_reserved_keyword
Start Level 3 Node: null_predicate null_predicate End Level 3 Node: null_predicate
Start Level 3 Node: numeric_literal numeric_literal End Level 3 Node: numeric_literal
Start Level 3 Node: object_spec object_spec End Level 3 Node: object_spec
Start Level 3 Node: offset offset End Level 3 Node: offset
Start Level 3 Node: old_index_name old_index_name End Level 3 Node: old_index_name
Start Level 3 Node: old_password old_password End Level 3 Node: old_password
Start Level 3 Node: old_synonym_name old_synonym_name End Level 3 Node: old_synonym_name
Start Level 3 Node: old_table_name old_table_name End Level 3 Node: old_table_name
Start Level 3 Node: order_clause order_clause End Level 3 Node: order_clause
Start Level 3 Node: outer_join_indicator outer_join_indicator End Level 3 Node: outer_join_indicator
Start Level 3 Node: parameter_name parameter_name End Level 3 Node: parameter_name
Start Level 3 Node: parameter_spec parameter_spec End Level 3 Node: parameter_spec
Start Level 3 Node: password password End Level 3 Node: password
Start Level 3 Node: pattern_element pattern_element End Level 3 Node: pattern_element
Start Level 3 Node: position position End Level 3 Node: position
Start Level 3 Node: predicate predicate End Level 3 Node: predicate
Start Level 3 Node: priv_spec priv_spec End Level 3 Node: priv_spec
Start Level 3 Node: privilege privilege End Level 3 Node: privilege
Start Level 3 Node: quantified_predicate quantified_predicate End Level 3 Node: quantified_predicate
Start Level 3 Node: quantifier quantifier End Level 3 Node: quantifier
Start Level 3 Node: query_expression query_expression End Level 3 Node: query_expression
Start Level 3 Node: query_primary query_primary End Level 3 Node: query_primary
Start Level 3 Node: query_spec query_spec End Level 3 Node: query_spec
Start Level 3 Node: query_statement query_statement End Level 3 Node: query_statement
Start Level 3 Node: query_term query_term End Level 3 Node: query_term
Start Level 3 Node: recursive_declare_cursor_statement recursive_declare_cursor_statement End Level 3 Node: recursive_declare_cursor_statement
Start Level 3 Node: recursive_select recursive_select End Level 3 Node: recursive_select
Start Level 3 Node: reference_name reference_name End Level 3 Node: reference_name
Start Level 3 Node: referenced_column referenced_column End Level 3 Node: referenced_column
Start Level 3 Node: referenced_table referenced_table End Level 3 Node: referenced_table
Start Level 3 Node: referencing_column referencing_column End Level 3 Node: referencing_column
Start Level 3 Node: referential_constraint_definition referential_constraint_definition End Level 3 Node: referential_constraint_definition
Start Level 3 Node: referential_constraint_name referential_constraint_name End Level 3 Node: referential_constraint_name
Start Level 3 Node: regular_token regular_token End Level 3 Node: regular_token
Start Level 3 Node: release_savepoint_statement release_savepoint_statement End Level 3 Node: release_savepoint_statement
Start Level 3 Node: release_statement release_statement End Level 3 Node: release_statement
Start Level 3 Node: rename_column_statement rename_column_statement End Level 3 Node: rename_column_statement
Start Level 3 Node: rename_index_statement rename_index_statement End Level 3 Node: rename_index_statement
Start Level 3 Node: rename_schema_statement rename_schema_statement End Level 3 Node: rename_schema_statement
Start Level 3 Node: rename_synonym_statement rename_synonym_statement End Level 3 Node: rename_synonym_statement
Start Level 3 Node: rename_table_statement rename_table_statement End Level 3 Node: rename_table_statement
Start Level 3 Node: rename_user_statement rename_user_statement End Level 3 Node: rename_user_statement
Start Level 3 Node: rename_usergroup_statement rename_usergroup_statement End Level 3 Node: rename_usergroup_statement
Start Level 3 Node: rename_view_statement rename_view_statement End Level 3 Node: rename_view_statement
Start Level 3 Node: reserved_keyword reserved_keyword End Level 3 Node: reserved_keyword
Start Level 3 Node: result_column_name result_column_name End Level 3 Node: result_column_name
Start Level 3 Node: result_expression result_expression End Level 3 Node: result_expression
Start Level 3 Node: result_table_name result_table_name End Level 3 Node: result_table_name
Start Level 3 Node: revoke_statement revoke_statement End Level 3 Node: revoke_statement
Start Level 3 Node: role_name role_name End Level 3 Node: role_name
Start Level 3 Node: rollback_statement rollback_statement End Level 3 Node: rollback_statement
Start Level 3 Node: rollback_to_statement rollback_to_statement End Level 3 Node: rollback_to_statement
Start Level 3 Node: routine routine End Level 3 Node: routine
Start Level 3 Node: routine_data_type routine_data_type End Level 3 Node: routine_data_type
Start Level 3 Node: routine_sql_statement routine_sql_statement End Level 3 Node: routine_sql_statement
Start Level 3 Node: row_count row_count End Level 3 Node: row_count
Start Level 3 Node: row_spec row_spec End Level 3 Node: row_spec
Start Level 3 Node: rowno_column rowno_column End Level 3 Node: rowno_column
Start Level 3 Node: rowno_predicate rowno_predicate End Level 3 Node: rowno_predicate
Start Level 3 Node: sample_definition sample_definition End Level 3 Node: sample_definition
Start Level 3 Node: savepoint_statement savepoint_statement End Level 3 Node: savepoint_statement
Start Level 3 Node: scalar_subquery scalar_subquery End Level 3 Node: scalar_subquery
Start Level 3 Node: schema_authorization_identifier schema_authorization_identifier End Level 3 Node: schema_authorization_identifier
Start Level 3 Node: schema_element schema_element End Level 3 Node: schema_element
Start Level 3 Node: schema_name schema_name End Level 3 Node: schema_name
Start Level 3 Node: schema_name_clause schema_name_clause End Level 3 Node: schema_name_clause
Start Level 3 Node: schema_priv_spec schema_priv_spec End Level 3 Node: schema_priv_spec
Start Level 3 Node: schema_privilege schema_privilege End Level 3 Node: schema_privilege
Start Level 3 Node: search_and_result_spec search_and_result_spec End Level 3 Node: search_and_result_spec
Start Level 3 Node: search_condition search_condition End Level 3 Node: search_condition
Start Level 3 Node: search_expression search_expression End Level 3 Node: search_expression
Start Level 3 Node: searched_case_function searched_case_function End Level 3 Node: searched_case_function
Start Level 3 Node: searched_case_statement searched_case_statement End Level 3 Node: searched_case_statement
Start Level 3 Node: searched_case_when_clause searched_case_when_clause End Level 3 Node: searched_case_when_clause
Start Level 3 Node: seconds seconds End Level 3 Node: seconds
Start Level 3 Node: select_column select_column End Level 3 Node: select_column
Start Level 3 Node: select_statement select_statement End Level 3 Node: select_statement
Start Level 3 Node: sequence_name sequence_name End Level 3 Node: sequence_name
Start Level 3 Node: set_function_name set_function_name End Level 3 Node: set_function_name
Start Level 3 Node: set_function_spec set_function_spec End Level 3 Node: set_function_spec
Start Level 3 Node: set_insert_clause set_insert_clause End Level 3 Node: set_insert_clause
Start Level 3 Node: set_statement set_statement End Level 3 Node: set_statement
Start Level 3 Node: set_update_clause set_update_clause End Level 3 Node: set_update_clause
Start Level 3 Node: sign sign End Level 3 Node: sign
Start Level 3 Node: simple_case_function simple_case_function End Level 3 Node: simple_case_function
Start Level 3 Node: simple_case_statement simple_case_statement End Level 3 Node: simple_case_statement
Start Level 3 Node: simple_case_when_clause simple_case_when_clause End Level 3 Node: simple_case_when_clause
Start Level 3 Node: simple_identifier simple_identifier End Level 3 Node: simple_identifier
Start Level 3 Node: single_select_statement single_select_statement End Level 3 Node: single_select_statement
Start Level 3 Node: sort_spec sort_spec End Level 3 Node: sort_spec
Start Level 3 Node: sound_predicate sound_predicate End Level 3 Node: sound_predicate
Start Level 3 Node: source_user source_user End Level 3 Node: source_user
Start Level 3 Node: special_character special_character End Level 3 Node: special_character
Start Level 3 Node: special_function special_function End Level 3 Node: special_function
Start Level 3 Node: special_identifier special_identifier End Level 3 Node: special_identifier
Start Level 3 Node: special_identifier_character special_identifier_character End Level 3 Node: special_identifier_character
Start Level 3 Node: sql_comment sql_comment End Level 3 Node: sql_comment
Start Level 3 Node: sql_comment_text sql_comment_text End Level 3 Node: sql_comment_text
Start Level 3 Node: sql_savepoint_name sql_savepoint_name End Level 3 Node: sql_savepoint_name
Start Level 3 Node: sql_statement sql_statement End Level 3 Node: sql_statement
Start Level 3 Node: stamp_column stamp_column End Level 3 Node: stamp_column
Start Level 3 Node: statement statement End Level 3 Node: statement
Start Level 3 Node: statement_list statement_list End Level 3 Node: statement_list
Start Level 3 Node: string_function string_function End Level 3 Node: string_function
Start Level 3 Node: string_literal string_literal End Level 3 Node: string_literal
Start Level 3 Node: string_spec string_spec End Level 3 Node: string_spec
Start Level 3 Node: subquery subquery End Level 3 Node: subquery
Start Level 3 Node: subtrans_statement subtrans_statement End Level 3 Node: subtrans_statement
Start Level 3 Node: synonym_name synonym_name End Level 3 Node: synonym_name
Start Level 3 Node: table_columns table_columns End Level 3 Node: table_columns
Start Level 3 Node: table_description_element table_description_element End Level 3 Node: table_description_element
Start Level 3 Node: table_expression table_expression End Level 3 Node: table_expression
Start Level 3 Node: table_name table_name End Level 3 Node: table_name
Start Level 3 Node: term term End Level 3 Node: term
Start Level 3 Node: time_expression time_expression End Level 3 Node: time_expression
Start Level 3 Node: time_function time_function End Level 3 Node: time_function
Start Level 3 Node: time_or_timestamp_expression time_or_timestamp_expression End Level 3 Node: time_or_timestamp_expression
Start Level 3 Node: token token End Level 3 Node: token
Start Level 3 Node: top_spec top_spec End Level 3 Node: top_spec
Start Level 3 Node: trigger_event trigger_event End Level 3 Node: trigger_event
Start Level 3 Node: trigger_name trigger_name End Level 3 Node: trigger_name
Start Level 3 Node: trigonometric_function trigonometric_function End Level 3 Node: trigonometric_function
Start Level 3 Node: underscore underscore End Level 3 Node: underscore
Start Level 3 Node: unique_definition unique_definition End Level 3 Node: unique_definition
Start Level 3 Node: unlock_statement unlock_statement End Level 3 Node: unlock_statement
Start Level 3 Node: unsigned_integer unsigned_integer End Level 3 Node: unsigned_integer
Start Level 3 Node: update_clause update_clause End Level 3 Node: update_clause
Start Level 3 Node: update_statement update_statement End Level 3 Node: update_statement
Start Level 3 Node: update_statistics_statement update_statistics_statement End Level 3 Node: update_statistics_statement
Start Level 3 Node: user_mode user_mode End Level 3 Node: user_mode
Start Level 3 Node: user_name user_name End Level 3 Node: user_name
Start Level 3 Node: usergroup_mode usergroup_mode End Level 3 Node: usergroup_mode
Start Level 3 Node: usergroup_name usergroup_name End Level 3 Node: usergroup_name
Start Level 3 Node: value_spec value_spec End Level 3 Node: value_spec
Start Level 3 Node: variable_name variable_name End Level 3 Node: variable_name
Start Level 3 Node: vertical_slash vertical_slash End Level 3 Node: vertical_slash
Start Level 3 Node: where_clause where_clause End Level 3 Node: where_clause
Start Level 3 Node: while_statement while_statement End Level 3 Node: while_statement
Start Level 3 Node: SQL Syntax Changes SQL Syntax Changes End Level 3 Node: SQL Syntax Changes
Start Level 2 Node: System Tables System Tables End Level 2 Node: System Tables
Start Level 3 Node: General Notes General Notes End Level 3 Node: General Notes
Start Level 3 Node: Database Terms Database Terms End Level 3 Node: Database Terms
Start Level 3 Node: Evaluating System Tables (Examples) Evaluating System Tables (Examples) End Level 3 Node: Evaluating System Tables (Examples)
Start Level 4 Node: ACTIVECONFIGURATION ACTIVECONFIGURATION End Level 4 Node: ACTIVECONFIGURATION
Start Level 4 Node: CACHESTATISTICS CACHESTATISTICS End Level 4 Node: CACHESTATISTICS
Start Level 4 Node: COLUMNS COLUMNS End Level 4 Node: COLUMNS
Start Level 4 Node: CONSTRAINTS CONSTRAINTS End Level 4 Node: CONSTRAINTS
Start Level 4 Node: DATASTATISTICS DATASTATISTICS End Level 4 Node: DATASTATISTICS
Start Level 4 Node: DATAVOLUMES DATAVOLUMES End Level 4 Node: DATAVOLUMES
Start Level 4 Node: DBPROCEDURES DBPROCEDURES End Level 4 Node: DBPROCEDURES
Start Level 4 Node: DBPROCPARAMS DBPROCPARAMS End Level 4 Node: DBPROCPARAMS
Start Level 4 Node: DOMAINCONSTRAINTS DOMAINCONSTRAINTS End Level 4 Node: DOMAINCONSTRAINTS
Start Level 4 Node: DOMAINS DOMAINS End Level 4 Node: DOMAINS
Start Level 4 Node: FOREIGNKEYCOLUMNS FOREIGNKEYCOLUMNS End Level 4 Node: FOREIGNKEYCOLUMNS
Start Level 4 Node: FOREIGNKEYS FOREIGNKEYS End Level 4 Node: FOREIGNKEYS
Start Level 4 Node: FUNCTIONS FUNCTIONS End Level 4 Node: FUNCTIONS
Start Level 4 Node: INDEXCOLUMNS INDEXCOLUMNS End Level 4 Node: INDEXCOLUMNS
Start Level 4 Node: INDEXES INDEXES End Level 4 Node: INDEXES
Start Level 4 Node: INSTANCE INSTANCE End Level 4 Node: INSTANCE
Start Level 4 Node: LOCKS LOCKS End Level 4 Node: LOCKS
Start Level 4 Node: LOGQUEUESTATISTICS LOGQUEUESTATISTICS End Level 4 Node: LOGQUEUESTATISTICS
Start Level 4 Node: LOGSTATISTICS LOGSTATISTICS End Level 4 Node: LOGSTATISTICS
Start Level 4 Node: MAPCHARSETS MAPCHARSETS End Level 4 Node: MAPCHARSETS
Start Level 4 Node: ROLEPRIVILEGES ROLEPRIVILEGES End Level 4 Node: ROLEPRIVILEGES
Start Level 4 Node: ROLES ROLES End Level 4 Node: ROLES
Start Level 4 Node: SEQUENCES SEQUENCES End Level 4 Node: SEQUENCES
Start Level 4 Node: SESSION_ROLES SESSION_ROLES End Level 4 Node: SESSION_ROLES
Start Level 4 Node: SESSIONS SESSIONS End Level 4 Node: SESSIONS
Start Level 4 Node: SYNONYMS SYNONYMS End Level 4 Node: SYNONYMS
Start Level 4 Node: TABLEPRIVILEGES TABLEPRIVILEGES End Level 4 Node: TABLEPRIVILEGES
Start Level 4 Node: TABLES TABLES End Level 4 Node: TABLES
Start Level 4 Node: TRIGGERS TRIGGERS End Level 4 Node: TRIGGERS
Start Level 4 Node: USERS USERS End Level 4 Node: USERS
Start Level 4 Node: VERSION VERSION End Level 4 Node: VERSION
Start Level 4 Node: VIEWCOLUMNS VIEWCOLUMNS End Level 4 Node: VIEWCOLUMNS
Start Level 4 Node: VIEWDEFS VIEWDEFS End Level 4 Node: VIEWDEFS
Start Level 4 Node: VIEWS VIEWS End Level 4 Node: VIEWS
Start Level 3 Node: Definitions of the System Tables Definitions of the System Tables End Level 3 Node: Definitions of the System Tables
Start Level 4 Node: ACTIVECONFIGURATION ACTIVECONFIGURATION End Level 4 Node: ACTIVECONFIGURATION
Start Level 4 Node: BACKUPTHREADS BACKUPTHREADS End Level 4 Node: BACKUPTHREADS
Start Level 4 Node: CACHESTATISTICS CACHESTATISTICS End Level 4 Node: CACHESTATISTICS
Start Level 4 Node: CATALOGCACHESTATISTICS CATALOGCACHESTATISTICS End Level 4 Node: CATALOGCACHESTATISTICS
Start Level 4 Node: CLASSCONTAINER_CHAINS CLASSCONTAINER_CHAINS End Level 4 Node: CLASSCONTAINER_CHAINS
Start Level 4 Node: CLASSCONTAINER_KEYS CLASSCONTAINER_KEYS End Level 4 Node: CLASSCONTAINER_KEYS
Start Level 4 Node: CLASSCONTAINER_ROOTS CLASSCONTAINER_ROOTS End Level 4 Node: CLASSCONTAINER_ROOTS
Start Level 4 Node: CLASSCONTAINERS CLASSCONTAINERS End Level 4 Node: CLASSCONTAINERS
Start Level 4 Node: CODEPAGE CODEPAGE End Level 4 Node: CODEPAGE
Start Level 4 Node: COLUMNS COLUMNS End Level 4 Node: COLUMNS
Start Level 4 Node: COMMANDCACHESTATISTICS COMMANDCACHESTATISTICS End Level 4 Node: COMMANDCACHESTATISTICS
Start Level 4 Node: COMMANDCACHESTATISTICSRESET COMMANDCACHESTATISTICSRESET End Level 4 Node: COMMANDCACHESTATISTICSRESET
Start Level 4 Node: COMMANDMONITOR COMMANDMONITOR End Level 4 Node: COMMANDMONITOR
Start Level 4 Node: COMMANDSTATISTICS COMMANDSTATISTICS End Level 4 Node: COMMANDSTATISTICS
Start Level 4 Node: COMMANDSTATISTICSRESET COMMANDSTATISTICSRESET End Level 4 Node: COMMANDSTATISTICSRESET
Start Level 4 Node: CONSISTENTVIEWOPENTRANSACTIONS CONSISTENTVIEWOPENTRANSACTIONS End Level 4 Node: CONSISTENTVIEWOPENTRANSACTIONS
Start Level 4 Node: CONSISTENTVIEWS CONSISTENTVIEWS End Level 4 Node: CONSISTENTVIEWS
Start Level 4 Node: CONSTRAINTCOLUMNS CONSTRAINTCOLUMNS End Level 4 Node: CONSTRAINTCOLUMNS
Start Level 4 Node: CONSTRAINTS CONSTRAINTS End Level 4 Node: CONSTRAINTS
Start Level 4 Node: CONVERTERMAPPING CONVERTERMAPPING End Level 4 Node: CONVERTERMAPPING
Start Level 4 Node: DATACACHE DATACACHE End Level 4 Node: DATACACHE
Start Level 4 Node: DATASOURCEDISTRIBUTIONKEYCOLUMNS DATASOURCEDISTRIBUTIONKEYCOLUMNS End Level 4 Node: DATASOURCEDISTRIBUTIONKEYCOLUMNS
Start Level 4 Node: DATASOURCEPARTIONINGCONDITIONS DATASOURCEPARTIONINGCONDITIONS End Level 4 Node: DATASOURCEPARTIONINGCONDITIONS
Start Level 4 Node: DATASOURCETABLESTATISTICS DATASOURCETABLESTATISTICS End Level 4 Node: DATASOURCETABLESTATISTICS
Start Level 4 Node: DATASTATISTICS DATASTATISTICS End Level 4 Node: DATASTATISTICS
Start Level 4 Node: DATASTATISTICSRESET DATASTATISTICSRESET End Level 4 Node: DATASTATISTICSRESET
Start Level 4 Node: DATAVOLUMES DATAVOLUMES End Level 4 Node: DATAVOLUMES
Start Level 4 Node: DBPROCEDURES DBPROCEDURES End Level 4 Node: DBPROCEDURES
Start Level 4 Node: DBPROCPARAMS DBPROCPARAMS End Level 4 Node: DBPROCPARAMS
Start Level 4 Node: DOMAINCONSTRAINTS DOMAINCONSTRAINTS End Level 4 Node: DOMAINCONSTRAINTS
Start Level 4 Node: DOMAINS DOMAINS End Level 4 Node: DOMAINS
Start Level 4 Node: FILEDIRECTORIES FILEDIRECTORIES End Level 4 Node: FILEDIRECTORIES
Start Level 4 Node: FILES FILES End Level 4 Node: FILES
Start Level 4 Node: FILESYSTEMS FILESYSTEMS End Level 4 Node: FILESYSTEMS
Start Level 4 Node: FOREIGNKEYCOLUMNS FOREIGNKEYCOLUMNS End Level 4 Node: FOREIGNKEYCOLUMNS
Start Level 4 Node: FOREIGNKEYS FOREIGNKEYS End Level 4 Node: FOREIGNKEYS
Start Level 4 Node: FREEBLOCKMANAGERBLOCKSTATES FREEBLOCKMANAGERBLOCKSTATES End Level 4 Node: FREEBLOCKMANAGERBLOCKSTATES
Start Level 4 Node: FREEBLOCKMANAGERSECTIONS FREEBLOCKMANAGERSECTIONS End Level 4 Node: FREEBLOCKMANAGERSECTIONS
Start Level 4 Node: FREEBLOCKMANAGERSTATISTICS FREEBLOCKMANAGERSTATISTICS End Level 4 Node: FREEBLOCKMANAGERSTATISTICS
Start Level 4 Node: FREEBLOCKMANAGERSTATISTICSRESET FREEBLOCKMANAGERSTATISTICSRESET End Level 4 Node: FREEBLOCKMANAGERSTATISTICSRESET
Start Level 4 Node: FUNCTIONS FUNCTIONS End Level 4 Node: FUNCTIONS
Start Level 4 Node: GARBAGECOLLECTOR_STATISTICS GARBAGECOLLECTOR_STATISTICS End Level 4 Node: GARBAGECOLLECTOR_STATISTICS
Start Level 4 Node: HISTORYCLEANUPSTATISTICS HISTORYCLEANUPSTATISTICS End Level 4 Node: HISTORYCLEANUPSTATISTICS
Start Level 4 Node: HISTORYCLEANUPSTATISTICSRESET HISTORYCLEANUPSTATISTICSRESET End Level 4 Node: HISTORYCLEANUPSTATISTICSRESET
Start Level 4 Node: HISTORYINFO HISTORYINFO End Level 4 Node: HISTORYINFO
Start Level 4 Node: HOTSTANDBYCOMPONENT HOTSTANDBYCOMPONENT End Level 4 Node: HOTSTANDBYCOMPONENT
Start Level 4 Node: HOTSTANDBYGROUP HOTSTANDBYGROUP End Level 4 Node: HOTSTANDBYGROUP
Start Level 4 Node: INDEXCOLUMNS INDEXCOLUMNS End Level 4 Node: INDEXCOLUMNS
Start Level 4 Node: INDEXES INDEXES End Level 4 Node: INDEXES
Start Level 4 Node: INDEXSIZE INDEXSIZE End Level 4 Node: INDEXSIZE
Start Level 4 Node: INDEXSTORAGEDETAILS INDEXSTORAGEDETAILS End Level 4 Node: INDEXSTORAGEDETAILS
Start Level 4 Node: INSTANCE INSTANCE End Level 4 Node: INSTANCE
Start Level 4 Node: IOBUFFERCACHES IOBUFFERCACHES End Level 4 Node: IOBUFFERCACHES
Start Level 4 Node: IOJOBS IOJOBS End Level 4 Node: IOJOBS
Start Level 4 Node: IOTHREADSTATISTICS IOTHREADSTATISTICS End Level 4 Node: IOTHREADSTATISTICS
Start Level 4 Node: IOTHREADSTATISTICSRESET IOTHREADSTATISTICSRESET End Level 4 Node: IOTHREADSTATISTICSRESET
Start Level 4 Node: LOCKS LOCKS End Level 4 Node: LOCKS
Start Level 4 Node: LOCKSTATISTICS LOCKSTATISTICS End Level 4 Node: LOCKSTATISTICS
Start Level 4 Node: LOCKSTATISTICSRESET LOCKSTATISTICSRESET End Level 4 Node: LOCKSTATISTICSRESET
Start Level 4 Node: LOCK_WAITS LOCK_WAITS End Level 4 Node: LOCK_WAITS
Start Level 4 Node: LOGINFORMATION LOGINFORMATION End Level 4 Node: LOGINFORMATION
Start Level 4 Node: LOGPARTITIONSTATISTICS LOGPARTITIONSTATISTICS End Level 4 Node: LOGPARTITIONSTATISTICS
Start Level 4 Node: LOGQUEUEINFORMATION LOGQUEUEINFORMATION End Level 4 Node: LOGQUEUEINFORMATION
Start Level 4 Node: LOGQUEUESTATISTICS LOGQUEUESTATISTICS End Level 4 Node: LOGQUEUESTATISTICS
Start Level 4 Node: LOGQUEUESTATISTICSRESET LOGQUEUESTATISTICSRESET End Level 4 Node: LOGQUEUESTATISTICSRESET
Start Level 4 Node: LOGSTATISTICS LOGSTATISTICS End Level 4 Node: LOGSTATISTICS
Start Level 4 Node: LOGSTATISTICSRESET LOGSTATISTICSRESET End Level 4 Node: LOGSTATISTICSRESET
Start Level 4 Node: LOGVOLUMES LOGVOLUMES End Level 4 Node: LOGVOLUMES
Start Level 4 Node: MACHINECONFIGURATION MACHINECONFIGURATION End Level 4 Node: MACHINECONFIGURATION
Start Level 4 Node: MACHINEUTILIZATION MACHINEUTILIZATION End Level 4 Node: MACHINEUTILIZATION
Start Level 4 Node: MAPCHARSETS MAPCHARSETS End Level 4 Node: MAPCHARSETS
Start Level 4 Node: MAPSCHEMANAMES MAPSCHEMANAMES End Level 4 Node: MAPSCHEMANAMES
Start Level 4 Node: MEMORYALLOCATORDETAILS MEMORYALLOCATORDETAILS End Level 4 Node: MEMORYALLOCATORDETAILS
Start Level 4 Node: MEMORYALLOCATORSTATISTICS MEMORYALLOCATORSTATISTICS End Level 4 Node: MEMORYALLOCATORSTATISTICS
Start Level 4 Node: MONITOR MONITOR End Level 4 Node: MONITOR
Start Level 4 Node: MONITOR_LOAD MONITOR_LOAD End Level 4 Node: MONITOR_LOAD
Start Level 4 Node: MONITOR_LOB MONITOR_LOB End Level 4 Node: MONITOR_LOB
Start Level 4 Node: MONITOR_LOCK MONITOR_LOCK End Level 4 Node: MONITOR_LOCK
Start Level 4 Node: MONITOR_OMS MONITOR_OMS End Level 4 Node: MONITOR_OMS
Start Level 4 Node: MONITOR_PAGES MONITOR_PAGES End Level 4 Node: MONITOR_PAGES
Start Level 4 Node: MONITOR_REWRITE MONITOR_REWRITE End Level 4 Node: MONITOR_REWRITE
Start Level 4 Node: MONITOR_ROW MONITOR_ROW End Level 4 Node: MONITOR_ROW
Start Level 4 Node: MONITOR_TRANS MONITOR_TRANS End Level 4 Node: MONITOR_TRANS
Start Level 4 Node: MULTIVERSIONREADSTATISTICS MULTIVERSIONREADSTATISTICS End Level 4 Node: MULTIVERSIONREADSTATISTICS
Start Level 4 Node: MULTIVERSIONREADSTATISTICSRESET MULTIVERSIONREADSTATISTICSRESET End Level 4 Node: MULTIVERSIONREADSTATISTICSRESET
Start Level 4 Node: OBJECTLOCKS OBJECTLOCKS End Level 4 Node: OBJECTLOCKS
Start Level 4 Node: OMSDISCLOSEDCLASSES OMSDISCLOSEDCLASSES End Level 4 Node: OMSDISCLOSEDCLASSES
Start Level 4 Node: OMSDISCLOSEDCLASSMEMBERS OMSDISCLOSEDCLASSMEMBERS End Level 4 Node: OMSDISCLOSEDCLASSMEMBERS
Start Level 4 Node: OMSLOCKS OMSLOCKS End Level 4 Node: OMSLOCKS
Start Level 4 Node: OMSPROCEDURESTATISTICS OMSPROCEDURESTATISTICS End Level 4 Node: OMSPROCEDURESTATISTICS
Start Level 4 Node: OMSVERSIONS OMSVERSIONS End Level 4 Node: OMSVERSIONS
Start Level 4 Node: OMS_HEAP_STATISTICS OMS_HEAP_STATISTICS End Level 4 Node: OMS_HEAP_STATISTICS
Start Level 4 Node: OMS_VERSIONS OMS_VERSIONS End Level 4 Node: OMS_VERSIONS
Start Level 4 Node: OPTIMIZERINFORMATION OPTIMIZERINFORMATION End Level 4 Node: OPTIMIZERINFORMATION
Start Level 4 Node: PACKAGES PACKAGES End Level 4 Node: PACKAGES
Start Level 4 Node: PAGELOCKS PAGELOCKS End Level 4 Node: PAGELOCKS
Start Level 4 Node: POSTUPGRADECHECKLIST POSTUPGRADECHECKLIST End Level 4 Node: POSTUPGRADECHECKLIST
Start Level 4 Node: QUERYREWRITERULES QUERYREWRITERULES End Level 4 Node: QUERYREWRITERULES
Start Level 4 Node: REGIONINFORMATION REGIONINFORMATION End Level 4 Node: REGIONINFORMATION
Start Level 4 Node: REGIONSTATISTICS REGIONSTATISTICS End Level 4 Node: REGIONSTATISTICS
Start Level 4 Node: REGIONSTATISTICSRESET REGIONSTATISTICSRESET End Level 4 Node: REGIONSTATISTICSRESET
Start Level 4 Node: RESTARTINFORMATION RESTARTINFORMATION End Level 4 Node: RESTARTINFORMATION
Start Level 4 Node: ROLEPRIVILEGES ROLEPRIVILEGES End Level 4 Node: ROLEPRIVILEGES
Start Level 4 Node: ROLES ROLES End Level 4 Node: ROLES
Start Level 4 Node: SCHEMAPRIVILEGES SCHEMAPRIVILEGES End Level 4 Node: SCHEMAPRIVILEGES
Start Level 4 Node: SCHEMAS SCHEMAS End Level 4 Node: SCHEMAS
Start Level 4 Node: SCHEMASIZE SCHEMASIZE End Level 4 Node: SCHEMASIZE
Start Level 4 Node: SEQUENCEPRIVILEGES SEQUENCEPRIVILEGES End Level 4 Node: SEQUENCEPRIVILEGES
Start Level 4 Node: SEQUENCES SEQUENCES End Level 4 Node: SEQUENCES
Start Level 4 Node: SERVERTASKS SERVERTASKS End Level 4 Node: SERVERTASKS
Start Level 4 Node: SESSION_ROLES SESSION_ROLES End Level 4 Node: SESSION_ROLES
Start Level 4 Node: SESSIONS SESSIONS End Level 4 Node: SESSIONS
Start Level 4 Node: SHARELOCKINFORMATION SHARELOCKINFORMATION End Level 4 Node: SHARELOCKINFORMATION
Start Level 4 Node: SHARELOCKSTATISTICS SHARELOCKSTATISTICS End Level 4 Node: SHARELOCKSTATISTICS
Start Level 4 Node: SHARELOCKSTATISTICSRESET SHARELOCKSTATISTICSRESET End Level 4 Node: SHARELOCKSTATISTICSRESET
Start Level 4 Node: SHARELOCKWAITINGTASKS SHARELOCKWAITINGTASKS End Level 4 Node: SHARELOCKWAITINGTASKS
Start Level 4 Node: SNAPSHOTS SNAPSHOTS End Level 4 Node: SNAPSHOTS
Start Level 4 Node: SPINLOCKPOOLSTATISTICS SPINLOCKPOOLSTATISTICS End Level 4 Node: SPINLOCKPOOLSTATISTICS
Start Level 4 Node: SPINLOCKPOOLSTATISTICSRESET SPINLOCKPOOLSTATISTICSRESET End Level 4 Node: SPINLOCKPOOLSTATISTICSRESET
Start Level 4 Node: SPINLOCKSTATISTICS SPINLOCKSTATISTICS End Level 4 Node: SPINLOCKSTATISTICS
Start Level 4 Node: SPINLOCKSTATISTICSRESET SPINLOCKSTATISTICSRESET End Level 4 Node: SPINLOCKSTATISTICSRESET
Start Level 4 Node: SYNONYMS SYNONYMS End Level 4 Node: SYNONYMS
Start Level 4 Node: SYSCHECKSTATISTICSDETAILS SYSCHECKSTATISTICSDETAILS End Level 4 Node: SYSCHECKSTATISTICSDETAILS
Start Level 4 Node: SYSCHECKSTATISTICSLOG SYSCHECKSTATISTICSLOG End Level 4 Node: SYSCHECKSTATISTICSLOG
Start Level 4 Node: SYSTEMTRIGGERS SYSTEMTRIGGERS End Level 4 Node: SYSTEMTRIGGERS
Start Level 4 Node: SYSUPDATECOUNTERWANTED SYSUPDATECOUNTERWANTED End Level 4 Node: SYSUPDATECOUNTERWANTED
Start Level 4 Node: SYSUPDSTATLOG SYSUPDSTATLOG End Level 4 Node: SYSUPDSTATLOG
Start Level 4 Node: SYSUPDSTATWANTED SYSUPDSTATWANTED End Level 4 Node: SYSUPDSTATWANTED
Start Level 4 Node: SYSUPGRADEHISTORY SYSUPGRADEHISTORY End Level 4 Node: SYSUPGRADEHISTORY
Start Level 4 Node: TABLEPRIVILEGES TABLEPRIVILEGES End Level 4 Node: TABLEPRIVILEGES
Start Level 4 Node: TABLES TABLES End Level 4 Node: TABLES
Start Level 4 Node: TABLESIZE TABLESIZE End Level 4 Node: TABLESIZE
Start Level 4 Node: TABLESTORAGEDETAILS TABLESTORAGEDETAILS End Level 4 Node: TABLESTORAGEDETAILS
Start Level 4 Node: TASKGROUPSTATISTICS TASKGROUPSTATISTICS End Level 4 Node: TASKGROUPSTATISTICS
Start Level 4 Node: TASKGROUPSTATISTICSRESET TASKGROUPSTATISTICSRESET End Level 4 Node: TASKGROUPSTATISTICSRESET
Start Level 4 Node: TASKLOADBALANCINGINFORMATION TASKLOADBALANCINGINFORMATION End Level 4 Node: TASKLOADBALANCINGINFORMATION
Start Level 4 Node: TASKLOADBALANCINGTASKGROUPSTATES TASKLOADBALANCINGTASKGROUPSTATES End Level 4 Node: TASKLOADBALANCINGTASKGROUPSTATES
Start Level 4 Node: TASKLOADBALANCINGTASKMOVES TASKLOADBALANCINGTASKMOVES End Level 4 Node: TASKLOADBALANCINGTASKMOVES
Start Level 4 Node: TRANSACTIONHISTORY TRANSACTIONHISTORY End Level 4 Node: TRANSACTIONHISTORY
Start Level 4 Node: TRANSACTIONS TRANSACTIONS End Level 4 Node: TRANSACTIONS
Start Level 4 Node: TRANSFORMATIONMODEL TRANSFORMATIONMODEL End Level 4 Node: TRANSFORMATIONMODEL
Start Level 4 Node: TRANSFORMATIONMONITOR TRANSFORMATIONMONITOR End Level 4 Node: TRANSFORMATIONMONITOR
Start Level 4 Node: TRANSFORMATIONPACKAGES TRANSFORMATIONPACKAGES End Level 4 Node: TRANSFORMATIONPACKAGES
Start Level 4 Node: TRANSFORMATIONRESOURCES TRANSFORMATIONRESOURCES End Level 4 Node: TRANSFORMATIONRESOURCES
Start Level 4 Node: TRANSFORMATIONSTATISTICS TRANSFORMATIONSTATISTICS End Level 4 Node: TRANSFORMATIONSTATISTICS
Start Level 4 Node: TRANSFORMATIONSTEPS TRANSFORMATIONSTEPS End Level 4 Node: TRANSFORMATIONSTEPS
Start Level 4 Node: TRIGGERS TRIGGERS End Level 4 Node: TRIGGERS
Start Level 4 Node: UNLOADEDSTATEMENTS UNLOADEDSTATEMENTS End Level 4 Node: UNLOADEDSTATEMENTS
Start Level 4 Node: USERS USERS End Level 4 Node: USERS
Start Level 4 Node: VERSION VERSION End Level 4 Node: VERSION
Start Level 4 Node: VIEWCOLUMNS VIEWCOLUMNS End Level 4 Node: VIEWCOLUMNS
Start Level 4 Node: VIEWDEFS VIEWDEFS End Level 4 Node: VIEWDEFS
Start Level 4 Node: VIEWS VIEWS End Level 4 Node: VIEWS
Start Level 4 Node: VIEWTABLES VIEWTABLES End Level 4 Node: VIEWTABLES
Start Level 2 Node: Restrictions for SQL Statements Restrictions for SQL Statements End Level 2 Node: Restrictions for SQL Statements
Start Level 2 Node: SQL Mode ORACLE SQL Mode ORACLE End Level 2 Node: SQL Mode ORACLE
Start Level 3 Node: SQL Syntax Elements: Differences SQL Syntax Elements: Differences End Level 3 Node: SQL Syntax Elements: Differences
Start Level 4 Node: Database Object Database Object End Level 4 Node: Database Object
Start Level 4 Node: Name Name End Level 4 Node: Name
Start Level 4 Node: Namespace Namespace End Level 4 Node: Namespace
Start Level 4 Node: Access to Objects Access to Objects End Level 4 Node: Access to Objects
Start Level 4 Node: Integer Integer End Level 4 Node: Integer
Start Level 4 Node: Number Number End Level 4 Node: Number
Start Level 4 Node: Data Type Data Type End Level 4 Node: Data Type
Start Level 4 Node: Pseudo Column Pseudo Column End Level 4 Node: Pseudo Column
Start Level 4 Node: Operator Operator End Level 4 Node: Operator
Start Level 4 Node: Function Function End Level 4 Node: Function
Start Level 4 Node: Format Format End Level 4 Node: Format
Start Level 3 Node: SQL Statements: Differences SQL Statements: Differences End Level 3 Node: SQL Statements: Differences
Start Level 4 Node: alter_cluster_statement alter_cluster_statement End Level 4 Node: alter_cluster_statement
Start Level 4 Node: alter_database_statement alter_database_statement End Level 4 Node: alter_database_statement
Start Level 4 Node: alter_function_statement alter_function_statement End Level 4 Node: alter_function_statement
Start Level 4 Node: alter_index_statement alter_index_statement End Level 4 Node: alter_index_statement
Start Level 4 Node: alter_package_statement alter_package_statement End Level 4 Node: alter_package_statement
Start Level 4 Node: alter_procedure_statement alter_procedure_statement End Level 4 Node: alter_procedure_statement
Start Level 4 Node: alter_profile_statement alter_profile_statement End Level 4 Node: alter_profile_statement
Start Level 4 Node: alter_resource_cost_statement alter_resource_cost_statement End Level 4 Node: alter_resource_cost_statement
Start Level 4 Node: alter_role_statement alter_role_statement End Level 4 Node: alter_role_statement
Start Level 4 Node: alter_rollback_segment_statement alter_rollback_segment_statement End Level 4 Node: alter_rollback_segment_statement
Start Level 4 Node: alter_sequence_statement alter_sequence_statement End Level 4 Node: alter_sequence_statement
Start Level 4 Node: alter_snapshot_log_statement alter_snapshot_log_statement End Level 4 Node: alter_snapshot_log_statement
Start Level 4 Node: alter_snapshot_statement alter_snapshot_statement End Level 4 Node: alter_snapshot_statement
Start Level 4 Node: alter_system_statement alter_system_statement End Level 4 Node: alter_system_statement
Start Level 4 Node: alter_table_statement alter_table_statement End Level 4 Node: alter_table_statement
Start Level 4 Node: alter_tablespace_statement alter_tablespace_statement End Level 4 Node: alter_tablespace_statement
Start Level 4 Node: alter_trigger_statement alter_trigger_statement End Level 4 Node: alter_trigger_statement
Start Level 4 Node: alter_user_statement alter_user_statement End Level 4 Node: alter_user_statement
Start Level 4 Node: alter_view_statement alter_view_statement End Level 4 Node: alter_view_statement
Start Level 4 Node: analyze_statement analyze_statement End Level 4 Node: analyze_statement
Start Level 4 Node: audit_statement audit_statement End Level 4 Node: audit_statement
Start Level 4 Node: commit_statement commit_statement End Level 4 Node: commit_statement
Start Level 4 Node: constraint_clause constraint_clause End Level 4 Node: constraint_clause
Start Level 4 Node: create_cluster_statement create_cluster_statement End Level 4 Node: create_cluster_statement
Start Level 4 Node: create_controlfile_statement create_controlfile_statement End Level 4 Node: create_controlfile_statement
Start Level 4 Node: create_database_link_statement create_database_link_statement End Level 4 Node: create_database_link_statement
Start Level 4 Node: create_database_statement create_database_statement End Level 4 Node: create_database_statement
Start Level 4 Node: create_index_statement create_index_statement End Level 4 Node: create_index_statement
Start Level 4 Node: create_package_body_statement create_package_body_statement End Level 4 Node: create_package_body_statement
Start Level 4 Node: create_package_statement create_package_statement End Level 4 Node: create_package_statement
Start Level 4 Node: create_procedure_statement create_procedure_statement End Level 4 Node: create_procedure_statement
Start Level 4 Node: create_profile_statement create_profile_statement End Level 4 Node: create_profile_statement
Start Level 4 Node: create_rollback_segment_statement create_rollback_segment_statement End Level 4 Node: create_rollback_segment_statement
Start Level 4 Node: create_sequence_statement create_sequence_statement End Level 4 Node: create_sequence_statement
Start Level 4 Node: create_snapshot_log_statement create_snapshot_log_statement End Level 4 Node: create_snapshot_log_statement
Start Level 4 Node: create_snapshot_statement create_snapshot_statement End Level 4 Node: create_snapshot_statement
Start Level 4 Node: create_synonym_statement create_synonym_statement End Level 4 Node: create_synonym_statement
Start Level 4 Node: create_table_statement create_table_statement End Level 4 Node: create_table_statement
Start Level 4 Node: create_tablespace_statement create_tablespace_statement End Level 4 Node: create_tablespace_statement
Start Level 4 Node: create_trigger_statement create_trigger_statement End Level 4 Node: create_trigger_statement
Start Level 4 Node: create_user_statement create_user_statement End Level 4 Node: create_user_statement
Start Level 4 Node: create_view_statement create_view_statement End Level 4 Node: create_view_statement
Start Level 4 Node: declare_statement declare_statement End Level 4 Node: declare_statement
Start Level 4 Node: declare_table_statement declare_table_statement End Level 4 Node: declare_table_statement
Start Level 4 Node: delete_statement delete_statement End Level 4 Node: delete_statement
Start Level 4 Node: describe_statement describe_statement End Level 4 Node: describe_statement
Start Level 4 Node: drop_cluster_statement drop_cluster_statement End Level 4 Node: drop_cluster_statement
Start Level 4 Node: drop_database_link_statement drop_database_link_statement End Level 4 Node: drop_database_link_statement
Start Level 4 Node: drop_index_statement drop_index_statement End Level 4 Node: drop_index_statement
Start Level 4 Node: drop_procedure_statement drop_procedure_statement End Level 4 Node: drop_procedure_statement
Start Level 4 Node: drop_profile_statement drop_profile_statement End Level 4 Node: drop_profile_statement
Start Level 4 Node: drop_rollback_segment_statement drop_rollback_segment_statement End Level 4 Node: drop_rollback_segment_statement
Start Level 4 Node: drop_snapshot_log_statement drop_snapshot_log_statement End Level 4 Node: drop_snapshot_log_statement
Start Level 4 Node: drop_snapshot_statement drop_snapshot_statement End Level 4 Node: drop_snapshot_statement
Start Level 4 Node: drop_table_statement drop_table_statement End Level 4 Node: drop_table_statement
Start Level 4 Node: drop_tablespace_statement drop_tablespace_statement End Level 4 Node: drop_tablespace_statement
Start Level 4 Node: drop_trigger_statement drop_trigger_statement End Level 4 Node: drop_trigger_statement
Start Level 4 Node: drop_view_statement drop_view_statement End Level 4 Node: drop_view_statement
Start Level 4 Node: execute_statement execute_statement End Level 4 Node: execute_statement
Start Level 4 Node: explain_plan_statement explain_plan_statement End Level 4 Node: explain_plan_statement
Start Level 4 Node: grant_statement grant_statement End Level 4 Node: grant_statement
Start Level 4 Node: insert_statement insert_statement End Level 4 Node: insert_statement
Start Level 4 Node: lock_table_statement lock_table_statement End Level 4 Node: lock_table_statement
Start Level 4 Node: noaudit_statement noaudit_statement End Level 4 Node: noaudit_statement
Start Level 4 Node: rename_statement rename_statement End Level 4 Node: rename_statement
Start Level 4 Node: revoke_statement revoke_statement End Level 4 Node: revoke_statement
Start Level 4 Node: rollback_statement rollback_statement End Level 4 Node: rollback_statement
Start Level 4 Node: select_statement select_statement End Level 4 Node: select_statement
Start Level 4 Node: set_transaction_statement set_transaction_statement End Level 4 Node: set_transaction_statement
Start Level 4 Node: truncate_statement truncate_statement End Level 4 Node: truncate_statement
Start Level 4 Node: update_statement update_statement End Level 4 Node: update_statement
Start Level 3 Node: Errors: Differences Errors: Differences End Level 3 Node: Errors: Differences


Number Generator for a Single Table Column - SAP Documentation

Background documentation Number Generator for a Single Table Column

You can use the DEFAULT specification SERIAL(n) to create a number generator (automatically generated sequence of numbers) for a table column. This is commonly used for generating a primary key, for example.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Creating a Number Generator

Create the pers3 table with the DEFAULT specification SERIAL(n). If you use the keyword SERIAL without specifying a number, the default value for the start of the number generator is 1. If you want to start the number generator with the number n, you have to enter the number n explicitly after the keyword SERIAL: SERIAL(n).

CREATE TABLE hotel.pers3

  (pno FIXED(10) DEFAULT SERIAL PRIMARY KEY, name CHAR (20))

or

CREATE TABLE hotel.pers3

  (pno SERIAL PRIMARY KEY, name CHAR (20))

As the data type SERIAL is displayed in the form of FIXED(10) DEFAULT SERIAL, both CREATE TABLE statements return the same definition for the pers3 table. The first value generated by the number generator is the number 1.

See also: SQL Reference Manual, DEFAULT Specification (default_spec), Data type (data_type)

Using the Number Generator

You can use the number generator in the pno column in your application. You do not need to enter a value for the SERIAL column in INSERT statements; this is generated by the number generator.

The first value generated by the number generator in the example above is a 1. The value in the SERIAL column increases by 1 with each additional insertion of a value into the table.

INSERT hotel.pers3 (name) VALUES ('Baker')

//

INSERT hotel.pers3 (name) VALUES ('Miller')

//

SELECT * FROM hotel.pers3

Result

PNO | NAME
1 | Baker
2 | Miller

A column with the DEFAULT specification SERIAL cannot be changed.

A column with the DEFAULT specification SERIAL can also be a foreign key column. Such columns are actually ideally suited to this purpose as their values cannot be changed and are only used in the application for the purposes specified in the application logic applied to the column.

Displaying the Current Value of the Number Generator

You can use the DUAL table, which is automatically generated by the database system, to display the current value of the number generator. The DUAL table can be used by all database users. As the DUAL table has only one row, you can use it to display the value of the number generator using a SELECT statement.

You can query the current value of the number generator using <table_name>.CURRVAL where <table_name> is the name of the table that contains the DEFAULT specification SERIAL.

SELECT hotel.pers3.CURRVAL FROM dual

Result

 | EXPRESSION1
1 | 2

More Information

Number Generators for Tables

More examples for Data Definition


Deleting Database Users - SAP Documentation

Procedure documentation Deleting Database Users

When you delete a database user, all schemas, synonyms, and tables of that user are also deleted, along with all related indexes, privileges, view tables, and so on.

Note though that deleting a user of the DBA user class does not affect any database users created by this user. The database system administrator becomes the new owner of these database users.

Prerequisites

  • The database is in the ONLINE operational state.

  • You are logged on to the database as database system administrator or as a database user of the DBA user class and are the owner of the database user you want to delete.

Procedure

This function has not been implemented in Database Studio yet. Use the corresponding SQL statement instead.

More information:

  • Entering and Executing SQL Statements

  • SQL Reference Manual, SQL Statements Overview

More Information

Database Administration, Database Users


-3014: Invalid end of SQL statement - SAP Documentation

Background documentation -3014: Invalid end of SQL statement

Explanation

According to the syntax, the specified SQL statement is not allowed in the SQL mode which is currently valid.

User Response

The error position shows the location where the specified SQL statement deviates from the permitted syntax.


-25327: Error(s) exporting record <record_no>; start position of incorrect record in data file:<position> - SAP Documentation

Background documentation -25327: Error(s) exporting record <record_no>; start position of incorrect record in data file:<position>

Explanation

Error executing the Loader command for exporting data.The data record included in the error message was exported incorrectly.The position specified is only relevant for binary data streams because they state the exact position of the incorrect data record in the data stream. For text data streams, the position is always 1.This error message was preceded by other error messages, which give a more detailed description of the error and the incorrect values in the data record.This error does not cause the command to terminate if it was executed with error tolerance greater than 1.

User Response

Check the incorrect data records.If the command terminates, correct the statement and re-execute it.


-3004: Invalid host file sequence - SAP Documentation

Background documentation -3004: Invalid host file sequence

Explanation

This error can occur if you import a backup from various data carriers, one after the other.The data carrier specified has no content that matches the command specified.The error message contains an additional error description which must be interpreted according to the operating system being used.

User Response

To resume the action, specify a suitable data carrier or a suitable backup tool.


-2028: Sequence <sequence_name> exhausted - SAP Documentation

Background documentation -2028: Sequence <sequence_name> exhausted

Structure

Explanation

You tried to find out the next value of the specified sequence with <sequence_name>.NEXTVAL. This is impossible for one of the following reasons:

  1. The next value would not fit into the data type provided for sequences.

  2. The next value would be larger than the value defined by MAXVALUE in the CREATE SEQUENCE statement, and NOCYCLE was defined implicitly or explicitly.

  3. The next value would be smaller than the value defined by MINVALUE in the CREATE SEQUENCE statement, and NOCYCLE was defined implicitly or explicitly.

User Response

  1. Specify the desired value explicitly.

  2. Delete and create the sequence again. By deleting and recreating the sequence you ensure that the values of the sequence are created cyclically or that a larger MAXVALUE or smaller MINVALUE is used. Define START WITH with the last assigned value if necessary. You may now use the SQL statement.


-28810: Duplicate hash key - SAP Documentation

Background documentation -28810: Duplicate hash key

Explanation

A duplicate entry was found in the global container directory. This is an internal liveCache error that cannot be caused by incorrect handling of the OMS API.

User Response

Contact Support.


-5010: Missing value specification - SAP Documentation

Background documentation -5010: Missing value specification

Explanation

A value is missing, or the specified value is not allowed.

User Response

Correct the value specified in the SQL statement, or insert a value into the SQL statement.


-25371: Error converting data from <source_encoding> to <target_encoding>. Source contains invalid characters or character sequences - SAP Documentation

Background documentation -25371: Error converting data from <source_encoding> to <target_encoding>. Source contains invalid characters or character sequences

Explanation

Converting data with <source_encoding> encoding into data with the <target_encoding> encoding cannot be done. See the log file for additional messages describing the cause of the error.

User Response

Correct the cause of the error and re-execute the command.


-8051: No snapshot available - SAP Documentation

Background documentation -8051: No snapshot available

Explanation

You tried to reset the data area to an earlier state (snapshot), although a snapshot was not created first.

User Response

You can only use this command if a snapshot already exists.


-123: No more log to save - SAP Documentation

Background documentation -123: No more log to save

Explanation

You tried to save the log area. This is neither possible nor necessary as the database system wrote no entries, or very few entries, to the log area since the log area was last saved.

User Response

No user action is required.


SQL Editor - SAP Documentation

Background documentation SQL Editor

In the SQL Editor, you can enter, execute, and save SQL statements.

More information: Entering and Executing SQL Statements

The following rules apply:

  • You can write SQL syntax elements in either upper or lower case.

  • You can add any number of spaces and line breaks.

  • To force the system to take the case into account for database object identifiers (such as table names) and values in the form of literals, enter the identifier between single quotation marks: '<identifier>'.

  • To comment out a row, use // or -- at the start of the row.

  • To separate several SQL statements from one another, enter a commented-out separator line.

If you press the key combination CTRL+Space after a word in the SQL editor, a list is displayed containing default values for this word. You must have already defined a corresponding template for this word. More information: Configuring Database Studio, Templates section.

SQL Editor: SQL Tab Page, Context Menu

Command

Description

Load

Open a saved SQL statement from a repository or file

Save

Save an SQL statement in a repository or file

Save As ...

Save an SQL statement under a different name

Explain SQL

Execute EXPLAIN statement for the SQL statement

The system displays the result of the EXPLAIN statement in the Explain view.

See: SQL Optimizer, Analyzing Search Strategies Using the EXPLAIN Statement

Execute SQL

The system executes the SQL statement.

  • If you enter multiple SQL statements separated by comment characters, the system executes all the entered SQL statements.

  • If you selected an SQL statement in the SQL editor, the system executes only the selected SQL statement.

Prepare Statement

Testing Prepared Statements

Choose Connection

Select connection to database:

  • Landscape

  • Database computer

  • Database name

  • User name

Clear

Clear input field

Format

Format input

SQL Editor: Result Tab Page, Context Menu
Command | Description
Go to Row ... | Go to row ...
Export Cell to ... | Export cell to ...
Export Result ... | Export result to a file
Filters | Define filters for columns
Edit | Edit a data record

In the status window, the system displays messages regarding SQL statement execution.

As AUTOCOMMIT mode, SQL mode, and isolation level, the system uses the values that you specified when you configured Database Studio. More information: Configuring Database Studio

To use other settings in the SQL editor that is currently open, change the setting on the Properties tab page (if this tab page is not open, choose [image] Window [image] Show View [image] Properties [image] ):

AUTOCOMMIT Mode
ON | The database system performs all the necessary COMMIT actions automatically.
OFF | You have to enter COMMIT commands explicitly.
SQL Modes
Name | Description
INTERNAL | SAP MaxDB SQL definition
ORACLE | ORACLE 7 SQL definition

For more information about the isolation level: Concepts of the Database System, Isolation Level

More Information

SQL Reference Manual

SQL Tutorial


-23056: User is exclusive - SAP Documentation

Background documentation -23056: User is exclusive

Explanation

An attempt has been made to connect to the database instance several times using an exclusive user.

User Response

If the user really needs to connect to the database more than once, use the SQL Studio to change the user to a not-exclusive user.


Saving SQL Statements or Definitions of Database Objects in a Repository - SAP Documentation

Procedure documentation Saving SQL Statements or Definitions of Database Objects in a Repository

You can save SQL statements and definitions of database objects (such as table definitions) in a repository and reuse them later.

Prerequisites

You have fulfilled one of the following prerequisites:

  • You have entered an SQL statement in the SQL Editor.

    More information: Working with SQL Statements: Overview

  • You have created a database object and displayed the definition of the database object using the Export SQL command in the context menu of the relevant editor.

Procedure

  1. In the context menu of the SQL statement or database object, choose Save as...

    Note Note

    If Save as... is not displayed in the context menu, first choose Edit.

    End of the note.

  2. Select the location to which you want to save the SQL statement or definition of a database object.

    Database Studio: Repositories

    Property

    Description

    My Objects

    Objects in the logged-on user's private branch of the repository

    Shared Objects

    Objects in the public branch of the repository

    Local User Folder

    Local, user-specific folder in the file system

    Example Example

    <user_home>\sdb\My Local Folder

    End of the example.

    To change the local user folder, choose [image] Window [image] Preferences [image] Database Studio [image] Repository [image] and enter the new location.

    Packages

    Loader directory, used for exporting and importing data

    More information: Exporting and Importing: Overview

More Information

Editing Objects in a Repository

Concepts of the Database System, Repositories


-25201: Column '<column_name>' - INTEGER field: 1, 2 or 4 bytes long (double if HEX) - SAP Documentation

Background documentation -25201: Column '<column_name>' - INTEGER field: 1, 2 or 4 bytes long (double if HEX)

Explanation

The command to export or import data contains an error.An explicit column description contains a file field of type INTEGER. Its length does not correspond to the length mentioned here.

User Response

Correct the position specification and re-execute the command.


-25004: A connection to the database could not be established: <error_code> = <error_text> - SAP Documentation

Background documentation -25004: A connection to the database could not be established: <error_code> = <error_text>

Explanation

The system cannot open a connection to the database instance.

User Response

Use the SQL error text to determine why the connection failed. Fix the cause of the problem, and restart the Loader.


-5015: Missing keyword - SAP Documentation

Background documentation -5015: Missing keyword

Explanation

The SQL statement contains a keyword that is incorrect or that is not known in the current SQL mode; or a keyword is missing.

User Response

Correct the SQL statement according to the syntax description and the current SQL mode by using one of the specified keywords.


Database Analyzer - SAP Documentation

Component documentation Database Analyzer

You can use SAP MaxDB Database Analyzer to analyze the performance of databases and identify problems in the following areas:

  • Database configuration (caches, parameters)

  • Synchronization (locks, critical sections, heap)

  • Processing of SQL statements (for example, search strategies, indexes, optimization statistics)

  • Hardware configuration

You can analyze all database types and versions and also access databases on remote computers.

You can use Database Analyzer on all operating systems supported by the database system. It is a component of the SAP MaxDB software.

Integration

Database Analyzer is integrated into Database Studio and CCMS. However, you can also call Database Analyzer directly from the command line or from Database Manager CLI program.

On Microsoft Windows, Database Analyzer uses MDAC (Microsoft Data Access Components). You need MDAC Version 2.7 or higher.

Features

  • Calling Database Analyzer

  • Database Analyzer analyzes the performance of the database at regular intervals.

    The configuration file determines how Database Analyzer collects performance-relevant data.

    More information: Database Analyzer Configuration File

  • Database Analyzer writes the results of the analysis to log files.

    More information: Database Analyzer Log Files

    In the log files, pre-defined messages are used.

    More information: Database Analyzer Messages

More Information

SAP Note 530394 (Bottleneck Analysis with Database Analyzer)


-25301: Invalid input for date or time column: <input_value> - SAP Documentation

Background documentation -25301: Invalid input for date or time column: <input_value>

Explanation

The command to import or update data contains an error.When you enter values in columns of data type DATE or TIME, there are various formats you can use (INTERNAL, EUR, ISO, USA, JIS). The Loader uses these specifications to convert values to the internal database format for the respective data type when inserting the values.This error occurs if a value you have specified is supposed to be inserted into a column of data type DATE or TIME and cannot be converted into the correct internal database format.

User Response

Correct the values and re-execute the command.


EvtDispMgm: Managing the Event Dispatcher - SAP Documentation

Background documentation EvtDispMgm: Managing the Event Dispatcher

Operators, who have been assigned the EvtDispMgm server permission, can execute the following DBM commands:

DBM Command | Description
auto_recreate_bad_index | Recreating bad indexes automatically
auto_update_statistics | Updating the optimizer statistics automatically


Importing Data and/or Information from the Database Catalog - SAP Documentation

Procedure documentation Importing Data and/or Information from the Database Catalog

Import Types

You can choose between different import types:

  • Import Database

  • Import User

  • Import Schema

  • Import Table

This graphic is explained in the accompanying text.

Import Types

Default Export Directories of Database Studio

  • Microsoft Windows:

    <user_home>\sdb\loader\packages\export\<computer_name>\<database_name>\<time_stamp>

    Example Example

    C:\Users\anna\sdb\loader\packages\export\PARMA\DEMODB\20061220093349

    End of the example.

  • Unix and Linux:

    <user_home>/.sdb/loader/packages/export/<computer_name>/<database_name>/<time_stamp>

Procedure

Importing a Database
Prerequisites

  • The database is in the ONLINE operational state.

  • The data and/or the information from the database catalog was exported using the Export Database function in Database Studio or using transport mode in the Loader. More information: Loader, Transport Mode

  • You are logged in as the database system administrator.

Procedure

  1. In the explorer tree, select the database into which you want to import the table.

  2. In the context menu of the database, choose [image] Export/Import [image] Import [image] .

  3. Select Import Database.

  4. Enter the package file directory that contains the data or the information from the database catalog that is to be imported.

  5. Select the package.

    Choose whether you want to import the data (application data), the information from the database catalog, or both.

  6. To start the import, choose Finish.

Result

After the import, the passwords of all imported users are reset to INITIAL. Assign new passwords after the import.

Importing the Database Objects of Users
Prerequisites

  • The database is in the ONLINE operational state.

  • The data and/or the information from the database catalog was exported using the Export User function in Database Studio or transport mode in the Loader. More information: Loader, Transport Mode

  • You are logged in as a database user who is to be the owner of the imported database objects.

Procedure

  1. In the explorer tree, select the database into which you want to import the table.

  2. In the context menu of the database, choose [image] Export/Import [image] Import [image] .

  3. Select Import User.

  4. Enter the package file directory that contains the data or the information from the database catalog that is to be imported.

  5. Select the package.

    Choose whether you want to import the application data (data), the database catalog (table definitions), or both.

  6. To start the import, choose Finish.

Result

The tables and/or the information from the database catalog is imported into the target database and now belongs to the logged in user.

Importing Schemas
Prerequisites

  • The database is in the ONLINE operational state.

  • The data and/or the information from the database catalog was exported using the Export Schema function in Database Studio or using transport mode in the Loader. More information: Loader, Transport Mode

  • In the source database, you are logged in as the schema owner.

Procedure

  1. In the explorer tree, select the database into which you want to import the table.

  2. In the context menu of the database, choose [image] Export/Import [image] Import [image] .

  3. Select Import Schema.

  4. Enter the package file directory that contains the data or the information from the database catalog that is to be imported.

  5. Enter the name of the target schema.

    Select the package.

    Choose whether you want to import the application data (data), information from the database catalog (table definitions), or both.

    If the target schema name already exists, select whether you want to substitute the existing schema or add the import data to the existing schema.

  6. To start the import, choose Finish.

Importing Tables from a Loader Export Package
Prerequisites

  • The database is in the ONLINE operational state.

  • The data and/or the information from the database catalog was exported using the Export Table function in Database Studio or using transport mode in the Loader. More information: Loader, Transport Mode

  • You are logged in to the database as the user who has exported the table.

Procedure

  1. In the explorer tree, select the database into which you want to import the table.

  2. In the context menu of the database, choose [image] Export/Import [image] Import [image] .

  3. Select Import Table.

  4. Select Use existing export package files for import.

    Enter the name of the target schema.

    Enter the package file directory that contains the data or the information from the database catalog that is to be imported.

    Example Example

    C:\Users\anna\sdb\loader\packages\export\PARMA\DEMODB\20061220093349

    End of the example.

  5. Select the package.

    Choose whether you want to import the application data (data), the database catalog (table definitions), or both.

  6. To start the import, choose Finish.

Importing Tables from Other Sources
Prerequisites

  • The database is in the ONLINE operational state.

  • The data and/or the information from the database catalog was exported using the Export Database function.

  • The data is available in a suitable data format. More information: Loader, Data Stream

  • You are logged in to the database as the user who has exported the table.

Procedure

  1. In the explorer tree, select the database into which you want to import the table.

  2. In the context menu of the database, choose [image] Export/Import [image] Import [image] .

  3. Select Import Table.

  4. Select Use flat files for import.

    Enter the location of the files that contain the data or the information from the database catalog that is to be imported.

  5. Choose your import options.

    Options for Importing Tables from Flat Files

    Option

    Description

    Import table definition

    Specifies whether the table definition is imported from the database catalog

    Import table data

    Specifies whether data (application data) is imported.

    Format

    Export format

    • CSV, FWV

      More information: Loader, CSV, FWV, FWV BINARY

    • PAGES, RECORDS: SAP MaxDB-internal formats

      More information: Loader, PAGES, RECORDS

    Preview

    Select this option if you want to display a preview in the next step.

    One LOB file per column

    One LOB file per LOB value

    Specifies how LOB files are to be imported

  6. A preview is displayed.

    To switch the column headers of two columns, press the CTRL key and drag one of the column header to its new position.

  7. To start the import, choose Finish.

More Information

  • Exporting Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

  • Database Administration, Exporting and Importing

For a detailed description of all prerequisites and options, see the Loader documentation: Importing: Loader Commands.


Thread Overview - SAP Documentation

Procedure documentation Thread Overview

The Kernel Threads user menu of the DBA Cockpit contains, among other things, a thread overview.

Procedure

Open the DBA Cockpit (transaction code DBACOCKPIT) and select [image] Performance [image] Kernel Threads [image] Thread Overview [image] .

Result

The system displays an overview of the threads and details for the threads that support database operation.

More Information

Concepts of the Database System, Operating System Functions and Resources Used by Databases


-8030: Column must be indexed - SAP Documentation

Background documentation -8030: Column must be indexed

Explanation

No index was created on the specified column.In a referential CONSTRAINT definition, the columns (referenced_column) must designate either the key of the table or columns which form an index defined with UNIQUE.

User Response

You can display a list of existing indexes using a QUERY statement based on the DOMAIN.INDEXES system table. Create the required index, or else do not use any index.


The DBA Cockpit (SAP Library - SAP MaxDB Library)

 Start of Content Area

Function documentation The DBA Cockpit Locate the document in its SAP Library structure

Use

The DBA Cockpit is a platform-independent tool that you can use to monitor and administer your database. It provides a graphical user interface (GUI) for all actions and covers all aspects of handling a database system landscape.

You access the DBA Cockpit by calling transaction DBACOCKPIT. Then, the initial screen DBA Cockpit: System Configuration Maintenance appears.

Features

The entry screen of the DBA Cockpit is divided into the following areas:

This graphic is explained in the accompanying text

● Application toolbar

Provides a minimum of functions, for example, to display or hide the areas on the left side.

● System landscape toolbar

Provides central functions to manage the system landscape, for example:

○ Access to system configuration where you configure and set up your system landscape

○ Management of database connections

○ Lets you choose the system to monitor. Also, additional information about a distributed database system is displayed if available.

● Navigation frame

Displays a tree structure divided at the top level into the main task areas of database administration. These are, for example, performance monitoring, space management, and job scheduling. Within each task area, there is a set of related action nodes.

● Central system data

This area is common to most actions. It provides, for example, the following data:

○ Time of last refresh

○ Database startup time

○ Name of database

It is not available for all database platforms. For more information, see the corresponding database-specific section.

● Action area

Displays the details of the currently selected action.

● Action message window

Only appears with certain actions and displays additional information that is related to the selected action.

● Framework message window

Displays the message window provided by the framework. Unlike the classic SAP GUI messaging process, the framework message window contains a complete history of all messages sent during the session. In addition, you can:

○ Clean up the window by choosing Delete.

○ Collapse or expand or the window by choosing Minimize Message Window or Show Message Window.

○ Check if a long text for a message is available by double-clicking the message or by choosing Show Longtext.

Changes to the screen area sizes are user-specific and are restored when you next start the DBA Cockpit.

Activities

You can use the DBA Cockpit to:

● Navigate between different actions

● Change to another action without closing the previous action and still hold all data retrieved by this action

You can return to this action without data loss by double-clicking the previous action in the navigation frame or by choosing Back.

● Handle central configuration

● Monitor remote systems using remote database connections

To use the functions offered for remote monitoring, you must configure the system you want to monitor. The local system is configured automatically when you start the DBA Cockpit for the first time.

After having configured the connection and depending on the database, more actions are required to configure the database monitor and to set up database administration.

Constraints

For systems that are monitored using a remote database connection, constraints depend on whether:

● The database release of the remote system is compatible to the database release of the local system.

● You want to monitor an ABAP-only or a Java-only SAP system.

End of Content Area


-4008: Unknown user name/password combination - SAP Documentation

Background documentation -4008: Unknown user name/password combination

Explanation

The specified combination of user name and password is unknown. The database system can only be accessed by a combination that is known to the database instance.

User Response

Change the user or password specification in the SQL statement.


-7043: Group member not allowed - SAP Documentation

Background documentation -7043: Group member not allowed

Explanation

Possible reasons:

  1. The attempt was made to grant privileges to a user of a user group.

  2. An attempt was made to alter the characteristics of a user who is a member of a user group using an ALTER USER statement.User characteristics and privileges cannot be altered for members of a user group. This can only be done for the user group itself.

User Response

A database administrator can use a QUERY statement issued on the DOMAIN.USERS system table to find out which user group the relevant user belongs to. Other users only see the users and user groups that belong to the same database administrator as they do.

  1. Grant the appropriate privileges to the user group that the user belongs to.

  2. Replace the ALTER USER with ALTER USERGROUP statement.


-101: SQL statement not available in this DB mode - SAP Documentation

Background documentation -101: SQL statement not available in this DB mode

Explanation

In order to execute the SQL statement, the database must be in OFFLINE or ONLINE mode.

User Response

Ensure that the database instance is in the required mode.If a system error has occurred and the system has performed a SHUTDOWN, correct the error and re-start the database instance.


Backing Up Log Entries - SAP Documentation

Procedure documentation Backing Up Log Entries

Backups of redo log entries (log backups) are required so that the database can be restored to the desired point in time after certain system breakdowns. Redo log entries are where the database system logs all changes that database users have made to data.

Regular log backups are also important for another reason: The database system can overwrite a log segment of the log area with a new entry only after it has been backed up.

Note Note

The database can also back up the redo log entries automatically.

More information: Activating or Deactivating Automatic Log Backup

End of the note.

Prerequisites

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

    More information: Glossary, Server Permission

  • You can only back up redo log entries after at least one complete data backup has been carried out.

    More information: Backing Up Data

  • You have created a backup template for log backups.

    More information: Defining Backup Templates

  • The database is in the ONLINE or ADMIN operational state.

  • Overwrite mode for the log area is switched off.

    More information: Changing Log Settings

  • You cannot start any other backup while a log backup is running.

    Exception: When automatic log backup is active, you can perform data backups.

  • Only for Microsoft Windows

    If you want to back up data to a data carrier on a remote computer, perform the steps described in Database Administration, Backing Up and Restoring Data with Remote Computers.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Backup...

  3. Choose Log Backup.

  4. Select a backup template.

  5. Start the backup.

    The system shows the current status of the backup procedure in the status window.

    On the Backup Results tab page, the system shows the data carriers that have been used up to now.

Caution Caution

For log backups to data carriers of the FILE type, you have to archive the backup files regularly. To do this, use the database tool Database Manager CLI.

More information: Database Manager CLI, archive_stage

End of the caution.

Result

In the Actions view, the system shows the backup steps performed so far.

More information: Actions (View)

More Information

Database Administration, Backing Up Log Entries


-882: Missing user name for connect - SAP Documentation

Background documentation -882: Missing user name for connect

Explanation

No user/password combination was found for an implicit CONNECT initiated by the precompiler option CHECK.

User Response

Write a static CONNECT statement as the first SQL statement in the program, apply the USER option or create an XUSER file for an implicit CONNECT.


Loader - SAP Documentation

Component documentation Loader

Loader enables you to export from a SAP MaxDB database to the file system or import application data from the file system to a SAP MaxDB database.

Because Loader supports a great number of file formats it can often be used to export and import data instead of special application programs. Due to its specialization on SAP MaxDB databases, Loader also supports direct transport of data from one database to another one running on a different hardware structure or a different operating system. You have the option of transporting all of the data from a database, from a certain database user, the individual tables from a special database schema or just a number of qualified columns. As well as files, Loader also supports pipes and back-up tools from other providers as transport media.

Implementation Considerations

Loader is a component of the SAP MaxDB software. Loader is a command line tool that can be used on all operating systems supported by the database system.

As of SAP MaxDB version 7.7, Database Studio database tool provides a GUI for Loader. More information: Database Studio

  • Exporting Data and/or Information from the Database Catalog

  • Importing Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

Features

  • Calling the Loader

  • Opening a Session: Loader CLI Options

  • Loader Commands and SQL Statements

  • Loader Log Functions

Example

Loader Tutorial

Concepts of the Database System, Objects in the HOTEL Schema

More Information

  • Syntax Rules: Sorted Alphabetically

    Syntax Rules: Sorted Semantically

  • Loader Terms: Overview

    Loader Keywords: Overview

Glossary


-25208: Invalid position specification (negative values not allowed) - SAP Documentation

Background documentation -25208: Invalid position specification (negative values not allowed)

Explanation

The command to export or import data contains an error.You cannot specify a negative value for a position.

User Response

Correct the position specification and re-execute the command.


Global Listener - SAP Documentation

Background documentation Global Listener

Only available as of database version 7.8

The global listener is a specialized X server, which is running on the database computer and is listening for connection requests from remote clients. After receiving a connection request, the global listener sends the client the connection data for the installation-specific X server of the database that the client wants to connect to.

More Information

Global Listener and X Servers


Event Log Viewer - SAP Documentation

Background documentation Event Log Viewer

System messages are displayed in the Event Log Viewer.

To configure which information is logged by the system, proceed as described in the Configuring Database Studio section.


apropos - SAP Documentation

Background documentation apropos

You display all the DBM commands that contain a specified character string, or a similar character string, and the descriptions of these commands.

If the output of a DBM command and its description is longer than 80 characters, the system adds line breaks.

Prerequisites

You do not need to log on to Database Manager as an operator to execute this DBM command.

Structure

apropos <character_string>

Options
Option | Description
<character_string> | Character string

Result

OK

<dbm_command> <description>

Values for the Reply Fields
Value | Description
<dbm_command> | DBM command
<description> | Description

Example

Call Database Manager CLI, display all the DBM commands that contain the character string auto:

>dbmcli apropos auto

OK

auto_extend <mode> [<percentage>]

autolog_cancel

autolog_off

autolog_on [<medium>]

autolog_show

autorecover [LOG] [UNTIL <date> <time>] [ ( KEY <key> LABEL

<label> ) | ( IBID <internal_backup_ID> ) ]

auto_update_statistics <mode>


-752: Session already connected - SAP Documentation

Background documentation -752: Session already connected

Explanation

A database session has already been opened with this number.

User Response

Either close the previous database session or remove the CONNECT from the application program.


-27019: Conversion UNICODE to ASCII not possible - SAP Documentation

Background documentation -27019: Conversion UNICODE to ASCII not possible

Explanation

You tried to read a UNICODE character set from the database to an ASCII variable. However, at least one character is a UNICODE character which cannot be converted to ASCII. This error can only occur if native SQL was entered in UNICODE columns in liveCache, or if UNICODE and ASCII applications are both using the same liveCache database.

User Response

If you modified UNICODE columns in liveCache using native SQL, check whether these changes are ASCII-compliant.If you did not make any changes using native SQL, contact you local support organization.


-816: Trace file write error - SAP Documentation

Background documentation -816: Trace file write error

Explanation

An error occurred when writing into the trace file. Writing of the trace file was cancelled. The statement in which the error occurred was not executed.

User Response

Check the file attributes and change them, if necessary. For the exact error description, see the file appldiag .


-10821: Session not connected - SAP Documentation

Background documentation -10821: Session not connected

Explanation

There is no connection to the database instance. The connection to the database instance was terminated.

User Response

Log on to the database instance again using the CONNECT method.


SELECT Editor - SAP Documentation

Procedure documentation SELECT Editor

The Diagnosis user menu of the DBA Cockpit contains the SELECT- Editor, with which you can execute SELECT statements, and, if necessary, store them for reuse.

Procedure

  1. Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Diagnosis [image] SELECT Editor [image] .

  2. Enter the desired SELECT statement.

  3. Choose Execute.

Result

The following functions are available:

  • EXPLAIN: You can display the execution plan for the SQL statement.

  • Store SELECT in Database: You can save your SELECT statement in the database under a name of your choice.

  • Load SELECT from Database: You can resuse a SELECT statement stored in the database, by loading it into the SELECT editor by specifying its name.

  • Delete a SELECT Statement: You can delete a SELECT statement stored in the database.

More Information

  • SQL Reference Manual,

    SELECT Statement

    EXPLAIN Statement

  • Database Administration, Analyzing Search Strategies Using the EXPLAIN Statement


-25353: Specified maximum number of LONG data files for column '<column_name>' exceeded. - SAP Documentation

Background documentation -25353: Specified maximum number of LONG data files for column '<column_name>' exceeded.

Explanation

Error executing the Loader command for exporting data.

In the command, you can set the export_lobcolumn_spec in the syntax element for columns of data type LOB so that each value exported is written in a single data stream. Placeholders in the data stream name ('#') determine the maximum number of data streams that can be generated. For example, <name>### would mean that 1000 data streams can be generated.

This error occurs if the table contains more data records than the number of data streams that can be generated.

User Response

Correct the command and then re-execute it.


Testing the SAP MaxDB PHP Extension on Linux - SAP Documentation

Procedure documentation Testing the SAP MaxDB PHP Extension on Linux

You test the functions of the SAP MaxDB PHP extension. You can either use the test scenario included in the SAP MaxDB PHP package for this or develop your own tests.

Prerequisites

  • You have created and installed the SAP MaxDB PHP extension.

    More information: Creating and Installing the MaxDB PHP Extension on Linux

  • You have installed the SAP MaxDB software and created a database. This database must be located on the same computer as the PHP installation. If you want to use the SAP MaxDB test scenario provided, you need to have loaded the demo data into this database.

    More information: Concepts of the Database System, Demo Database

Procedure

  1. Open a root shell and go to the <php_source> directory containing the PHP source code:

    cd <php_source>

  2. Copy the file php.ini-recommended to the directory <php_with_maxdb>/lib and change the name of this file to php.ini:

    cp php.ini-recommended <php_with_maxdb>/lib/php.ini

  3. Open the <php_with_maxdb>/lib/php.ini file in an editor and enter the following information:

    [maxdb]

    maxdb.default_db=<database_name>

    maxdb.default_user=<database_user_name>

    maxdb.default_pw=<database_user_password>

  4. Add the path for the PHP installation to the environment variable TEST_PHP_EXECUTABLE.

  5. Go to the directory <php_source> containing the PHP source code. This directory contains the run-tests.php script for testing PHP.

    cd <php_source>

  6. To start the tests in the <test_program_folder> directory, enter the following command:

    php run-tests.php <test_program_folder>

Result

You can see information on which tests were successful and which have failed.

Example

You have unpacked the source code for PHP 5.0.0 to directory /home/anna/php-5.0.0.

You have created the SAP MaxDB PHP extension and installed it in the /usr directory.

You have installed the SAP MaxDB software and created the DEMODB database as well as the database user MONA with the password RED.

You use the SAP MaxDB test scenario.

  1. Go to the directory /home/anna/php-5.0.0:

    cd /home/anna/php-5.0.0

  2. Copy the php.ini-recommended file contained within to the directory /usr/lib and change the name of this file to php.ini:

    copy php.ini-recommended/usr/lib/php.ini

  3. Open the file /usr/lib/php.ini in an editor program, then insert the following:

    [maxdb]

    maxdb.default_db=DEMODB

    maxdb.default_user=MONA

    maxdb.default_pw=RED

  4. Add the path for the PHP installation to the environment variable TEST_PHP_EXECUTABLE.

    Example Example

    Bash shell:

    export TEST_PHP_EXECUTABLE=<php_with_maxdb>/bin/php

    End of the example.

  5. Go to the directory /home/anna/php-5.0.0 containing the PHP source code. This directory contains the run-tests.php script for testing PHP.

    cd /home/anna/php-5.0.0

  6. To start the tests, enter the following command:

    php run-tests.php /home/anna/tmp/ext/maxdb/tests


-848: Invalid unsigned integer - SAP Documentation

Background documentation -848: Invalid unsigned integer

Explanation

An unsigned integer was expected but not found.

User Response

Correct the SQL statement.


From -29000 to -29099 - SAP Documentation

Background documentation From -29000 to -29099

Error messages caused by the LCAPPS/TREX communication


Connecting to VERITAS NetBackup - SAP Documentation

Background documentation Connecting to VERITAS NetBackup

Using the Backint for Oracle Interface, SAP MaxDB can connect to VERITAS NetBackup (from VERITAS) in order to back up, restore, import, and export data.

Veritas NetBackup can be used for database versions as of 7.3 (with a current patch level).

More Information

Connecting to a Backint for Oracle Interface

http://support.veritas.com


Position Description - SAP Documentation

Background documentation Position Description

You use syntax rule field_spec to describe either a start position of a data field or a start and an end position of a data field. These can be:

  • The position of the input field in the data stream when importing application data (Column Description)

  • The position of an output field in the data stream when exporting application data (Output Column)

  • The position of a comparison value for importing application data selectively (Selecting Data Records)

Structure

Syntax Syntax

  1. <field_spec> ::=
  <unsigned_integer>
| <unsigned_integer> - <unsigned_integer>
End of the code.

In the column description, specify a position description field_spec for every column. The position description depends on the format of the data stream.

Format CSV

The data fields do not have a uniform format. They are separated by commas and end with a line break. Enter position descriptions field_spec as relative positions only. If you enter position descriptions with start and end positions for single columns or all columns, Loader generates an error and terminates the command.

Example Example

EXPORT COLUMNS * FROM hotel.reservation

MAP COLUMNS

  rno       1

  cno       2

  hno       3

  type      4

  arrival    5

  departure  6–15    ERROR

DATA OUTSTREAM 'reservation_csv.data' CSV

End of the example.

Assign position 1 to the first column in your list. The position number is incremented by 1 for each further column. This also means that each position number can only be assigned once. If you do not observe these rules, Loader generates an error and terminates the command.

Example Example

EXPORT COLUMNS * FROM hotel.reservation

MAP COLUMNS

  rno       1

  cno       2

  hno       3

  type      4

  arrival    5

  departure  6

  type      7

DATA OUTSTREAM 'reservation_csv.data' CSV

End of the example.

You can assign a column to multiple positions.

Example Example

Data stream customer_csv.data with data at position 1, 2, 3, 4, ...

"3000","Mrs","Jenny","Porter",...

"3100","Mr","Peter","Brown",...

"3200","Company","?","Datasoft",...

Import Command

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  cno       1

  title     2

  firstname  3

  name      4

  zip       5

  address    6

PAGE WITH 80% USAGE

End of the example.
Format FWV

The data fields have a standard format, and end with a line break. Specify all position descriptions field_spec with their exact start and end positions. Specify ascending, non-overlapping values only for position descriptions. If the positions entered are not consecutive, Loader fills the gaps with blank characters. This also applies to binary data.

Example Example

EXPORT COLUMNS * FROM hotel.reservation

MAP COLUMNS

  rno       01-05

  cno       06-10

  hno       11-15

  type      16-21

  arrival    25-34

  departure  36-45

DATA OUTSTREAM 'reservation_fwv.data' FWV

End of the example.

Example Example

Data stream customer_fwv.data

-3000Mrs----Jenny-----Porter

-3100Mr-----Peter-----Brown-

-3200Company?---------Dataso

Import Command

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_fwv.data' FWV

  cno       01-05

  title     06-12

  firstname  13-22

  name      23-32

  zip       33-37

  address    38-62

PAGE WITH 80% USAGE

End of the example.

Define the positions for the data stream so that they are at least as long as the length of the values in the database. If you define a position for the data stream that is longer than the length of the value in the database, the following occurs:

  • Character strings are aligned to the left and blank characters are entered to correct the length.

  • Numeric values are aligned to the right and blank characters are entered to correct the length.

If you define a position for the data stream that is shorter than the length of the value in the database, Loader generates an error and terminates the command.

Format FWV BINARY

The data fields have a standard format and do not end with a line break.

Example Example

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_fwv_binary.data' FWV BINARY

  cno       01-05

  title     06-12

  firstname  13-22

  name      23-32

  zip       33-37

  address    38-62

PAGE WITH 80% USAGE

End of the example.

More Information

Column Description

Data Stream

CSV, FWV, FWV BINARY


-758: Include file exists on disk - SAP Documentation

Background documentation -758: Include file exists on disk

Explanation

The declare section is not generated during the precompiler run. The file is already available.

User Response

Check whether the used file is the current one.


Loader Terms: Overview - SAP Documentation

Object documentation Loader Terms: Overview

The following overview is designed to enable you to look up the terms used in Loader.

AUTOCOMMIT

Binary Value

Calling the Loader

Clear Text Value

Command File

Command File Mode

Commands

Command Separator

CSV

Data

Data Carrier type

Database Internal Data Type

Data Format

Data Stream

Data Type

DDL

EXPORT

EXPORT COLUMNS

EXPORT DB

EXPORT SCHEMA

EXPORT TABLE

EXPORT USER

External Data Type

FWV

FWV BINARY

HEX Value

IMPORT

IMPORT COLUMNS

IMPORT DB

IMPORT SCHEMA

IMPORT TABLE

IMPORT USER

INSTREAM

Loader CLI

LOB Values

Log File

Metadata

NULL Value

Operating Mode

Options

OUTSTREAM

PACKAGE

PAGES

RECORDS

REMARK

Selecting Data Records

Session Mode

SET

SQL Statement

SQLMODE

System Table

Transformation

Transporting

Transport Mode

UPDATE COLUMNS

USE DB

USE SCHEMA

USE SCHEMAMAP

USE USER

More Information

Loader

Loader Keywords: Overview

Syntax Rules: Sorted Alphabetically

Syntax Rules: Sorted Semantically


-23054: Maximum numbers of windows reached - SAP Documentation

Background documentation -23054: Maximum numbers of windows reached

Explanation

The maximum number of windows have been opened.

User Response

Close some windows.


-838: Invalid declarator - SAP Documentation

Background documentation -838: Invalid declarator

Explanation

The declarator is invalid.

User Response

Correct the declarator in the declare section.


param_extgetallnext - SAP Documentation

Background documentation param_extgetallnext

You display the further parameter data from the database parameter file and the default parameter file.

The display contains the name of each database parameter, its data type, and its current value. This is the value that is copied from the parameter file at the start of the session. If the parameter is not in the parameter file, the value from the default parameter file is displayed.

To display further output from the executed DBM command param_extgetall, you need to again restrict the display using the same properties and values.

If you define different properties however, or none at all, then the display from the first line will follow the new definition.

Prerequisites

  • You have executed the DBM command for displaying data on all parameters in the database parameter file and the default parameter file (see: param_extgetall). Since the size of the reply packet is limited, not all results are displayed.

  • You have the server authorization ParamRead.

Structure

param_extgetallnext [<property_list>]

<property_list>:: = <property_definition> <property_definition> ...

<property_definition> :: = <property>=<value> | <property>=<value,value,...>

Options
Option | Description
<property> | Property of the parameter, to be specified in upper case If you enter several properties, then only those parameters that correspond to all the criteria are output (AND operator). Each property can only be specified once. If the same property is entered more than once, the last value entered is used for the search.
<value> | Value of the property, to be specified in upper case. You can enter one or more values for each property (OR operator). These are to be separated by commas.

Result

OK

<parameter_name> <data_type> <value>

<parameter_name> <data_type> <value>

...

Values for the Reply Fields
Value | Description
<parameter_name> | Name of the database parameter
<type> | Data type of the database parameter
<value> | Current value

In the event of errors, see Reply Format.

More Information

Database Administration, Database Parameters


Loader Log File - SAP Documentation

Object documentation Loader Log File

An important log function in Loader is to create and manage log files. The runtime behavior during export or import (execution of Loader commands) is always written to log file loader_<timestamp>.log or loader.log.

When you start Loader, the log file is created or updated.

  • Transport mode: Runtime behavior during export or import (execution of commands) is written to log file loader_<timestamp>.log. The time stamp shows when the package was executed. The time stamp of the first log file is identical to the name of the package package_timestamp (default of package name is the time stamp). If the package is used for further transformations, log files are created whose time stamps reflect the beginning of this transformation. This is no longer identical to the name of the package.

  • Command file mode and session mode: Runtime behavior within a single Loader session is written to log file loader.log, which is continuously updated. If another Loader session is opened at the same time, log file loader_<timestamp>.log is created and updated for this Loader session. The time stamp indicates when the additional Loader session was opened.

Storage of the Loader Log File

Operating Mode

Default Loader Log File Directory

Transport Mode

EXPORT directory: <loader_user_data>\packages\export\<database_computer>\<database_name>\<package_timestamp>

IMPORT directory: <loader_user_data>\packages\import\<database_computer>\<database_name>\<package_timestamp>

Session/Command File Mode

<loader_user_data>\log

You can change the default for the log file directory of the current Loader session using the SET LOGFILEPATH command.

Example Example

Starting Loader in session mode

loadercli

Information about the default Loader log file directory (Microsoft Windows)

Loader protocol: 'C:\Users\D019124\Documents\sdb\loader\log\loader.log'

End of the example.

Structure

In the log file you find all Loader commands required to open a session and to execute the required transformation (export, import or transport). All comments start on a new line with // * or // <letter>.

Special Comment Lines
// M | Line with messages; these are informative system messages, such as the number of lines inserted and rejected, last completed transaction.
// E | Line with error messages; this is used to introduce the two lines with the table and position values as well as the error number or error text for rejected lines.
// R | Line with REMARK comment; these are comments that the user specified using the REMARK command.

Integration

The log file is structured so that parts of it can be easily used to create a command file. In the log file, every command is saved together with information about the execution time, the number of objects for which actions were carried out, and any errors that occurred. However, the log file does not detail which individual actions were required to execute the command. If you would like this information, you can use the Loader syntax element package_spec to log activities in more detail (Additional Log Functions (package_spec)).

REMARK Command

You can use this Loader command to write comments in the log file.

Syntax Syntax

  1. <remark_command> ::=
  REMARK "<literal>"
End of the code.

More Information

Transport Mode

Command File Mode

Session Mode

Loader Log Functions

Database Administration, Log Files


-25315: Column data type of column '<column_name>' and external data type are not compatible - SAP Documentation

Background documentation -25315: Column data type of column '<column_name>' and external data type are not compatible

Explanation

Error executing the Loader command for exporting data.

User Response

Select another external data type and re-execute the command.


event_dispatcher - SAP Documentation

Background documentation event_dispatcher

With this command you can manage the event dispatcher function for a database.

The event dispatcher only works if X server is running on the database computer.

You can use options to display the event dispatcher function, switch it on and off, create links between events in the database and executable programs, and delete these links.

Before programs can be linked to events, a member of the administrator group for the current computer is required to create a file with the name dbm_whitelist.cfg in the run directory of the database. In this file, enter the complete absolute paths to the programs that are to be linked to events. Enter one path per line.

Note Note

For reasons of security, it is only possible to create a link between an event and a program if the program is listed in the file dbm_whitelist.cfg.

The exception to this rule is the SDBMAIL program . It does not need to be entered explicitly in the file, as the system accesses a function on the DBM server to execute it.

You can use SDBMAIL to send e-mails when events occur (see section “Example”)

End of the note.

Caution Caution

Please note: If powerful programs such as cmd.exe are entered in the dbm_whitelist.cfg file, this enables extensive manipulations of the entire system.

End of the caution.

Use the event_dispatcher DBM command to define the program you wish to execute, the event for which it is to be executed, and the properties of that event. It is possible to define events of the same category for different threshold values and link these to different programs.

There are a number of variables you can use in the execution command; the system replaces them with the values listed in the “Options” table at runtime. Separate multiple variables by spaces.

If the execution command contains spaces, you need to put the command in double quotation marks. If arguments within an execution command contain quotation marks, the quotation marks must be preceded by a backslash (\).

Links between events and programs only result in actions if the event dispatcher is on. If you define a link while the event dispatcher is on, the link takes effect immediately.

Prerequisites

  • You have the server permission SystemCmd and EvtDispMgm.

  • The file dbm_whitelist.cfg is stored in the run directory of the database. It is owned by an administrator of the current computer.

  • The file dbm_whitelist.cfg contains the absolute path for the program that is to be linked to the event.

    Note Note

    The program SDBMAIL can be linked to events without being listed explicitly in the file. The file must, however, exist.

    End of the note.

  • The current operating system user can access and execute the program that is to be linked to an event.

Structure

event_dispatcher ON | OFF | SHOW | <delete_spec> | <add_spec>

<delete_spec> ::= DELETE <entry_ID>

<add_spec> :: = ADD <definition>

<definition> :: = NAME == <event_name> PRORITY == LOW | MEDIUM | HIGH [VALUE1 == ≤ | ≥ | | < | > <value>] [VALUE2 == | ≤ | ≥ | | < | > <value>] Command == <execution_command>

<execution_command> :: = SDBMAIL | <program_definition>

<program_definition> :: = <program_path> [<command_line>]

Options

Option

Description

ON | OFF

Switches the event dispatcher function on or off

SHOW

Displays the event dispatcher function

<entry_ID>

ID of the link between an event and a program that is to be deleted

NAME == <event_name>

Event name

Maintain the capitalization in the entry.

PRORITY == LOW | MEDIUM | HIGH

Event priority returned by the database kernel

VALUE1 == | ≤ | ≥ | | < | > <value>

Value VALUE1 returned by the database kernel for the event; the system is to compare this value to value <value>

VALUE2 == | ≤ | ≥ | | < | > <value>

Value VALUE2 returned by the database core for the event; the system is to compare this value to value <value>

<program_path>

The absolute path listed in file dbm_whitelist.cfg for the program that is to be executed

Observe the case-sensitivity when making your entry.

<command_line>

Command line to be executed in the specified program

You can use the following variables:

$DBMUSERPW$: Name and password of the first DBM operator (for logging on the event dispatcher to the database)

$EVTNAME$: Name of the event

$EVTVAL1$: Value for VALUE1, which is returned by the database system as soon as the event occurs (see output of event_list_categories <event_category>)

$EVTVAL2$: Value for VALUE2, which is returned by the database system as soon as the event occurs (see output of event_list_categories <event_category>)

$EVTDATE$: Date on which the event was triggered

$EVTTIME$: Date on which the event was triggered

$EVTTEXT$: Contents of the field TEXT, which is returned by the database system as soon as the event occurs (see output of event_list_categories <event_category>)

$EVTCOUNT$: Sequence number of the event

$EVTPRIO$: Event priority

$SERVERNAME$: Name of the database computer

Result

OK

Example

Database Manager CLI Tutorial

Event-controlled sending of e-mails

Event-controlled copying of automatically created log backups

More Information

Using Database Events

Database Administration, Automating Administration Tasks


-7066: Unique index referenced by foreign key not allowed - SAP Documentation

Background documentation -7066: Unique index referenced by foreign key not allowed

Explanation

The specified index cannot be dropped, because the columns it contains were specified as referenced columns of the referenced table in a referential CONSTRAINT definition.

User Response

You can only delete the index after you have deleted the corresponding referential CONSTRAINT definition. You can use a QUERY statement based on the DOMAIN.FOREIGNKEYCOLUMNS system table to display the CONSTRAINT definitions that were generated.


Database Manager - SAP Documentation

Procedure documentation Database Manager

The Messages user menu of the DBA Cockpit contains, among other things, a display of the command history of the Database Manager.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Diagnostics [image] Messages [image] Database Manager [image] .

Result

The system displays the command history of the Database Manager (dbm.prt).

You can use the navigation help (Start of File, End of File) for orientation within the message files. Choose Import File to update the output.

More Information

Database Administration, Log Files


Database Studio Screen Areas - SAP Documentation

Background documentation Database Studio Screen Areas

Database Studio consists of several views and editors, which you can show and hide. Views can be opened only once, editors can be opened multiple times.

For more information about views and editors, see the Eclipse documentation at http://www.eclipse.org.

Features

This graphic is explained in the accompanying text.

Database Studio: Screen Areas

Screen Area

Name

1

Menu

2

Explorer

Outline

3

Editor window, which can contain the following special editors:

  • Administration

  • Table editor

  • View editor

  • Sequence editor

  • SQL editor

  • Visual Query editor

  • Help

4

Console

Explain

Actions

Event Log Viewer
Explorer

Depending on your settings, the following areas are displayed in the explorer:

  • Menu bar

    Entry

    Description

    Login (Login)

    Login to a database

    SQL Editor (SQL Editor)

    Open the SQL Editor.

    Dropdown menu:

    • New...

      Add a new login.

    Administration (Administration)

    Open the Administration Editor.

    Dropdown menu:

    • New...

      Add a new login.

    Go Back ( Go Back)

    Go Forward (Go Forward)

    Up One Level (Up One Level)

    Navigation

    Collapse All (Collapse All)

    Collapse all nodes in the explorer tree

    Link with Editor (Link with Editor)

    Activates or deactivates highlighting mode

    When you open an editor or view in highlighting mode, the corresponding database object in the explorer tree is highlighted.

  • My Repository

    For more information, see My Repository.

  • Explorer tree

    For more information, see Explorer Tree.

Outline (View)

The code that you enter in an editor (such as the SQL editor) is displayed graphically in this view.

Administration (Editor)

You can carry out administrative tasks in this editor. Information on the database is also displayed.

For more information, see Editor: Administration.

Table Editor

The table editor lets you edit table definitions.

For more information, see Table Editor.

View Editor

The view editor lets you edit view table definitions.

For more information, see View Editor.

Sequence Editor

The sequence editor lets you edit the definitions of sequences (number generators).

For more information, see Sequence Editor.

SQL Editor

In the SQL editor, you can enter and execute SQL statements.

For more information, see SQL Editor.

Visual Query Editor

In the visual query editor, you can enter SQL statements graphically and edit them, as well as display foreign key dependencies between tables.

For more information, see Visual Query Editor.

Console (View)

Status and confirmation messages are displayed in the console.

Explain (View)

The result of EXPLAIN statements for SQL statements is displayed in this view.

For more information, see

  • Explain (View)

  • Analyzing SQL Statements (EXPLAIN)

Actions (View)

In this view, the system displays actions.

More information: Actions (View)

Event Log Viewer

System messages are displayed in the event log viewer.

More information: Event Log Viewer

Help (View)

Online help

More Information

Configuring Database Studio


OMS Monitor - SAP Documentation

Procedure documentation OMS Monitor

In the Performance user menu of the DBA Cockpit, you can find, among other things, a display of information about events of the OMS intermediate layer and liveCache basis layer for each database procedure since the last start of the liveCache Monitoring.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Performance [image] OMS Monitor [image] .

Result

Memory Analysis: If this status display is green, the memory analysis is running (see also: liveCache Alert Monitor, Monitor).

liveCache Monitor: If this status display is green, liveCache monitoring is activated.

Displays

The following displays are available for the database procedures:

  • Runtime

  • Object Accesses

  • Import/Export Streams

  • Memory Analysis

  • Transaction Counters

  • Cost Overview

  • Overall View

Runtime

The system displays, among other things, the following analysis data about the runtime of a database procedure:

Column | Explanation
Max./Min./Ø Runtime | Maximum, minimum, and average runtime in milliseconds
GUID | GUID of the object that defines the methods
Max./Min./Ø Wait time | Maximum, minimum and average wait time for omsNewConsistentV
Object Accesses

The information includes the following analysis data:

Column | Explanation
OMS object accesses | Number of OMS accesses to objects using OID (OMS dereferences)
Basis object accesses | Number of accesses to objects that only had to be delivered by the liveCache basis layer; that is, that did not have to be met from the OMS
Basis key accesses | Number of basis object accesses using keys
Basis iterator accesses | Number of basis object accesses using iteration from an object container
OMS memory operations | Number of OMS memory operations of objects
Basis memory operations | Number of memory operations that were performed by the liveCache basis layer
Deleted objects (OMS) | Number of deleted OMS objects
Deleted objects (Basis) | Number of objects that were deleted from the liveCache basis layer
Lock operations | Number of lock operations that were performed by the liveCache basis layer
History accesses | Number of object accesses (in pages) that required access to the log
Iterator history accesses | Number of object accesses (in pages) that required access to the log using the iterator
Loaded objects | Number of loaded objects of variable length
Stored objects | Number of stored objects of variable length
Ø Object size | Average length of an object of variable length
Import/Export Streams

Minimal/maximum/average number of communications with the buffer that were performed for the import/export of stream parameters of a database procedure and of application tables.

Minimum/maximum/average number of imported/exported lines into/out of streams and application tables.

Memory Analysis

If memory analysis is switched on, the status display memory analysis is green. The information includes the following analysis data:

Column | Explanation
Cache Size | Size of the OMS cache in bytes
MIN-/MAX-/Ø -Memory usage | Minimum, maximum and average number of bytes that were occupied using omsMalloc
MIN/MAX/Ø Memory release | Minimum, maximum and average number of bytes that were released using omsFree
Transaction Counters

Display of information about the transactions such as exceptions and timeouts. The information includes the following analysis data:

Transaction Counters
Column | Explanation
C++ Exceptions | Number of C++ exceptions that occurred
OutOfDate Exceptions | Number of OutOfDateExceptions that occurred. These occur when a lock is requested for an instance that was already changed in the meantime.
Timeouts | Number of timeouts that occurred while waiting for locks
Rollback | Number of subtransactions that were rolled back
Commit | Number of subtransactions that were ended with COMMIT
Nesting | Maximum nesting of subtransactions
OutOfMemory Exceptions | Number of OutOfMemoryExceptions that occurred
Cost Overview

To be able to evaluate the access to objects using the methods specified, average values are calculated for some of the analysis data relevant for cost determination.

More Information

Class Container


-910: COSTLIMIT for this user exhausted - SAP Documentation

Background documentation -910: COSTLIMIT for this user exhausted

Explanation

Execution of the SQL statement would exceed the permissible maximum limit for the processing of the SQL statement (COSTLIMIT value of the user) because of the necessary selection of rows. The COSTLIMIT value is defined in the CREATE USER, CREATE USERGROUP, ALTER USER or ALTER USERGROUP statement.

User Response

You should check whether the SQL statement is needed in the specified format. You should check whether for example the set of data to be processed could be decreased by specifying more conditions in the search condition; thus decreasing the costs.Should this not be possible, try to achieve the effect of the SQL statement by several less costly SQL statements.Display the definition of the COSTLIMIT value using a QUERY statement issued on the system table DOMAIN.USERS.The database administrator or the DBA who is owner of the user group or user may increase the COSTLIMIT value by using an ALTER USER or ALTER USERGROUP statement.


backup_cancel - SAP Documentation

Background documentation backup_cancel

With this command you exit a backup operation, which was interrupted.

Prerequisites

  • You have the server permission Backup.

  • You have started a backup of the database. The backup operation was interrupted. You are still in the same database session.

Structure

backup_cancel

Result

OK

Returncode 0

In the event of errors, see Reply Format.

More Information

Database Administration, Backing Up Data, Backing Up Log Entries


-7506: Parameter type not supported - SAP Documentation

Background documentation -7506: Parameter type not supported

Explanation

In a CREATE DBPROC statement, you have specified a C++ method that contains at least one parameter that is not supported. For example, IN parameters with the signature int* are not supported.

User Response

Rewrite the C++ method so that it only contains parameters that are supported.


-801: Input parameter cannot be NULL value - SAP Documentation

Background documentation -801: Input parameter cannot be NULL value

Explanation

The value of an input parameter must not be a NULL value, because NULL values are not permitted for the column.

User Response

Modify the program or change the column definition in the CREATE TABLE statement.


-10316: DATA AT EXECUTE for parameter (<number>) not allowed (conflicts with use of LOB parameter) - SAP Documentation

Background documentation -10316: DATA AT EXECUTE for parameter (<number>) not allowed (conflicts with use of LOB parameter)

Explanation

One parameter was bound to DATA AT EXECUTE, but a different parameter is supplied for an SQLDBC_LOB structure.

User Response

Do not use DATA AT EXECUTE and SQLDBC_LOB parameters at the same time.


-25244: Loader CONSTRAINT violation: <error_text> - SAP Documentation

Background documentation -25244: Loader CONSTRAINT violation: <error_text>

Explanation

You have executed a command to export or import data of a database, of a user, or of a schema. This command was terminated because you specified a format for the data file that is not supported for this command. The error text describes the cause of the error.

User Response

Correct the format in the command and re-execute it.


Starting or Stopping Databases - SAP Documentation

Procedure documentation Starting or Stopping Databases

In normal operation, databases are in the ONLINE operational state. You can either manually start databases (transfer them to the ONLINE operational state), or activate automatic startup.

To perform certain administration tasks such as restoring a database after a system failure, the ADMIN operational state or a restart of the database may be required.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for starting and stopping the database.

    More information: Glossary, Server Permission

  • Make sure that no users are logged on to the database.

Procedure

Transferring Databases to a Different Operational State

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Set State [image] .

  3. Choose the operational state.

    Database Operational States

    Icon

    Operational State

    Description

    ONLINE

    The database is running. Database users can log on and execute SQL statements. The database system administrator and DBM operators can perform administrative tasks.

    -

    STANDBY

    For standby databases in hot standby systems only

    Note that you cannot connect to a standby database. It is in a constant restart state.

    ADMIN

    The database is only available for administration tasks.

    OFFLINE

    The database is not running.
Starting Databases

Transfer the database to the ONLINE operational state.

Restarting Databases

Transfer the database to the OFFLINE and then to the ONLINE operational state.

Starting Special Kernel Variants

Note Note

This function is for development and testing purposes only. Do not use it for regular database operations.

End of the note.

  1. In the context menu of the database, choose [image] Administration Tasks [image] Set State [image] Advanced...

  2. Choose the kernel variant.

    Kernel Variants

    Kernel Variant

    Description

    fast

    System default

    Fastest kernel variant, with minimum logging and runtime checks

    slow

    Kernel variant with extensive logging and runtime checks

    Do not use this kernel variant during production operation of the database.

    test

    Kernel variant which was developed especially for test purposes

    Do not use this kernel variant during production operation of the database.

More Information

Database Administration, Activating Automatic Database Start


-23064: Import failed - SAP Documentation

Background documentation -23064: Import failed

Explanation

Could not import exported SQL Studio objects.

User Response

Contact Support.


-23062: Could not open connection - SAP Documentation

Background documentation -23062: Could not open connection

Explanation

An attempt to connect to the database instance has failed.

User Response

Check the status of the database instance.End the SQL Studio session and connect to the database instance again.


-10310: Invalid column index (<number>) - SAP Documentation

Background documentation -10310: Invalid column index (<number>)

Explanation

The index you entered for the database column is invalid.

User Response

Enter a valid value for the index of the database column. You can only select columns that are included in the result set


Backup Templates - SAP Documentation

Procedure documentation Backup Templates

In the Backup and Recovery user menu of the DBA Cockpit, you can, among other things, display, create, and configure backup templates. The database must be in the ONLINE or ADMIN operational state.

Procedure

  1. Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Backup and Recovery [image] Backup Templates [image] .

  2. Choose [image] Edit [image] Create Group [image] or [image] Edit [image] Create Backup Template [image] and create the desired backup template for the data carrier or group of parallel data carriers.

  3. To change the specifications of a backup template, choose [image] Edit [image] Change Properties [image] .

Backup tool from other providor | Description of the third-party backup tool More information: Database Administration, Using Third-Party Backup Tools
Name | Name of the backup template
Device/File | Name of the data carrier If you use files and pipes, we recommend that you specify the absolute path of the data carrier.
Data carrier type | Data carrier type File: Log backups should always be carried out in backup files. Tape: You cannot make log backups to tape. Pipe: Always specify Pipe if you are using a third-party backup tool.
Backup type | Backup type Full (Data): Complete data backup Incremental (Pages): Incremental data backup Log: Interactive log backup AutoLog: Automatic log backup
Size (KB) | Size of data carrier
Can Overwrite | Sets the overwrite mode Select Can Overwrite if you want to use the overwrite mode for the data carrier.
Block Size (pages) | Selects the block size If you want to make backups in blocks of eight pages, select Block Size. You can specify another block size, if you want. If you do not select Block Size, the value of database parameter BACKUP_BLOCK_CNT is used.
Autoloader | Sets the autoloader If you want to use a tape device with an automatic tape loader, select Autoloader.
OS command | Transferring operating system commands When you back up to tape, you can specify operating system commands.

Result

You can use backup templates to schedule or start a backup action (Scheduling an Action, Starting an Action Immediately).

More Information

Database Administration, Backup Templates and Data Carriers, Backing Up Data, Backing Up Log Entries


-28818: Wrong object position - SAP Documentation

Background documentation -28818: Wrong object position

Explanation

An OID contains an invalid position.

User Response

Contact Support.


Special Operating System Users and Groups - SAP Documentation

Background documentation Special Operating System Users and Groups

To protect database resources from unauthorized access with operating system commands, the database system uses special operating system users and groups. Only these operating system users and members of these operating system groups can access database resources using operating system commands.

Caution Caution

During installation, the installation program assigns the correct permissions to all your database directories and database files. Do not change the permissions of any database directories or files later, because this might render your database software installation unusable.

End of the caution.
Microsoft Windows

On Microsoft Windows, the database system uses the SDB Operators special operating system user group.

It is available as of SAP MaxDB version 7.7.

More information: Special Operating System User Group on Microsoft

Unix and Linux

On Unix and Linux, the database systems uses the special operating system user <sdb_user> and the special operating system groups <sdba_group> and support group.

They are available as of SAP MaxDB version 7.5.

More information: Special Operating System Users and Groups on Unix and Linux

More Information

SAP MaxDB Security Guide, Data Storage Security


-826: Duplicate statement name - SAP Documentation

Background documentation -826: Duplicate statement name

Explanation

The name was already specified for a statement.

User Response

Rename the statement.


-10506: Result set type is READ_ONLY but row set type is UPDATABLE - SAP Documentation

Background documentation -10506: Result set type is READ_ONLY but row set type is UPDATABLE

Explanation

A RowSet could not be generated, because while the corresponding SQL statement allows updates (modifications), the result set type does not.

User Response

Result sets that cannot be modified can only be generated using special SELECT statements. The following options are available:

  • Alter the SQL statement

  • Set the result set type to CONCUR_READONLY using the SQLDBC_Statement::ConcurrencyType or SQLDBC_PreparedStatement::ConcurrencyType method. This generates a read-only result set.


-28515: OMS Version already open - SAP Documentation

Background documentation -28515: OMS Version already open

Explanation

When liveCache called omsOpenVersion, it established that the addressed OMS version was already opened by a competing task.This OMS version cannot be opened until the task closes this version and ends the transaction.

User Response


-23055: Connection failed - SAP Documentation

Background documentation -23055: Connection failed

Explanation

You were unable to connect to the database instance.

User Response

Check the status of the database instance.


Updating SQL Optimizer Statistics - SAP Documentation

Procedure documentation Updating SQL Optimizer Statistics

The database system needs the SQL Optimizer statistics to determine the optimal search strategy for accessing data when executing complex SQL statements.

Recommendation Recommendation

Update the statistics once a week.

Update the statistics also in the following cases:

  • If the size proportions or values in the database tables have changed significantly

  • If you have upgraded the database (for example, from version 7.6 to version 7.7)

Update the statistics at a time of minimal work load.

End of the recommendation.

Prerequisites

  • You are logged on to the database as database system administrator or as a DBM operator with server authorization for accessing an SQL session.

    More information: Glossary, Server Permission

  • The database is in the ONLINE operational state.

Procedure

Updating Statistics for a Specific Table

  1. In the context menu of the table, choose Definition.

  2. Open the Optimizer Statistics tab page.

  3. Choose Update in the context menu of the Table Statistics field.

  4. Define the sample type and sample size that you want the system to use to generate the statistics.

    Sample Type and Size for Updating the SQL Optimizer Statistics

    Number of Data Records (Sample Type Rows)

    Proportion of Data Records as Percentage of all Data Records in the Table (Sample Size Percent)

    Description

    0

    0

    The system does not update any statistics for the table.

    0 < Number of data records < Number of data records in the table

    The default value for the sample size is 20,000 data records.

    0 < Percentage of data records < 100 %

    For large tables (> 1,000,000 data records) in SAP systems, we recommend a sample size of 5 %.

    The system uses the sample size specified to estimate the statistics.

    Number of all data records in the table

    100 %

    The system calculates the statistics. This usually takes much longer than an estimation using a sample.

    Note Note

    You defined default values when you created the table. To change these default values, change the table properties (in the Miscellaneous tab page).

    More information: Changing Table Properties

    End of the note.

    The system updates the table statistics.

    Optimizer Statistics

    Property

    Description

    Columns and Indexes

    Columns and indexes

    Distinct Values

    Estimated number of lines in the table

    Page Count

    Estimated table size (in pages)

    This size affects which search strategy is selected by the system.

    More information: SQL Optimizer, Search Strategies

    Last Statistics Update

    Time of the last statistics update
Activating or Deactivating Automatic SQL Optimizer Statistics Update for All Tables

See Activating or Deactivating the Automatic SQL Optimizer Statistics Update

More Information

  • Analyzing SQL Statements (EXPLAIN)

  • Database Administration, SQL Optimizer Statistics

  • SAP Note 927882


-24957: ERR_NOUSER - required user not set - SAP Documentation

Background documentation -24957: ERR_NOUSER - required user not set

Explanation

You tried to execute a DBM command relating to user data in the SAP application which is stored in the DBM server for this database instance. However, this user data is not on the DBM server.

User Response

First, save the necessary user data and execute the DBM command once again. Alternatively, you can enter the user name and password explicitly with the DBM command.n the Database Manager GUI, use the command line dialog for entering DBM commands.


-24939: ERR_LASTREG - cannot delete last registration of instance - SAP Documentation

Background documentation -24939: ERR_LASTREG - cannot delete last registration of instance

Explanation

The last registration of a database instance cannot be deleted using the DBM command.

User Response

To delete the database instance, use the DBM command db_drop. When you delete a database instance, all of its data, including its configuration, is deleted.


SAP Library - Concepts of the Database System

Start Level 1 Node: Concepts of the Database System Concepts of the Database System End Level 1 Node: Concepts of the Database System
Start Level 2 Node: What Is an SAP MaxDB Database? What Is an SAP MaxDB Database? End Level 2 Node: What Is an SAP MaxDB Database?
Start Level 3 Node: SAP liveCache Technology SAP liveCache Technology End Level 3 Node: SAP liveCache Technology
Start Level 3 Node: Demo Database Demo Database End Level 3 Node: Demo Database
Start Level 4 Node: Objects in the HOTEL Schema Objects in the HOTEL Schema End Level 4 Node: Objects in the HOTEL Schema
Start Level 2 Node: Database Tools Database Tools End Level 2 Node: Database Tools
Start Level 2 Node: Interfaces Interfaces End Level 2 Node: Interfaces
Start Level 2 Node: Technical System Landscape Technical System Landscape End Level 2 Node: Technical System Landscape
Start Level 3 Node: Network Communication Network Communication End Level 3 Node: Network Communication
Start Level 3 Node: Architecture of the Database Tools Architecture of the Database Tools End Level 3 Node: Architecture of the Database Tools
Start Level 3 Node: Architecture of the Interfaces Architecture of the Interfaces End Level 3 Node: Architecture of the Interfaces
Start Level 2 Node: Data Definition, Query, and Manipulation Data Definition, Query, and Manipulation End Level 2 Node: Data Definition, Query, and Manipulation
Start Level 3 Node: SQL SQL End Level 3 Node: SQL
Start Level 3 Node: Transactions Transactions End Level 3 Node: Transactions
Start Level 3 Node: Locks Locks End Level 3 Node: Locks
Start Level 4 Node: Isolation Level Isolation Level End Level 4 Node: Isolation Level
Start Level 2 Node: How Databases Log Data Changes How Databases Log Data Changes End Level 2 Node: How Databases Log Data Changes
Start Level 3 Node: Example: Restart Example: Restart End Level 3 Node: Example: Restart
Start Level 3 Node: Example: Consistent View Example: Consistent View End Level 3 Node: Example: Consistent View
Start Level 2 Node: How Databases Store Data and Log Entries How Databases Store Data and Log Entries End Level 2 Node: How Databases Store Data and Log Entries
Start Level 3 Node: Working Memory Areas Working Memory Areas End Level 3 Node: Working Memory Areas
Start Level 3 Node: Volumes (Permanent Storage) Volumes (Permanent Storage) End Level 3 Node: Volumes (Permanent Storage)
Start Level 3 Node: Data Area Data Area End Level 3 Node: Data Area
Start Level 3 Node: Log Area Log Area End Level 3 Node: Log Area
Start Level 3 Node: Savepoint Savepoint End Level 3 Node: Savepoint
Start Level 3 Node: Logical Access Structures Logical Access Structures End Level 3 Node: Logical Access Structures
Start Level 4 Node: B* Trees for Tables with LOB Columns B* Trees for Tables with LOB Columns End Level 4 Node: B* Trees for Tables with LOB Columns
Start Level 4 Node: B* Trees for Tables with Indexes B* Trees for Tables with Indexes End Level 4 Node: B* Trees for Tables with Indexes
Start Level 4 Node: Rebalancing Rebalancing End Level 4 Node: Rebalancing
Start Level 4 Node: Example: SELECT Statement Example: SELECT Statement End Level 4 Node: Example: SELECT Statement
Start Level 4 Node: Example: INSERT Statement Example: INSERT Statement End Level 4 Node: Example: INSERT Statement
Start Level 4 Node: Example: DELETE Statement Example: DELETE Statement End Level 4 Node: Example: DELETE Statement
Start Level 4 Node: Example: UPDATE Statement Example: UPDATE Statement End Level 4 Node: Example: UPDATE Statement
Start Level 3 Node: Converter Converter End Level 3 Node: Converter
Start Level 3 Node: Repositories Repositories End Level 3 Node: Repositories
Start Level 2 Node: Operating System Functions and Resources Used by Databases Operating System Functions and Resources Used by Databases End Level 2 Node: Operating System Functions and Resources Used by Databases
Start Level 3 Node: Services Services End Level 3 Node: Services
Start Level 3 Node: Processes Processes End Level 3 Node: Processes
Start Level 3 Node: Threads Threads End Level 3 Node: Threads
Start Level 4 Node: Load Balancing Between User Kernel Threads Load Balancing Between User Kernel Threads End Level 4 Node: Load Balancing Between User Kernel Threads
Start Level 3 Node: Tasks Tasks End Level 3 Node: Tasks
Start Level 4 Node: Task Switching Task Switching End Level 4 Node: Task Switching


-839: Invalid macro value - SAP Documentation

Background documentation -839: Invalid macro value

Explanation

An error occurred when substituting the macro.

User Response

Specify the macro value in accordance with the syntax.


-4010: Unknown MAPCHAR SET name - SAP Documentation

Background documentation -4010: Unknown MAPCHAR SET name

Explanation

There is no MAPCHAR set of the specified name.

User Response

You can display a list of existing Mapchar sets using a QUERY statement based on the DOMAIN.MAPCHARSETS system table. Change the name in the SQL statement accordingly.


-25352: Errors analyzing LOB file information. See Loader server log file for more information - SAP Documentation

Background documentation -25352: Errors analyzing LOB file information. See Loader server log file for more information

Explanation

Error in the Loader command for exporting data. This error message is only a summary of the error. The error messages that preceded this message are listed in the log file.

User Response

Check the error messages. Correct the command and then re-execute it.


Database Studio - SAP Documentation

Background documentation Database Studio

Database Studio is a database tool with which you can manage SAP MaxDB databases of version 7.5 and higher.

Note Note

From SAP MaxDB Version 7.7 onwards, Database Studio replaces the database tools Database Manager GUI and SQL Studio and also offers additional functions (such as a GUI for the Loader program).

End of the note.

You can use Database Studio on all operating systems supported by the database system. It is a component of the SAP MaxDB software. Database Studio runs on the Eclipse platform.

This Database Studio documentation is a reference manual for the functions of Database Studio. For a comprehensive description of administration tasks that a database administrator must carry out, use the Database Administration documentation. There are several ways of accessing functions in Database Studio. This description focusses how to access Database Studio's functions using the context menu.

Prerequisites

  • You have installed a Java runtime environment, version ≥ 5.

  • The global listener is running.

    Database Studio automatically starts the global listener. You only need to manually start the global listener if it is has been stopped while you were working with Database Studio.

    More information: Global Listener and X Servers, Starting the Global Listener and/or Installation-Specific X Servers

  • On Microsoft Windows, the operating system user who is working with Database Studio is a member of the special operating system user group SDB Operators.

    Note Note

    If you are the first operating system user to start Database Studio after the installation and you want to use local user management, on Microsoft Windows you also need to be a member of the Local Administrators group.

    End of the note.

    On Unix and Linux, the operating system user who is working with Database Studio is a member of the special operating system user group <sdba_group>.

    More information: Database Administration, Special Operating System Users and Groups


-10320: LOB already closed for parameter/column (<number>) - SAP Documentation

Background documentation -10320: LOB already closed for parameter/column (<number>)

Explanation

The SQLDBC_LOB::putData or SQLDBC_LOB::getData method that was called could not be executed, because the LOB object belonging to parameter/column <number> was already closed using the SQLDBC_LOB::close method.

User Response

To open the LOB object, execute the SQLDBC_PreparedStatement::execute method again.


Restoring Databases - SAP Documentation

Procedure documentation Restoring Databases

After a database failure, for example due to a hardware error, you can restore your database or revert it to an earlier state by importing data backups and log backups from data carriers.

Note that if you need to import a lot of data, restoring the database can take quite a long time. During restoring, the database is not available to users. For information about how to make the database available for users more quickly, see Restoring from a Group of Parallel Data Carriers and Replication and High Availability.

When it starts the restore process, the database system first attempts to import redo log entries still present in the log area. If you want to prevent this and force the deletion of all redo log entries in the log area, initialize the log area before starting to recover your database (this is a part of the restore procedure in Database Studio). More information: Initializing Databases

Prerequisites

  • You have the data and log backups for the database.

    More information:

    • Backing Up Data

    • Backing Up Log Entries

  • If you want to restore the database using data carriers on a remote computer (not the database computer), then additional preparations may be necessary.

    More information: Backing Up and Restoring Data with Remote Computers

  • If you used a third-party backup tool to create your backups, use that tool for the restore process as well.

    More information: Using Third-Party Backup Tools

Procedure

To restore a database, use Database Studio or Database Manager CLI.

  1. Display the backup history and determine both the last complete and incremental data backup.

    More information:

    Database Studio, Opening the Backup History

  2. Import the last complete data backup.

    Note Note

    If you have initialized the database before the restore process, then overwrite all original database user information (database system administrators and users, but not DBM operators) with the information in the data backup. This is done when the data backup is imported. If you have changed the database user information after creation of the data backup, then these changes are lost when the data backup is imported.

    End of the note.

    If necessary, import the last incremental data backups and log backups as well.

    The backups to be imported must, in their entirety, contain all the contents of the database without any gaps. The database system can only automatically recover the last log entries still in the log area if the log volumes are still intact. If the log volumes still contain all the log entries since the last data backup import, it is enough to restart the database after importing the data backup. The system then imports the content of the log area. If you need to import more log backups after the data backup(s), the database system recognizes the page starting from which the missing content can be imported from the log area. The log backup import terminates at this point, the system recovers the remaining log pages from the log area and automatically transfers the database to the ONLINE operational state.

    It is also possible to restore the database only as far as a certain consistent state before the error occurred.

    More information:

    Database Studio, Restoring Databases

  3. If necessary, recreate any damaged indexes.

    More information:

    • Database Studio, Recreating Damaged Indexes

    • Database Manager CLI, sql_recreateindex

    • Database Administration in CCMS, Index Analysis

Example

  1. During normal operation, you back up your database using complete and incremental data backups and log backups.

    This graphic is explained in the accompanying text.

    Database Backup: Complete and Incremental Data Backups and Log Backups (Example)

  2. After a system failure, you recover your database.

    You can choose between different recovery paths.

    This graphic is explained in the accompanying text.

    Database Recovery: Different Recovery Paths (Example)

    Note that after you have restored log backups, you can no longer restore incremental data backups.


ROLEPRIVILEGES - SAP Documentation

Example documentation ROLEPRIVILEGES

Use of the system tableDOMAIN.ROLEPRIVILEGES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Define and use roles. Proceed as described in SQL Tutorial, Roles.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table ROLEPRIVILEGES to determine the following database information, among other things:

  • All privileges granted directly to the role ROLE_1 for the CITY table. Privileges granted indirectly, that is, granted for the CITY table via a different role, are not displayed.

    SELECT privileges

    FROM DOMAIN.ROLEPRIVILEGES

    WHERE grantee = 'ROLE_1'

    AND schemaname = 'HOTEL'

    AND tablename = 'CITY'

  • All roles that were granted to ROLE_4. Specification of who granted the role.

    SELECT role, grantor

    FROM DOMAIN.ROLEPRIVILEGES

    WHERE grantee = 'ROLE_4'

    AND role IS NOT NULL

More Information

All roles: see ROLES

Role of a database user that is automatically activated when a database session is opened: see ROLES

All active roles in the current database session: see SESSION_ROLES


License - SAP Documentation

Background documentation License

Information about the license conditions that apply when using SAP MaxDB outside of SAP systems is displayed when you download the installation packages from the SAP MaxDB website at https://www.sdn.sap.com/irj/sdn/maxdb.


-28603: Requested packet size to transfer an object is too big - SAP Documentation

Background documentation -28603: Requested packet size to transfer an object is too big

Explanation

The packet size allowed in the communication channel is too small to accept the object.

User Response

Increase the packet size for the communication channel.


-1011: Too many correlated tables - SAP Documentation

Background documentation -1011: Too many correlated tables

Explanation

The number of correlated tables used within the correlated subqueries must not exceed 16.

User Response

Try to formulate the SQL statement in such a way that 16 correlated tables are sufficient. Should this not be possible you have to use several SQL statements to achieve the desired effect.


Backing Up Data - SAP Documentation

Procedure documentation Backing Up Data

If a hardware problem or other error occurs, you return your database to a consistent state (restore) using backups. To speed up the backup process, you can back up data to several data carriers in parallel.

Recommendation Recommendation

Regularly back up the data from your database to data carriers.

Use parallel backups whenever possible.

End of the recommendation.

Prerequisites

Recommendation Recommendation

Check the database structures of your database before carrying out a complete data backup.

More information: Checking Database Structures

End of the recommendation.

  • You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

    More information: Glossary, Server Permission

  • You have created a backup template.

    If you want to backup to several data carriers in parallel, you need a backup template for parallel backups.

    More information: Defining Backup Templates

  • The database is in the ONLINE or ADMIN operational state.

  • If you are using a third-party backup tool, connect it.

    More information: Installation Manual, Connecting Third-Party Backup Tools

  • Only on Microsoft Windows:

    If you want to back up data to a data carrier on a remote computer, perform the steps described in Database Administration, Backing Up and Restoring Data with Remote Computers.

Note Note

You cannot start an incremental data backup during a complete data backup, or a complete data backup during an incremental data backup.

End of the note.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Administration Tasks [image] Backup...

  3. Choose the backup type:

    • Complete Data Backup:

      You back up the entire data area.

    • Incremental Data Backup:

      You back up all data in the data area that has been changed since the last complete backup.

  4. Select the backup template.

  5. Start the backup.

    The system shows the current status of the backup procedure in the status window.

    On the Backup Results tab page, the system shows the data carriers that have been used up to now.

Result

In the Actions view, the system shows the backup steps performed so far.

More information: Actions (View)

Example

You perform a complete data backup with the following backup template:

Example of a Backup Template for a Complete Data Backup
Property | Value
Name of the backup template | COM
Backup type | COMPLETE DATA
Data carrier type | FILE
Data carrier (Device/File) | DEMODB_COM Note that if you do not enter an absolute path, then the database system uses the run directory of the database, see Run directory. Example: C:\ProgramData\sdb\globaldata\wrk\DEMODB\DEMODB_COM
Size of data carrier | No restriction (blank or 0)
Block size | 8 pages
Overwritable | Yes

More Information

Database Administration, Backing Up Data


-7023: Dropping of all columns not allowed - SAP Documentation

Background documentation -7023: Dropping of all columns not allowed

Explanation

You have attempted to drop all the columns in a table. This is not allowed.

User Response

  1. Delete the table using the DROP TABLE statement. This deletes all view tables, privileges, indexes, referential CONSTRAINT definitions, and so on that depend on this table.

  2. Afterwards, use the CREATE TABLE statement to define a new table with the same name.


SESSIONS - SAP Documentation

Example documentation SESSIONS

Use of the system table SYSINFO.SESSIONS

Prerequisites

You can use the DEMODB demo database. Start the Database Studio and log onto the demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table SESSIONS to determine the following database information, among other things:

  • All database users currently logged on and the name of the computer on which the application is running

    SELECT username, applicationnode

    FROM SYSINFO.SESSIONS

    WHERE own = 'YES'

  • Parameters of your database session

    SELECT sqlmode, isolationlevel, timeout, sessionid

    FROM SYSINFO.SESSIONS

    WHERE own = 'YES'

More Information

All defined database users: See USERS


-900: Data area full - SAP Documentation

Background documentation -900: Data area full

Explanation

The data area of the database is full.

User Response

Extend the data area by adding data volumes. The SQL statements started beforehand will be finished afterwards.

More Information

Database Studio, Adding Data Volumes


Exporting Data and/or Information from the Database Catalog - SAP Documentation

Procedure documentation Exporting Data and/or Information from the Database Catalog

Procedure

Exporting Databases
Prerequisites

  • The database is in the ONLINE operational state.

  • You are logged in to the database as the database system administrator.

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose [image] Export/Import [image] Export...  .

  3. Select your export options.

    Options for Exporting Databases

    Property

    Description

    Export table definition

    The table definitions of the selected tables from the database catalog are exported.

    Export table data

    The application data from the selected tables is exported.

    Format

    Export format

    More information: Loader, PAGES, RECORDS

    Details

    • Package root path

    Directory where the system stores the export data.

  4. Select the tables that you want to export.

    Note Note

    You can only export tables that contain application data. You cannot export system tables or view tables.

    End of the note.

  5. To start the export, choose Finish.

Exporting the Database Objects of Users
Prerequisites

  • The database is in the ONLINE operational state.

  • A Database Studio login has been created for the user whose database objects you want to export.

  • To export tables in PAGES format, the user must be the owner of the tables.

Procedure

  1. Select the user in the explorer tree.

  2. In the context menu of the user, choose [image] Export/Import [image] Export...  .

  3. Select your export options.

    Options for Exporting the Database Objects of Users

    Property

    Description

    Export table definition

    The table definitions of the selected tables from the database catalog are exported.

    Export table data

    The application data from the selected tables is exported.

    Format

    Export format

    More information: Loader, PAGES, RECORDS

    Details

    • Package root path

    Directory where the system stores the export data.

  4. Select the tables that you want to export.

    Note Note

    You can only export tables that contain application data. You cannot export system tables or view tables.

    End of the note.

  5. To start the export, choose Finish.

Exporting Schemas
Prerequisites

  • The database is in the ONLINE operational state.

  • You are logged in to the database as the database user who is the owner of the schema.

  • To export tables in PAGES format, the logged in user must be the owner of the tables.

Procedure

  1. In the explorer tree, select the schema that you want to export.

  2. In the context menu of the schema, choose [image] Export/Import [image] Export...  .

  3. Select your export options.

    Options for Exporting Schemas

    Property

    Description

    Export table definition

    The table definitions of the selected tables from the database catalog are exported.

    Export table data

    The application data from the selected tables is exported.

    Exclude tables from data export

    Choose this option if you want to exclude tables from the export in the next step.

    Format

    Export format

    More information: Loader, PAGES, RECORDS

    Details

    • Package root path

    Directory where the system stores the export data.

  4. If you chose Exclude tables from data export in the previous step, now deselect the tables that you do not want to export.

    Note Note

    You can only export tables that contain application data. You cannot export system tables or view tables.

    End of the note.

  5. To start the export, choose Finish.

Exporting Tables
Prerequisites

  • The database is in the ONLINE operational state.

  • You are logged in to the database as a database user who is authorized to access the tables that you want to export.

  • The table that you want to export contains application data. You cannot export system tables or view tables.

  • To export a table in PAGES format, the logged in user must be the owner of the table.

Procedure

  1. In the explorer tree, select the table that you want to export.

  2. In the context menu of the table, choose [image] Export/Import [image] Export...  .

  3. Select your export options.

    Options for Exporting Tables

    Property

    Description

    Export table definition

    The table definitions of the selected table from the database catalog are exported.

    Export table data

    The application data from the selected table is exported.

    Format

    Export format

    • CSV, FWV

      More information: Loader, CSV, FWV, FWV BINARY

    • PAGES, RECORDS: SAP MaxDB-internal formats

      More information: Loader, PAGES, RECORDS

    Details

    • Package root path

    Directory where the system stores the export data.

  4. To start the export, choose Finish.

Result

Default export directories:

  • Microsoft Windows:

    <user_home>\sdb\loader\packages\export\<computer_name>\<database_name>\<time_stamp>\

    Example Example

    C:\Users\anna\sdb\loader\packages\export\PARMA\DEMODB\20061220093349\

    End of the example.

  • Unix and Linux:

    <user_home>/.sdb/loader/packages/export/<computer_name>/<database_name>/<time_stamp>/

The logical package structure is displayed under [image] My Repository [image] Packages [image] .

  • To display the properties of a package, choose Properties in the context menu of the package.

  • To execute the export again using an existing package definition, choose Execute in the context menu of the package.

    Note that the new export data overwrites the old export data, but the package name is not changed (it still contains the old timestamp).

More Information

  • Importing Data and/or Information from the Database Catalog

  • Transporting Data and/or Information from the Database Catalog

  • Database Administration, Exporting and Importing

For a detailed description of all prerequisites and options, see the Loader documentation: Exporting: Loader Commands.


-10803: Allocation of shared memory failed (<description>) - SAP Documentation

Background documentation -10803: Allocation of shared memory failed (<description>)

Explanation

The database system could not create shared memory, or access to the shared memory was denied. This error can occur if operating system permissions were assigned incorrectly.<description> provides more information about the error.

User Response

  • If you are using UNIX or Linux, check whether the $HOME/.sdb directory exists and whether the user who is logged on to the operating system has access to this directory.

  • If a file is specified in <description>, check whether this file exists and whether the user who is logged on to the operating system has read and write privileges for this file.

  • If memory size is specified in <description>, check whether there is enough free space on the hard drive.


-8052: Trigger dropped during migration; check view migrationerrorprotocol - SAP Documentation

Background documentation -8052: Trigger dropped during migration; check view migrationerrorprotocol

Explanation

When the database catalog was migrated to UNICODE, some triggers could not be recreated. The database system created replacements for these triggers.

User Response

In the MIGRATIONERRORPROTOCOL system table, check the CREATE statements for the triggers that could not be recreated. The CREATE statement for a trigger can be incorrect for the following reasons (for example):

  • The trigger is referencing a table or view that was renamed or does not exist any more.

  • The syntax within the trigger has changed.

You can delete the replacement trigger once you have fixed the original one.


Maintenance Actions in the DBA Cockpit (SAP Library - SAP MaxDB Library)

 Start of Content Area

Background documentation Maintenance Actions in the DBA Cockpit Locate the document in its SAP Library structure

The DBA Cockpit provides a set of actions to monitor and to maintain the database. To be able to perform these actions, the SAP user requires some additional authorizations.

The maintenance actions provided in the DBA Cockpit set locks to prevent parallel processing. All changes to the database are recorded in an audit log file.

Authorization Check

When you start the DBA Cockpit or change to another system in the DBA Cockpit, an authorization check is performed.

Granting of Database Permissions

To be able to access the database, the user used for remote monitoring must at least have sufficient authorizations.

· Local systems use the connect user for monitoring tasks. This user already has sufficient permissions. If more authorizations are required for administrative actions, a second connection using the database administration user is used.

· Systems monitored via remote database connections use the user specified for the database connections. This user must have sufficient authorizations.

Locking of Actions

For each maintenance action that you have selected using the DBA Cockpit, a lock is set for the system being monitored. All locks are released when you exit the DBA Cockpit or when you change to another system.

Auditing of Maintenance Actions

The following only applies to Oracle and IBM DB2 for Linux, UNIX, and Windows.

When you make changes that affect database objects such as database configuration parameters or tablespaces, an audit log is written. You can display this audit log in the DBA Cockpit.

For more information, see Displaying the Audit Log.

End of Content Area


Performance - SAP Documentation

Background documentation Performance

The following user menus in the DBA Cockpit provide information about performance:

  • Activities Overview

  • SAP liveCache Technology: OMS Monitor

  • SAP liveCache Technology: Class Containers

  • SAP liveCache Technology: Schemas

  • SAP liveCache Technology: Monitoring Statistics

  • Transactions

  • SAP liveCache Technology: OMS Versions

  • SAP liveCache Technology: OMS Locks

  • Performance Warehouse

  • Database Analyzer

  • SQL Locks

  • Kernel Threads

  • I/O Operations

  • SQL Performance

More Information

Executing Performance Analysis in CCMS

DBA Cockpit: SAP MaxDB


Selecting and Arranging Rows - SAP Documentation

Background documentation Selecting and Arranging Rows

You can select and arrange specific rows in the query.

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Selecting Specific Rows

To select specific rows, use the WHERE clause.

SELECT zip, name

  FROM hotel.city

    WHERE name = 'Seattle'

Selecting the rows with the city name Seattle

Result

ZIP | NAME
20005 | Seattle
20019 | Seattle
20037 | Seattle

See also: SQL Reference Manual, WHERE Clause

SELECT rowno, cno, title, firstname, name

  FROM hotel.customer

WHERE ROWNO <= 5

Selecting the first five rows and numbering the rows

Result

ROWNO | CNO | TITLE | FIRSTNAME | NAME
1 | 3000 | Mrs | Jenny | Porter
2 | 3100 | Mr | Peter | Brown
3 | 3200 | Company | ? | Datasoft
4 | 3300 | Mrs | Rose | Brian
5 | 3400 | Mrs | Mary | Griffith

See also: SQL Reference Manual, ROWNO Predicate (rowno_predicate)

Arranging the Rows

To arrange the rows, use the ORDER clause that specifies the order in which the rows are to appear.

SELECT name, firstname

  FROM hotel.customer

    WHERE ROWNO <= 5

    ORDER BY name

Sorting the first five rows in alphabetical order by customer name

Result

NAME | FIRSTNAME
Brian | Rose
Brown | Peter
Datasoft | ?
Griffith | Mary
Porter | Jenny

SELECT name, firstname

  FROM hotel.customer

    WHERE ROWNO <= 5

    ORDER BY name DESC

Sorting the first five rows alphabetically by customer name, in descending order

Result

NAME | FIRSTNAME
Porter | Jenny
Griffith | Mary
Datasoft | ?
Brown | Peter
Brian | Rose

Instead of the sort column name, you can also specify the position number in the output list (that is, ORDER BY 1 DESC instead of ORDER BY name DESC).

Unless otherwise stated, sort columns are always sorted in ascending order. A sort column does not necessarily also have to be an output column.

See also: SQL Reference Manual, ORDER Clause (order_clause)

Arranging Rows by More Than One Column

If you want to stagger the sort sequence, you can specify the sort column names in order of importance; each name can be assigned the add-on ASC or DESC, or both.

SELECT zip, name

  FROM hotel.city

    WHERE ROWNO < 5

    ORDER BY name, zip DESC

Displaying the city/place data, sorted by name and in descending order by zip code

Result

ZIP | NAME
12203 | Albany
11788 | Long Island
10580 | New York
10019 | New York
Displaying Tables Without Duplicate Rows

You can prevent redundant information from being displayed in the query result. Specify the keyword DISTINCT after the keyword SELECT.

SELECT DISTINCT name, state

  FROM hotel.city

    ORDER BY name

Displaying the place/city data consisting of a different name and state

Result

NAME | STATE
Albany | NY
Chicago | IL
Cincinnati | OH
Clearwater | FL
Dallas | TX
Daytona Beach | FL
Deerfield Beach | FL
Detroit | MI
Hollywood | CA
Irvine | CA
Long Beach | CA
Long Island | NY
Los Angeles | CA
New York | NY
Palm Spring | CA
Portland | OR
Rosemont | IL
Santa Clara | CA
Seattle | WA
Silver Spring | MD

For comparison purposes, execute the SQL statement without specifying the keyword DISTINCT.

See also: SQL Reference Manual, DISTINCT Specification (distinct_spec)

More Information

SQL Reference Manual, QUERY Expression (query_expression), Selected Column (select_column), Table Expression (table_expression)

More examples for Data Query


Displaying Indexes - SAP Documentation

Procedure documentation Displaying Indexes

You display information about damaged, deactivated, and unused indexes.

Prerequisites

  • You are logged on to the database as a database user.

  • You have the INDEX privilege for at least one table.

    More information: SQL Reference Manual, Privilege Specification (privilege_specification)

Procedure

  1. In the explorer, expand the schema to which the indexes belong.

  2. In the context menu of the Indexes folder, choose Show Indexes.

  3. Specify the indexes to be displayed:

    Indexes: Display Criteria

    Option

    Description

    None

    All indexes from the selected schema are displayed.

    Only Bad Indexes

    Only damaged indexes are displayed.

    Only Disabled Indexes

    Only disabled indexes are displayed.

    Only Unused Indexes

    Only unused indexes are displayed (INDEXUSED=0).

  4. Choose Refresh (Refresh).

Result

Indexes: Information (Selection)
Property | Description
Type | Indicates whether or not the index is Unique
Index Used | Indicates how often the system has used the index
Index Used Reset Time | Time when the counters for index use were reset
File State | Indicates whether the index is damaged
Disabled | Deactivated

More Information

  • Creating Indexes

  • Changing Index Properties

  • Activating or Deactivating Indexes

  • Recreating Damaged Indexes

  • Deleting Indexes


-28801: Wrong class - SAP Documentation

Background documentation -28801: Wrong class

Explanation

An incorrect container ID was used to access an object.This is an internal liveCache error that cannot be caused by incorrect handling of the OMS API.

User Response

Contact Support.


Error While Migrating the Catalog to Unicode - SAP Documentation

Background documentation Error While Migrating the Catalog to Unicode

If an error occurs during catalog migration to Unicode, the system changes the operational status of the database to OFFLINE and you receive an error message. For information about the cause of the error, see the log file knldiag.err.

Activities

After an interrupted migration you only have the option of using the latest complete data backup to return to the status the database was in before the migration.

To do this, use the parameter file to re-create the database from the data backup, and then import the data from the backup into this database.

More Information

Database Administration, Log Files


-28812: Invalid iterator - SAP Documentation

Background documentation -28812: Invalid iterator

Explanation

Accessing an iterator failed, since it is invalid. E.g. the next element of an iterator is tried to be read but it is already on the last element.

User Response

Make sure that before an operation is conducted on an iterator that it has been checked as valid (for this operation).


-8048: Version of component must be compatible with kernel version - SAP Documentation

Background documentation -8048: Version of component must be compatible with kernel version

Explanation

You tried to use a component whose version number is much smaller than that of the database kernel used. Since the interface between the components and the database kernel has changed significantly, this is not possible.

User Response

Use a component whose version number corresponds to that of the database kernel used.


-825: Duplicate field name in record - SAP Documentation

Background documentation -825: Duplicate field name in record

Explanation

A name is used twice in an SQL record definition to specify components.

User Response

Rename one of the record components.


-10300: Invalid parameter index [<number>] - SAP Documentation

Background documentation -10300: Invalid parameter index [<number>]

Explanation

The method that was called could not be executed, because the value <number> entered for the parameter number is invalid.

User Response

Choose a valid value for the parameter number in the Index argument of the SQLDBC_PreparedStament::bindParameter or SQLDBC_ResultSet::bindColumn method.


SAP Library - Utilities

Start Level 1 Node: Utilities Utilities End Level 1 Node: Utilities
Start Level 2 Node: Global Listener and X Servers Global Listener and X Servers End Level 2 Node: Global Listener and X Servers
Start Level 3 Node: Starting the Global Listener and/or Installation-Specific X Serv Starting the Global Listener and/or Installation-Specific X Serv End Level 3 Node: Starting the Global Listener and/or Installation-Specific X Serv
Start Level 3 Node: Stopping the Global Listener and/or Installation-Specific X Serv Stopping the Global Listener and/or Installation-Specific X Serv End Level 3 Node: Stopping the Global Listener and/or Installation-Specific X Serv
Start Level 2 Node: XUSER XUSER End Level 2 Node: XUSER
Start Level 3 Node: Using a User Key when Logging On to a Database Using a User Key when Logging On to a Database End Level 3 Node: Using a User Key when Logging On to a Database
Start Level 3 Node: Creating or Changing XUSER entries Creating or Changing XUSER entries End Level 3 Node: Creating or Changing XUSER entries
Start Level 3 Node: Displaying Data for XUSER Entries Displaying Data for XUSER Entries End Level 3 Node: Displaying Data for XUSER Entries
Start Level 3 Node: Deleting XUSER Entries Deleting XUSER Entries End Level 3 Node: Deleting XUSER Entries
Start Level 3 Node: Importing XUSER Entries from a File Importing XUSER Entries from a File End Level 3 Node: Importing XUSER Entries from a File
Start Level 2 Node: XCONS XCONS End Level 2 Node: XCONS
Start Level 3 Node: XCONS Options for Displaying Information about the Database XCONS Options for Displaying Information about the Database End Level 3 Node: XCONS Options for Displaying Information about the Database


-10100: Invalid value for option <option> of SQLDBC_ConnectProperties - SAP Documentation

Background documentation -10100: Invalid value for option <option> of SQLDBC_ConnectProperties

Explanation

You entered a value that is not allowed for the <option> option of property SQLDBC_ConnectProperties for method SQLDBC_Connection::connect

User Response

Check the vaues that you entered.


dbm_trace - SAP Documentation

Background documentation dbm_trace

Use this command to activate or deactivate the trace function for DBM server. When you activate the function, the activities of the specified DBM server process are logged in detail.

The information is stored in a file named dbmsrv_<process_ID>.trace under the path <independent_data_path>/wrk/. If this directory cannot be determined by the system, the file is stored in the current working directory of DBM server.

Prerequisites

You have the DBInfoRead or DBFileRead server permission.

Structure

dbm_trace <option>

<option> :: = ON | OFF

Options
Option | Description
ON | The trace function for DBM server is activated
OFF | The trace function for DBM server is de-activated

Result

OK

In the event of errors, see Reply Format.


From 0 to 1999 - SAP Documentation

Background documentation From 0 to 1999

Database Kernel System Messages
0 | Success
100 | Row not found
200 | Duplicate key
250 | Duplicate secondary key
300 | Integrity violation
320 | View violation
350 | Referential integrity violated
360 | Foreign key integrity violation
400 | Lock collision
450 | Lock collision caused by pending locks
500 | Lock request timeout
600 | Work rolled back
650 | Work rolled back
680 | Work pending
700 | Session inactivity timeout (work rolled back)
710 | Session terminated by shutdown (work rolled back)
750 | Too many SQL statements (work rolled back)
1403 | Row not found


-10401: Conversion of parameter/column (<number>) would truncate data - SAP Documentation

Background documentation -10401: Conversion of parameter/column (<number>) would truncate data

Explanation

Explanation: The data (character or binary) for parameter/column <number> could not be read or inserted, because the length of the parameter or column is too small.

User Response

Perform one of the following actions:

  • Increase the host variable length that is bound to the parameter using the SQLDBC_PreparedStatement::bindParameter method or to the column using the SQLDBC_ResultSet::bindColumn method

  • Alter the SQL statement.

  • Alter the table definition.


Exporting: Loader Commands - SAP Documentation

Function documentation Exporting: Loader Commands

Loader can process a range of Loader commands and SQL statements, including Loader-specific commands for exporting data.

Prerequisites

Calling the Loader

Opening a Session: Loader Commands

Features

Syntax Syntax

  1. <export_command> ::=
  <export_db_command>
| <export_user_command>
| <export_schema_command>
| <export_table_command>
| <export_columns_command>
End of the code.

With the range of commands provided by Loader you can export a complete database or parts of it, such as user objects, schema objects, data from a table, or a set of column values from a table.

Importing

Importing: Loader Commands

Example

Loader Tutorial, Exporting

More Information

  • UPDATE COLUMNS Command

  • Syntax Rules: Sorted Alphabetically

    Syntax Rules: Sorted Semantically

  • Loader Commands and SQL Statements

Database Studio, Exporting Data and/or Information from the Database Catalog


Alert Monitor - SAP Documentation

Background documentation Alert Monitor

The Alert Monitor is part of the CCMS. It displays information about critical system events in SAP MaxDB and SAP liveCache databases.

Note Note

The Alert Monitor is only available in SAP systems.

End of the note.

More Information

Database Administration in CCMS, Alerts


-28534: Package must be recreated - SAP Documentation

Background documentation -28534: Package must be recreated

Explanation

The library assigned to the package was changed after the package was created.

User Response

Delete the package and create it again.


-4011: Unknown index name - SAP Documentation

Background documentation -4011: Unknown index name

Explanation

There is no named index with the specified name for the table being used.

User Response

You can display a list of existing indexes using a QUERY statement based on the DOMAIN.INDEXES system table. Change the index name in the SQL statement accordingly.


Messages - SAP Documentation

Background documentation Messages

This documentation explains the most important error messages and system messages displayed by the SAP MaxDB database system and recommends how you should deal with these messages (user action).

Every message has a unique message number that is assigned to a number range. You can use this number range to find out which component of the database system caused the error message to be displayed.

For more information about the database system, see Concepts of the Database System. For quick access to all documentation and an explanation of the most important terms, use the alphabetical Glossary.


-25021: Error switching connected user to <user_name> : <error_text> - SAP Documentation

Background documentation -25021: Error switching connected user to <user_name> : <error_text>

Explanation

An error has occurred with either the EXPORT DB or IMPORT DB Loader command.When exporting or importing data with the corresponding command, the Loader must switch the database user internally so it can process user-specific data. This internal changeover failed

User Response

Fix the cause of the error and re-execute the command.


-23051: Could not load system tables for SQL Studio - SAP Documentation

Background documentation -23051: Could not load system tables for SQL Studio

Explanation

The database instance does not contain the system tables needed for SQL Studio.

User Response

Load the system tables with Database Manager.If you receive the same error message again, contact Support.


SAP MaxDB Library - SAP Documentation

Background documentation SAP MaxDB Library

SAP MaxDB is a relational database system with which you can create, use, and manage SAP MaxDB databases. SAP MaxDB can handle a wide range of different types of information, which makes it a suitable database for diverse application scenarios.

SAP MaxDB is available for all SAP applications. However, you can also use it with your own applications or third-party applications.

You can find all the documentation about using SAP MaxDB as a stand-alone database system in this SAP MaxDB Library.

Installation and Upgrade Documentation
Title of the Documentation | Contents
Installation Manual | Installing, updating, and uninstalling the database software; Upgrading databases including the software
General SAP MaxDB Documentation
Title of the Documentation | Content
Database Administration | Tasks of a database administrator Information about creating and configuring a database, monitoring, backing up and recovering data, exporting and importing data, user administration, carrying out performance analyses, searching for errors, and developing database applications
SAP MaxDB Security Guide | Recommended security measures for the database system
Concepts of the Database System | Background information about the database system and the technical system landscape
Tools Documentation
Title of the Documentation | Contents
Database Studio | Tool for managing SAP MaxDB databases Note Note From database version 7.7, Database Studio replaces the database tools Database Manager GUI and SQL Studio, and it contains a GUI for the Loader database tool. End of the note.
Database Administration in CCMS: SAP MaxDB | Using the SAP system to analyze a SAP MaxDB database, for scheduling actions and for monitoring the database functions and alerts
Database Manager CLI | Command line tool for database administration
Loader | Tool for exporting and importing data and table definitions
SQLCLI | Command line tool for displaying and changing data in a database using SQL statements
Database Analyzer | Performance analysis tool for databases
Global Listener and X Servers | Communication servers of the SAP MaxDB database system
XUSER | Command line tool for storing user log-in data, which provides simplified logon to databases
XCONS | Command line tool (database console) for viewing information about a SAP MaxDB database, such as operating system resources being used by the database system, distribution and status of the database sessions, etc.
Interface Documentation
Title of the Documentation | Content
Java Manual | Description of the SAP MaxDB JDBC driver and programming interfaces for Database Manager and Loader Can be used for developing database applications with Java
ODBC Manual | Basics and special features of the SAP MaxDB ODBC driver
PHP Manual | Description of the SAP MaxDB PHP extension for developing database applications with PHP
Perl Manual | Description of the programming interfaces for SQL. Can be used for developing database applications with Perl
Python Manual | Description of the programming interfaces for SQL. Can be used for developing database applications with Python
ADO.NET Interface | Description of the SAP MaxDB ADO.NET interface Can be used for developing database applications with ADO.NET
WebDAV Servlet | Description of how to access a document store in a SAP MaxDB database using the SAP MaxDB WebDAV servlet
SQLDBC Manual | SQL database connectivity for developing applications and interfaces for SAP MaxDB
Tutorials
Title of the Documentation | Contents
SQL Tutorial | Examples for the Structured Query Language (SQL) used by the SAP MaxDB database system
Loader Tutorial | Examples for commands of the Loader tool for exporting and importing data
Reference Documentation
Title of the Documentation | Contents
SQL Reference Manual | SQL statements and their syntax Descriptions of system tables Special features of the SQL mode ORACLE
Messages | List of all messages in the database system: responses and error messages from the database kernel and the database tools Includes short explanations of possible causes of errors, and tips for the user on how to react.
Alphabetical Index
Title of the Documentation | Contents
Glossary | Alphabetical list of terms used in the database system with links to further documentation


-11106: No result set found. - SAP Documentation

Background documentation -11106: No result set found.

Explanation

You have called a MaxDB PHP function that requires a result set. However, the system was unable to find a result set.

User Response

Check whether a result set exists. If it does not, change your PHP script accordingly.


-10410: Date/time format is not supported for parameter/column (<number>) - SAP Documentation

Background documentation -10410: Date/time format is not supported for parameter/column (<number>)

Explanation

The SQLDBC interface does not support the date or time format configured for parameter/column <number>.

User Response

Use a valid date or time format for the data type of the parameter or host variables.

More Information

Reference Manual, datimeformat


Class Container Sizes - SAP Documentation

Procedure documentation Class Container Sizes

In the Space user menu of the DBA Cockpit, you can find, among other things, displays about the sizes of class containers.

The current table sizes are determined by a report and saved in a database table which forms the history of table sizes and table growth. You can view this data in the Class Container Sizes user menu.

Procedure

Determining Statistical Data

If necessary, you will have to determine the size of the class container. You have the following options to do this:

  • Schedule the action update class container statistics in the DBA planning calendar weekly. To schedule the action Update Class Container Statistics, proceed as described in Scheduling an Action.

  • You can update the class container sizes as a one-off. To do this, in the DBA Cockpit choose [image] Space [image] Class Container Sizes [image] . Choose the Update Class Container Statistics function to start a background job that updates the sizes.

The class container sizes are determined. The measurement data is logged in the table SDBCCMS.

Displaying Class Container Sizes

Once the sizes have been determined, you can display them as follows:

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Class Container Sizes [image] . You can choose the following displays, and can also display the information graphically:

  • Class Containers with Greatest Growth: You can set the comparison period, comparison interval, and the number of class containers displayed.

  • Largest Class Container You can set the date and the number of class containers displayed.

The following functions are available:

  • Toggle Aggregated/Unaggregated View

  • History of a Class: Select the desired class.

  • Delete Statistics Data: Deletion can be done manually by specifying a time period/date or automatically by specifying a time period (in weeks).

  • Update Class Container Statistics: Note that the class container information is saved only once a day. Any older daily statistics are overwritten.

More Information

Class Containers


SET Command - SAP Documentation

Background documentation SET Command

With this Loader command, you can define many properties of a Loader session and some properties of a database session. You can adjust the predefined values in the control parameters for Loader or database to suit your requirements.

Note Note

The new values are only valid for the current Loader or database session and must be restored if they are needed in subsequent sessions. You can modify the values with a new SET command or, with relevant Loader commands.

End of the note.

Structure

Syntax Syntax

  1. <set_command> ::=
  SET
| SET <bool_spec>
| SET <code_page_spec>
| SET <isolation_level_spec>
| SET <null_spec>
| SET <number_spec>
| SET BACKUPTOOL <backup_tool_spec>
| SET CODETYPE <standard_code_spec>
| SET CONFIGURATION <exclude_include>
| SET CSV '/<separator>/<delimiter>'
| SET CURRENT_SCHEMA = <schema_name>
| SET DATE <standard_date_mask>
| SET FORMAT <standard_date_mask>
| SET LOGFILEPATH '<loader_log_file_path>' [DELETELOGFILE]
| SET MAXERRORCOUNT <unsigned_integer>
| SET TIME <standard_time_mask>
| SET TIMESTAMP <standard_timestamp_mask>
| SET TRANSACTION SIZE <unsigend_integer>

<bool_spec> ::=
  BOOLEAN '<true_value>/<false_value>'

<code_page_spec> ::=
  CODEPAGE [<literal>]

<isolation_level_spec> ::=
  ISOLATION LEVEL <unsigned_integer>

<number_spec> ::=
  DECIMAL '/[<digit_grouping_symbol>]/<decimal_symbol>/'

<backup_tool_spec> ::=
  BACKINT
| NETWORKER
| TSM

<exclude_include> ::=
  EXCLUDE
| INCLUDE

<separator> ::=
  <character>

<delimiter> ::=
  <character>
End of the code.
SET

You can use the SET command without additional specifications. In this case the following log files are displayed:

  • Name and complete path of the Loader log file

  • Complete path to the directory in which Loader saves the packages that were created in transport mode

SET <bool_spec>

You can use syntax rule <bool_spec> (<bool_spec> ::= '<true_value>/<false_value>') to define the character string used in data streams to represent BOOLEAN values that are either exported from the database or imported into the database. true_value defines the character string for values that are true (default value: TRUE), false_value defines the character string for values that are false (default value: FALSE). The character strings can be up to 10 characters in length.

This setting applies to the entire Loader session, provided that the character string is not changed by another SET BOOLEAN command. You can change the current value for individual Loader commands by using the syntax element bool_spec to define the data format (field_format_spec).

SET <code_page_spec>

If you want to use a particular code page for converting CHAR data from ASCII to UCS2, you can specify the code page using the Loader SET command SET <code_page_spec> (<code_page_spec> ::= CODEPAGE [<literal>]). If you do not set a code page, default code page ISO-8859-1 is assumed.

Example Example

SET CODEPAGE "8859–14"- The code page 8859-14 is set.

SET CODEPAGE WINDOS-1252 - The code page WINDOWS-1252 is set.

SET CODEPAGE - The default code page of the Loader ISO-8859-1 is set.

End of the example.
Case 1: The code page for the conversion is a user-defined code page and is not yet contained in the system table CODEPAGE.

To make user-defined code pages accessible to Loader for conversions, you first have to load these code pages into the system table CODEPAGE. To do this, proceed as follows:

  1. In the user-specific configuration directory of Loader (Microsoft Windows: <drive>:\Documents and Settings\<user_id>\Application Data\sdb\loader\config, UNIX: $HOME/sdb/loader/config) create a file <literal>.txt. This file has to be formatted in the same way as the files that are provided by the Unicode consortium at ftp://ftp.unicode.org/Public/MAPPINGS/.

    Example Example

    ...

    # Format:  Three ab-separated columns

    #    Column #1 is the ISO/IEC 8859-8 code (in hex as 0xXX)

    #    Column #2 is the Unicode (in hex as 0xXXXX)

    #    Column #3 the Unicode name (follows a comment sign, '#')

    ...

    0x00 0x0000   #  NULL

    0x01 0x0001   #  START OF HEADING

    0x02 0x0002   #  START OF TEXT

    0x03 0x0003   #  END OF TEXT

    0x04 0x0004   #  END OF TRANSMISSION

    0x05 0x0005   #  ENQUIRY

    0x06 0x0006   #  ACKNOWLEDGE

    0x07 0x0007   #  BELL

    0x08 0x0008   #  BACKSPACE

    0x09 0x0009   #  HORIZONTAL TABULATION

    0x0A 0x000A   #  LINE FEED

    End of the example.

  2. Log on to the database as database system administrator.

  3. Load the code page into the system table CODEPAGE using the SET command. When processing the Loader command SET CODEPAGE <literal>, Loader first tries to find the specified code page in the system table CODEPAGE. If the table does not contain the code page, Loader tries to find the corresponding file <literal>.txt. If this file exists, it is read, and the conversion table is entered in the system table CODEPAGE. If the file is not found, and if the code page is not contained in the system table CODEPAGE, Loader stops processing the SET commands and displays an error message.

If the SET command is processed successfully, the user-defined code page is available in the system table CODEPAGE.

Case 2: The code page for the conversion is already contained in the system table CODEPAGE.

Loader reads the required conversion table from the system table CODEPAGE. All subsequent conversions of the CHAR data from ASCII to UCS2 are performed using this conversion table.

SET <isolation_level_spec>

You can use the syntax rule SET <isolation_level_spec> (<isolation_level_spec> ::= ISOLATION LEVEL <unsigend_integer>) to define the value of the isolation level (unsigned_integer: 0, 1, 10, 15, 2, 20, 3 ,30, more information: SQL Reference Manual, CONNECT Statement (connect_statement)). If you do not set an isolation level, isolation level 3 is assumed. This setting applies to the entire Loader session, provided that the isolation level is not changed by another SET ISOLATION LEVEL command. You can use the USE USER command to set the isolation level for a user and override the value set by the SET command.

SET <number_spec>

You can use the syntax rule <number_spec> (<number_spec> ::= DECIMAL '/[<digit_grouping_symbol>]/<decimal_symbol>/') to specify which characters are used in decimal numbers to group thousands (digit_grouping_symbol: no character or character for structuring thousands, character cannot be a number, default value: no character) and as decimal separator (decimal_symbol: character for separating decimal places, character cannot be a number, default value: period).

If no character is specified, Loader uses the appropriate default value. This setting applies to the entire Loader session, provided that the character string is not changed by another SET DECIMAL command.

Example Example

SET DECIMAL '/ /,/'

Specifies the following number format: 1 999 987,98

SET DECIMAL '///'

Specifies the following number format (Loader default): 1999987.98

End of the example.

You can change the current value for individual commands by using the syntax element number_spec to define the data format (field_format_spec).

SET BACKUPTOOL <backup_tool_spec>

You can use syntax rule SET BACKUPTOOL <backup_tool_spec> (<backup_tool_spec> ::= BACKINT | NETWORKER | TSM) to specify which third-party backup tool is to be used for exporting and importing using third-party backup tools.

  • BACKINT: third-party backup tool supporting Backint for SAP MaxDB and Backint for Oracle

  • NETWORKER: NetWorker (Legato) backup tool

  • TSM: TSM (IBM/Tivoli) backup tool

SET CONFIGURATION <exclude_include>

You can use syntax rule SET CONFIGURATION <exclude_include> (<exclude_include> ::= EXCLUDE | INCLUDE) to exclude tables from processing or include tables in processing.

  • EXCLUDE: negative list, the tables listed in the configuration file are not to be processed

  • INCLUDE: positive list, the tables listed in the configuration file are to be processed

SET CSV '<separator>/<delimiter>'

You can use syntax rule SET CSV '<separator>/<delimiter>/' (<separator> ::= <character>, <delimiter> ::= <character>) to define the characters to be used in CSV format as separator and delimiter.

  • separator: character used to separate data fields from one another (separator representation), default value: comma (,)

    You have to specify exactly one character from the 7–bit ASCII character set (only 1 byte long).

  • delimiter: character used to delimit data in selections (delimiter display), default value: double quotations marks (")

    You can specify exactly one character that originates from the 7 bit ASCII character set (only 1 byte long) or no character (no delimiter).

This setting applies to the entire Loader session, provided that the separator and delimiter are not changed by another SET CSV command. You can change the current value for individual commands by using the syntax element separator_spec or delimiter_spec to define the data format (csv_format_spec).

SET CURRENT SCHEMA = <schema_name>

You can use syntax rule SET CURRENT SCHEMA = <schema_name> to specify the schema schema_name as the current schema (default value: schema that is assigned to the database user who is logged on, more information: SQL Reference Manual, Schema name (schema_name)).

This setting applies to the entire Loader session, provided that the character string is not changed by another SET CURRENT SCHEMA command. You can use the USE USER command or USE SCHEMA command to set the isolation level for a user and override the value set by the SET CURRENT SCHEMA command.

SET FORMAT <standard_date_mask>

You can use syntax rule SET FORMAT <standard_date_mask> to define in which format Loader transfers date and time values to the database in SQL statements. When processing Loader commands, Loader generally transfers date and time values in INTERNAL format. If the date and time values embedded in SQL statements are to be transferred in another format, these have to be explicitly set with this command. This setting applies to the entire Loader session, provided that the format is not changed by another SET FORMAT command.

Example Example

INSERT INTO <table_name> values ('2008–01–01', 1)

As the date is to be transferred in ISO format here, the format must be set using SET FORMAT ISO.

End of the example.
SET LOGFILEPATH '<loader_log_file_path>' [DELETELOGFILE]

The Loader log file loader_<timestamp>.log or loader.log is located in the default log file directory (Loader Log File). You can use the syntax rule SET LOGFILEPATH <loader_log_file_path> to set the log file path for the Loader log file. You can use the syntax rule SET LOGFILEPATH <loader_log_file_path> DELETELOGFILE to set the log file path for the Loader log file and delete the Loader log file already located in <loader_log_file_path>.

This setting applies to the entire Loader session, provided that the path is not changed by another SET LOGFILEPATH command.

SET MAXERRORCOUNT <unsigned_integer>

You can use syntax rule SET MAXERRORCOUNT <unsigend_integer> to define how many errors Loader should accept when a specific command is executed before it cancels processing of the command. This setting applies to the entire Loader session, provided that the error count is not changed by another SET MAXERRORCOUNT command.

SET TRANSACTION SIZE <unsigned_integer>

You can use syntax rule SET TRANSACTION SIZE <unsigend_integer> to define the number of data records after which a COMMIT is carried out.

More Information

Opening a Session: Loader Commands


-10327: Invalid use of null pointer in stream parameter field of stream descriptor for parameter (<number>) - SAP Documentation

Background documentation -10327: Invalid use of null pointer in stream parameter field of stream descriptor for parameter (<number>)

Explanation

The description of the liveCache stream parameters includes a null pointer.

User Response

Check the parameters supplied.


PAGELOCKS - SAP Documentation

Object documentation PAGELOCKS

This system view SYSINFO.PAGELOCKS can be used to determine the state of locked or requested data pages in the data cache.

Structure

PAGELOCKS
ROOTPAGENUMBER | FIXED(20) | Locked or requested page belongs to the file with this root page number
PAGENUMBER | FIXED(20) | Page number of locked or requested page
RECOVERYMODE | CHAR(10) | Type of page (PERMANENT | TEMPORARY | STATIC)
FILESYSTEMID | FIXED(5) | Identification of the file system
TASKID | FIXED(10) | ID of the lock or request holder
USAGECOUNT | FIXED(10) | Number of lock or request holders
LOCKMODE | CHAR(10) | Type of lock (NULL value | SHARE | EXCLUSIVE)
REQUESTMODE | CHAR(10) | Type of lock request (NULL value | SHARE | EXCLUSIVE)

More Information

Concepts of the Database System, How Databases Store Data and Log Entries, Working Memory Areas


SYSINFO Views - SAP Documentation

Procedure documentation SYSINFO Views

The Configuration user menu in the DBA Cockpit contains a display of system tables from the SYSINFO schema.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Configuration [image] SYSINFO Views [image] .

Result

A list of SYSINFO system tables and their descriptions is displayed. If system tables have been updated, you can view the System Tables Upgrade log.

More Information

SQL Reference Manual, Definitions of the System Tables, Evaluating System Tables(Examples)


-3005: Invalid SQL statement - SAP Documentation

Background documentation -3005: Invalid SQL statement

Explanation

The SQL statement either contains a typing error within the first two keywords, is unknown in the current SQL mode or is not permitted in the current database version.

User Response

Correct the typing errors, or specify another SQL statement.


-809: Missing indicator variable, output parameter with NULL value - SAP Documentation

Background documentation -809: Missing indicator variable, output parameter with NULL value

Explanation

The indicator variable required for returning the NULL value to the SQL variable is missing.

User Response

Specify the indicator variable with the parameter.


750: Too many SQL statements (work rolled back) - SAP Documentation

Background documentation 750: Too many SQL statements (work rolled back)

Explanation

The user's transaction was canceled and reset by an implicit ROLLBACK statement. The database session was implicitly terminated, since you had issued too many SQL statements or had performed too many transactions within a session.

User Response

After a new CONNECT statement the transaction may be repeated.


INDEXCOLUMNS - SAP Documentation

Example documentation INDEXCOLUMNS

Use of the system table DOMAIN.INDEXCOLUMNS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create indexes. Proceed as described in SQL Tutorial, Indexes.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table INDEXCOLUMNS to determine the following database information, among other things:

  • All indexed columns of the table CUSTOMER

    SELECT DISTINCT columnname

    FROM DOMAIN.INDEXCOLUMNS

    WHERE tablename = 'CUSTOMER'

  • All inversions for the table CUSTOMER, sorted according to the name of the index and there according to the sequence of columns as specified in the index definition

    SELECT indexname, type, columnname, sort

    FROM DOMAIN.INDEXCOLUMNS

    WHERE tablename = 'CUSTOMER' ORDER BY indexname, columnno

  • Information about the columns that comprise the ADDRESS_INDEX of the table CUSTOMER

    SELECT columnname, sort, datatype, len

    FROM DOMAIN.INDEXCOLUMNS

    WHERE indexname = 'ADDRESS_INDEX' ORDER BY columnno

More Information

All Indexes: see INDEXES


-28814: Object not found - SAP Documentation

Background documentation -28814: Object not found

Explanation

A non-existent OID was de-referenced.

User Response

Contact Support.


Loader Tutorial - SAP Documentation

Component documentation Loader Tutorial

This Loader tutorial is designed to introduce you to the Loader commands for exporting and importing, and to illustrate them with examples. You will find a detailed description of the Loader commands in the Loader documentation and in the syntax rule list.

Features

Demo Databases

To work through the examples in this Loader tutorial, you need the Demo Databases DEMODB and TESTDB.

Examples of Commands

The Loader commands that are described in the examples in this tutorial can be grouped into the following areas:

  • Exporting

  • Importing

  • UPDATE COLUMNS command for updating column values

Note Note

To make commands more readable, the keywords are written in upper-case letters and command statements are structured. Upper and lower-case spellings of syntax elements and blank characters or line breaks are not relevant for executing Loader commands.

Upper and lower-case letters, however, may be important when choosing identifiers for the database objects and entering values in the form of literals.

End of the note.
Operating Modes

You can use three operating modes for inputting data to the loader: interactive transport mode, command mode and session mode. Use of the three operating modes should be explained using examples:

  • Transport Mode

  • Command File Mode

  • Session Mode

More Information

Concepts of the Database System, Demo Database, Objects in the HOTEL Schema

Glossary


-28832: Tried to access already dropped container - SAP Documentation

Background documentation -28832: Tried to access already dropped container

Explanation

The attempt to access a container failed, since it has already been deleted.

User Response

Make sure that nobody deletes a container parallelly which is still worked on.


Hardware - SAP Documentation

Background documentation Hardware

To ensure trouble-free database operation and good performance, make sure you use appropriate hardware.

More Information

Database Administration, Planning the Database


-28548: Internal object link corruption - SAP Documentation

Background documentation -28548: Internal object link corruption

Explanation

While reading a composed object, e.g. objects of variable size bigger than one page, it was determined that it is no longer possible to rebuild the object from its single components.

User Response

The affected object can no longer be read and therefore must be deleted and recreated with an application-program or must be restored with a data backup.


-23058: No database connection - SAP Documentation

Background documentation -23058: No database connection

Explanation

The connection to the database instance has been broken.

User Response

Check the status of the database instance.End the database session and log on to the database instance again.


-25007: No connection to server db '<database_name>' established - SAP Documentation

Background documentation -25007: No connection to server db '<database_name>' established

Explanation

While executing a Loader command or an SQL statement for exporting or importing, the system detected that there is no connection to the database instance. This may be because you are not logged on to the correct database instance.

User Response

Using the USE USER command, log on to the database instance prior to executing the command or SQL statement.


Data Format - SAP Documentation

Background documentation Data Format

With most Loader commands for importing and exporting data, you can specify the external data type and the data format that the relevant field values in the data stream have or should have. The specified data format applies to the columns that have the corresponding internal database data type. You can also define which separators and delimiters are to be used. You can specify the data format for the data stream in import and export commands . This data format overrides the corresponding default value or the value that was set using the SET command.

Structure

Syntax Syntax

  1. <column_dataformat_spec> ::=
  CSV <csv_format_spec> ...
| FWV [BINARY] <fwv_format_spec> ...
| FWV BINARY <fwv_format_spec> ... <noheader_spec>
End of the code.

Syntax Syntax

  1. <table_dataformat_spec> ::=
  PAGES
| RECORDS <records_format_spec> ...
End of the code.

Syntax Syntax

  1. <csv_format_spec> ::=
  <separator_spec>
| <delimiter_spec>
| <null_spec>
| <field_format_spec>

<fwv_format_spec> ::=
  <null_spec>
| <int_spec>
| <field_format_spec>

<records_format_spec> ::=
  <field_format_spec> ...

<field_format_spec> ::=
  <bool_spec>
| <code_spec>
| <date_spec>
| <int_spec>
| <number_spec>
| <time_spec>
| <timestamp_spec>

<noheader_spec> ::=
  NOHEADER <unsigned_integer>

<separator_spec> ::=
  SEPARATOR '<character>'

<delimiter_spec> ::=
  DELIMITER '<character>'

<bool_spec> ::=
  BOOLEAN '<true_value>/<false_value>'

<int_spec> ::=
  INTEGER HILO
| INTEGER LOHI

<number_spec> ::=
  DECIMAL '/[<digit_grouping_symbol>/<decimal_symbol>/'
End of the code.

You can use these syntax rules in a command for exporting and importing data to specify a range of data formats. Some of these formats will be explained in more detail. If the formats are not specified, Loader uses the respective default values.

CSV, FWV, FWV BINARY, PAGES, RECORDS

These are formats of the data stream:

CSV | CSV (Comma Separated Values) is a format for CHAR data in which a data line must at least be long enough to represent the data. The assignment of a data field of the data stream to a column in the table is determined by the position specification.
FWV | FWV (Fixed Width Values) is a format for plain text values in which a data line in the data stream corresponds to a data record. The assignment between data fields in the data stream and table columns is defined by the position specification.
FWV BINARY | FWV BINARY (Fixed Width Values BINARY) is a format for binary values in which the data fields all have the same fixed length. The assignment between data fields in the data stream and table columns is defined by the position specification. Unlike the FWV format, a data record does not end with an additional line break.
PAGES | Format that specifies that the application data is stored in pages
RECORDS | Database format

See also: CSV, FWV, FWV BINARY, PAGES, RECORDS, Data Stream

<noheader_spec>

Syntax rule noheader_spec is only evaluated for IMPORT TABLE commands if the data format is FWV BINARY. You can use noheader_spec to specify that the data stream has no special header with the length (unsigned_integer) of an individual data record. At the same time, you specify the length of an individual data record in the data stream. If the data stream was generated with EXPORT TABLE, it contains a special header with the length of an individual data record in the data stream. If this header is missing, Loader can use noheader_spec to specify the length of an individual data record. If this rule is missing, Loader calculates the length of an individual data record using the information in the column positions of the import command.

<separator_spec>

You use the syntax rule separator_spec to specify the character used to separate data fields from each other when CSV format is used (separator representation). The default value is comma (,). You have to specify exactly one character of the 7–bit ASCII character set (only 1 byte long).

<delimiter_spec>

You use syntax rule delimiter_spec to specify the character used to delimit data in selections when CSV format is used (delimiter display). The default value is double quotations marks (“). You can specify exactly one character of the 7–bit ASCII character set (only 1 byte long) or no character (no delimiter).

<int_spec>

INTEGER HILO: The current data stream stores integers so that the byte with the lowest valency is stored first, that is, the furthest to the right in the binary number (the big endian).

INTEGER LOHI: The current data stream stores integers so that the byte with the highest valency is stored first, that is, the furthest to the right in the binary number (little endian, byte swap).

<bool_spec>

You can use syntax rule <bool_spec> (<bool_spec> ::= '<true_value>/<false_value>') to define the character string used in data streams to represent BOOLEAN values that are either exported from the database or imported into the database. true_value defines the character string for values that are true (default value: TRUE), false_value defines the character string for values that are false (default value: FALSE). The character strings can be up to 10 characters in length.

This setting is valid for this Loader command. If you do not specify the character strings, either the value set with the SET BOOLEAN command or the default value of the Loader is used.

<number_spec>

You can use the syntax rule <number_spec> (<number_spec> ::= DECIMAL '/[<digit_grouping_symbol>]/<decimal_symbol>/') to specify which characters are used in decimal numbers to group thousands (digit_grouping_symbol: no character or character for structuring thousands, character cannot be a number, default value: no character) and as decimal separator (decimal_symbol: character for separating decimal places, character cannot be a number, default value: period).

This setting is valid for this Loader command. If you do not specify any characters, either the value set with the SET DECIMAL command or the default value of the Loader is used.

Example

Example Example

EXPORT TABLE hotel.room

  CATALOG OUTSTREAM 'room_ddl.catalog'

  DATA OUTSTREAM 'room_csv.data'

    SEPARATOR ','

    DELIMITER '"'

    NULL '?'

    DECIMAL '/./,/'

    BOOLEAN 'TRUE,FALSE'

    TIMESTAMP ISO

    DATE ISO

    TIME ISO

  PACKAGE OUTSTREAM 'room_csv.package'

End of the example.

The generated data file has the following content (excerpt):

"10","double","45","200.00"

"10","single","20","135.00"

"20","double","13","100.00"

Loader Tutorial, Exporting, Importing

More Information

  • Data Desciption

  • Data Stream

  • Exporting: Loader Commands

    Importing: Loader Commands


-24949: ERR_USREXISTS - user entry already exists - SAP Documentation

Background documentation -24949: ERR_USREXISTS - user entry already exists

Explanation

This DBM command cannot be used, as the user name already exists.

User Response

Use a name that has not already been used for a user, or delete the existing user. Only delete a user if you the user is no longer required. When you delete a user, you delete all of the saved settings for that user. To delete a user, use the DBM command user_delete.


-7032: SQL statement not allowed for column of data type LOB - SAP Documentation

Background documentation -7032: SQL statement not allowed for column of data type LOB

Explanation

The SQL statement cannot be applied to columns of data type LOB.

User Response

Use one of the operations allowed for the data type LOB.


-7062: Open subtransaction not allowed, use SQL mode ORACLE - SAP Documentation

Background documentation -7062: Open subtransaction not allowed, use SQL mode ORACLE

Explanation

The system detected an open subtransaction when XAPrepare has to be executed internally. This is not supported. This problem occurs if you try to execute DDL statements using data sources from a non ORACLE mode session.

User Response

Use SQL mode ORACLE.


DOMAINS - SAP Documentation

Example documentation DOMAINS

Use of the system table DOMAIN.DOMAINS

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create domains. Proceed as described in SQL Tutorial, Domains.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table DOMAINS to determine the following database information, among other things:

  • All domains for which the data type DATE was defined

    SELECT owner, domainname

    FROM DOMAIN.DOMAINS

    WHERE datatype = 'DATE'

  • All of your domains in which a default value was agreed

    SELECT domainname, datatype, len, dec, "DEFAULT"

    FROM DOMAIN.DOMAINS

    WHERE owner = 'MONA'

    AND "DEFAULT" IS NOT NULL

    Note that the column DEFAULT has to be defined as a special identifier (Identifier in double quotes), since DEFAULT is a reserved keyword.

More Information

Constraint of a domain: see DOMAINCONSTRAINTS

Domain for column definition: see COLUMNS


-10201: Function sequence error (no data for execution expected) - SAP Documentation

Background documentation -10201: Function sequence error (no data for execution expected)

Explanation

The SQLDBC_PreparedStatement::putData or SQLDBC_PreparedStatement::nextParameter method that was called could not be executed, because no data was required to be inserted piecewise.

User Action

To insert data piecewise, use the SQLDBC_PreparedStatement::bindParameter method and select the value SQLDBC_DATA_AT_EXEC for the LengthIndicator argument.


DBA Planning Calendar - SAP Documentation

Procedure documentation DBA Planning Calendar

You can use the DBA Planning Calendar in the Jobs user menu of the DBA Cockpit to automate database administration. You can schedule, perform, and check database administration actions.

You can use the DBA Planning Calendar for almost all regular database administration actions. The database actions required are automatically executed at the time you specify. Therefore, you should make sure in advance that the required resources will be available at the time of execution. You can carry out planning periodically. This reduces the amount of planning required for recurring actions.

Prerequisites

Prerequisites

SAP liveCache Technology: In accordance with the Authorization Concept, the user was assigned one of the roles SAP_BC_LVC_ADMINISTRATOR or SAP_BC_LVC_SUPERUSER.

Procedure

The DBA Planning Calendar can be called as follows:

  • Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Jobs [image] DBA Planning Calendar [image] .

  • The DBA Planning Calendar can be opened using the Central Calendar. Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Jobs [image] Central Calendar [image] . You can find information about the Central Calendar in the following sections: Central Calendar, Using the Central Calendar.

The initial screen of the DBA Planning Calendar includes the following frames: DBA Planning Calendar, Action Pad, Calendar

DBA Planning Calendar

The top left frame (DBA Planning Calendar) contains all the information and parameters for choosing actions that should be displayed:

  • System: Select the system you would like to use to schedule DBA actions.

  • Calendar ID: Select the calendar ID and a factory calendar at the same time.

    Specifying the factory calendar only affects the calendar display. Public holidays are displayed in the same color as weekends. This leads to no restrictions on any actions already scheduled.

  • Planning Mode: You can select planning mode.

    Local: Planning is carried out for the system that you selected.

    Global: Planning is carried out for all integrated, attainable systems. This type of procedure may be necessary, for example, if database structure checks are to be carried out on all systems.

  • Calendar Control: With Calendar Control you can select the week that should be displayed.

    The default value is the current week. To navigate to another week, double-click the week you would like to display.

Action Pad

The Action Pad contains a list of all schedulable actions currently available for the database system.

Action Pad
Task Area | Entry in the Action Pad | Short Name
Data and Log Backups | Complete Data Backup Incremental Data Backup Activate Automatic Log Backup Deactivate Automatic Log Backup Log Backup Archive Log Backup Files | DataBackup IncrBackup AutoLogOn AuotLogOff LogBackup ArchivFiles
Determining Statistics for the SQL Optimizer | Select Tables for Update Statistics Update Statistics for Selected Tables Update All Optimizer Statistics | PrepUpdStat UpdStats UpdAllStats
Database Structure Checks | Check database structure of the snapshot Check the Database Structure Check the Database Structure (Tables Only) | CheckDataSn CheckData CheckTables
Determine Table Size and Growth | Update Table Statistics | CollTabSize
Determine Class Container Sizes (SAP liveCache technology only) | Update Class Container Statistics | CollClaccCo
Checking Backups | Check Complete Data Backup Check Incremental Data Backup Check Log Backup | CDataBackup CIncrBackup ClogBackup
Execute DBM Commands | Executing DBM Commands | DBMExecute
Calendar

The calendar can be displayed with either a weekly, daily or monthly view using either a top-bottom layout or left-right split view layout. To change the layout, choose [image] Administration [image] Left-Right Split View [image] or Top-Bottom Split View Layout. To change, for example, from a weekly view to a daily or monthly view, choose the corresponding button in the application toolbar.

Note Note

You can only change the layout for the week or month view. For the day view, only the left-right split view layout is available.

To change your preferred settings – that is, the layout and the view – choose Save Settings.

The calendar shows the actions that were scheduled using background processing. These actions are then automatically executed.

End of the note.

Once the action has run, the status is indicated using the following colors:

Color | Meaning
Light blue | The action has not yet started.
Dark blue | The action has not yet finished.
Green | The action has run successfully.
Yellow | The action has finished with a warning. Check the job log for details.
Red | An error has occurred and the action was interrupted. Check the job log for details and reschedule the action.
Dark yellow | No more information is available.
Dark red | Scheduling failed, that is, there is no status available and the action is overdue.

You can display the meaning of each color by choosing Legend.

Dragging & Dropping Actions

You can move or copy actions in the DBA Planning Calendar using Drag & Drop; from the Action Pad to the Calendar too, for example.

Result

  • Setting Up and Using the DBA Planning Calendar

    Configuring the Back End of the DBA Planning Calendar

  • Planning Concept

  • Scheduling an Action

    Changing or Deleting an Action

    Starting an Action Immediately

    Displaying Actions

More Information

Automating Database Administration Activities

Database Administration in CCMS: SAP MaxDB

Database Administration in CCMS: SAP liveCache Technology


-849: Invalid data definition - SAP Documentation

Background documentation -849: Invalid data definition

Explanation

The SQL variable or data definition is invalid or not allowed. The variable definition is not known as an SQL variable.

User Response

Declare the SQL variable name or the data in the declare section, or correct the name or data.


-25318: Syskey violation (the computed value exceeds the highest possible syskey value) - SAP Documentation

Background documentation -25318: Syskey violation (the computed value exceeds the highest possible syskey value)

Explanation

Error in the Loader command for importing data.Data is being imported into a table containing no user-defined keys. If this is the case, the database generates its own internal key.The key that is generated exceeds the maximum possible value. However, this error only occurs if the number of data records in the table exceeds 2E48.

User Response

Contact Support.


-24989: ERR_NOHISTORYSESSION - no backup history session available - SAP Documentation

Background documentation -24989: ERR_NOHISTORYSESSION - no backup history session available

Explanation

The DBM command is only possible if the backup history is open.

User Response

First, open the backup history using this statement backup_history_open. Watch for any errors that might occur.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


Deleting Backup Templates - SAP Documentation

Procedure documentation Deleting Backup Templates

Once you have deleted a backup template, the data carrier defined in the backup template is no longer available for backing up and restoring data. The backup on this data carrier, however, is not deleted. If necessary, you can define a new backup template for this data carrier later on and use the backup saved in it for restoring data.

Prerequisites

You are logged on to the database as the database system administrator or as a DBM operator with server authorization for performing backups.

More information: Glossary, Server Permission

Procedure

  1. Select the database in the explorer tree.

  2. In the context menu of the database, choose Administration.

  3. Open the Backup tab page.

  4. Expand Templates.

  5. Choose Delete.

More Information

Database Administration, Backup Templates and Data Carriers


Encrypting Backups - SAP Documentation

Procedure documentation Encrypting Backups

Prerequisites

  • SAP Cryptolib (only available for SAP systems)

  • You have created a private-public key pair using sapgenpse.

    For more information about sapgenpse and SAP Cryptolib, see Using the SAP Cryptographic Library for SNC.

Procedure

  1. When creating the backup template for your backup, specify the encryption algorithm and the private key owner in the backup template properties.

  2. Create the backup using this backup template.

More Information

For an example scenario, see Database Administration, Encryption


Selecting Data Records - SAP Documentation

Background documentation Selecting Data Records

When importing application data, you can select the data records to be imported. The conditions used in the selection can be negated with NOT, linked with AND and OR, and bracketed. Loader evaluates the operators accordingly.

Structure

Syntax Syntax

  1. <if_condition> ::=
  IF <condition>

<condition> ::=
  (<condition>)
| <condition> AND <condition>
| <condition> OR <condition>
| NOT <condition>
| <simple_condition>

<simple_condition> ::=
  POS <field_spec> <field_type> [HEX]
    <compare_operator> '<literal>'

<compare_operator> ::=
  <
| >
| =
| <=
| >=
| !=
End of the code.

Loader distinguishes between compound conditions and simple conditions (simple_condition). Only records for which the compound or simple condition applies are imported.

Compound Conditions

Conditions can be negated with NOT, combined with AND and OR to form compound conditions, and bracketed. Operators in parentheses are evaluated before those that are not in parentheses. If no operators are in parentheses, Loader weights them as follows:

  • NOT takes precedence over AND and OR.

  • AND takes precedence over OR.

  • If the weighting is identical, the operators are evaluated from left to right.

Simple Conditions

You use the simple condition simple_condition to define the selection criteria that determine which records in the data stream are imported to which target table. The data records that you want to import are selected by comparing them to a constant.

<field_spec>

You describe the a value to be compared in a data record with its position.

<field_type>

The data type only has to be specified if the affected data field is to be read or output with a data type other than CHAR. Every internal database column format in the database can be read and output in CHAR format.

HEX

You can define HEX values.

<literal>

The literal specified is a constant that is used as a comparison value. You specify a literal as a plain text value and place it in single quotation marks. This value is converted to the data type of the value that you want to compare in the data record. If the literal you want to use as a comparison value is a number, it must have a valid number format. That is, it must be a floating point number in mantissa/exponent notation or a fixed-point number with the defined decimal representation, or the default decimal representation that is predefined in the Loader.

Example

Example Example

IMPORT TABLE hotel.room

IF POS 06-11 = 'double'

DATA INSTREAM 'room_fwv.data' FWV

  hno     01-05

  type    06-11

  free    12-15

  price   16-22

End of the example.

You only import those data records in which double is specified as the room type from the room_fwv.data source data stream into the ROOM table.

More Information

IMPORT TABLE Command

IMPORT COLUMNS Command

UPDATE COLUMNS Command

Column Description


-7056: Subquery not allowed - SAP Documentation

Background documentation -7056: Subquery not allowed

Explanation

A subquery specification in a constraint definition is not allowed.

User Response

  1. Try to formulate the search condition in such a way that the subquery is not necessary.

  2. The attempt can be made to achieve the desired effect by defining a trigger that checks the condition.


From -23000 to -23999 - SAP Documentation

Background documentation From -23000 to -23999

-23050 | Unknown error
-23051 | Could not load system tables for SQL Studio
-23052 | Could not save object data
-23054 | Maximum numbers of windows reached
-23055 | Connection failed
-23056 | User is exclusive
-23057 | Reconnect failed
-23058 | No database connection
-23059 | You do not have the permission to modify this object
-23060 | You do not have the permission to delete this object
-23061 | Cannot analyze error
-23062 | Could not open connection
-23063 | Could not create Global Com Object
-23064 | Import failed
-23070 | Cannot open object created by newer SQL Studio Version
-23071 | Convert object created by older SQL Studio Version
-23072 | Representation of null value too long
-23100 | OLE Error Please restart SQL Studio
-23101 | Data in clipboard truncated
-23102 | Failed to create DBC Pool
-23103 | Failed to create DBC Handle
-23104 | Could not load table definition
-23200 | No data sources
-23201 | No ODBC driver
-23202 | Could not load object description
-23203 | Cannot show tables of users, wrong database version


Loader System Tables - SAP Documentation

Object documentation Loader System Tables

An important log function of the Loader is to store Loader-relevant information in system tables.

When the database system is installed, the following system tables are created for Loader:

SYSLOADER System Tables
CODEPAGE | MAPSCHEMANAMES | TRANSFORMATIONMODEL
TRANSFORMATIONMONITOR | TRANSFORMATIONPACKAGES | TRANSFORMATIONRESOURCES
TRANSFORMATIONSTATISTICS | TRANSFORMATIONSTEPS |

The database system administrator is the owner of these system tables. The tables are generated in the SYSLOADER schema. You need to specify the schema to access these tables.

Loader logs information on the runtime responses of export and import processes in the TRANSFORMATION* system tables. You can also configure a transformation using the system tables. Loader uses the entries in the system tables to restart commands. You can use the RESTART option of the Loader command for this restart.

Example

Example Example

SELECT * FROM sysloader.transformationmodel

WHERE PACKAGEGUID = <package_guid>

End of the example.

More Information

Restarting

Additional Log Functions (package_spec)

Loader Commands and SQL Statements

Loader Log Functions


History - SAP Documentation

Procedure documentation History

In the Operating user menu of the DBA Cockpit, you can find, among other things, a display of the history of the liveCache operating tasks (lcinit.his).

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] Operating [image] History [image] .

Result

The lcinit.his log is displayed. This log contains the history of the starts, stops, and initializations of the SAP liveCache database.

  • You can use the navigation help (Start of File, End of File) for orientation within the log.

  • Choose Import File to update the output.

More Information

Database Administration, Log Files


-28523: Unknown schema - SAP Documentation

Background documentation -28523: Unknown schema

Explanation

An attempt was made to access a non-existent liveCache schema.This can occur when registering or deleting a container, or when resolving a liveCache schema.

User Response

Contact Support.


SAP liveCache Technology - SAP Documentation

Background documentation SAP liveCache Technology

The SAP liveCache technology is an object-based enhancement of the SAP MaxDB database system. It was developed for managing complex objects in applications in which large quantities of data must be constantly available and changeable. You can only use SAP liveCache technology with SAP applications.

The SAP liveCache technology significantly increases the speed of the algorithmically complex, data- and runtime-intensive functions of various SAP applications, especially within SAP Supply Chain Management. It combines the advantages of main memory-based data retention with a complete operating concept, including backup and recovery.

Properties of an SAP application with SAP liveCache technology:

  • With optimal configuration, all application data and objects are located in the working memory

  • Multiple application servers are sharing the read/write cache

  • Relational and object-oriented data modeling

  • Data-intensive business logic is executed close to the application data (minimizing round trips)

  • All database functions are available

This graphic is explained in the accompanying text.

SAP liveCache Technology: Technical System Landscape

In addition to the SAP MaxDB database kernel, which provides basic database functions such as saving, restoring, and transaction management, an SAP liveCache database also comprises the following software layers:

  • SAP liveCache Applications (LCApps)

    The business logic is included in the SAP liveCache kernel by using DB procedures (stored procedures). This removes much of the work that would otherwise be needed for communication and the transfer of data.

  • Object Management System (OMS)

    A large part of the application data in an SAP liveCache database is managed in objects (OMS data). OMS data is managed in containers that are assigned to a persistent C++ class of the object type as object memory.

This graphic is explained in the accompanying text.

SAP liveCache Technology: Architecture

More Information

Database Administration in CCMS: SAP liveCache Technology

Information about the SAP liveCache technology in SCN: https://www.sdn.sap.com/irj/sdn/livecache


-28006: Object not locked - SAP Documentation

Background documentation -28006: Object not locked

Explanation

When it attempted to change or delete an instance of a persistent class, liveCache determined that the current transaction does not have a lock for this instance.This is not allowed.

User Response

Contact Support.


-7067: Update without repeated read not allowed - SAP Documentation

Background documentation -7067: Update without repeated read not allowed

An optimistic lock was set to at least one table row by a previous SQL statement. Afterwards, another database user updated at least one of these rows. The database user who set the optimistic lock can make new changes to this row only after reading it again with an (optimistic) lock.

User Response

The row to be updated must be read again with an (optimistic) lock.


-895: Whole table may be deleted or updated - SAP Documentation

Background documentation -895: Whole table may be deleted or updated

Explanation

Precompiler warning that all entries of the table will be deleted or updated.

User Response

Check whether this is the desired effect. Otherwise, insert a WHERE clause into the statement.


-3999: Invalid parameter - SAP Documentation

Background documentation -3999: Invalid parameter

Explanation

  1. In invalid database parameter was specified.

  2. An invalid parameter was specified in the sequence of parameters of a CREATE TRIGGER statement. The usage of OLD is invalid in an INSERT trigger, the usage of NEW is invalid in a DELETE trigger.

User Response

  1. The error message contains a precise description of the error. Correct the parameter values accordingly.

  2. Correct the parameters accordingly.


-28549: Name is invalid - SAP Documentation

Background documentation -28549: Name is invalid

Explanation

The user-specified name of an OMS-version contains a 0x0.

User Response

Make sure that the whole character string including the name of a OMS-version does not contain a 0x0.


-871: Too many variable definitions - SAP Documentation

Background documentation -871: Too many variable definitions

Explanation

The number of SQL variable definitions is too great.

User Response

Break down the SQL statements into several modules or reduce the number of SQL variable declarations. The maximum number is 10000.


-25507: Error truncating file <file_name> : <error_text> - SAP Documentation

Background documentation -25507: Error truncating file <file_name> : <error_text>

Explanation

An operating system-dependent text appears in the operating system error message, indicating the error that occurred. Reasons for the error may be that there is no file of this name or that the specified disk is write-protected, and so on.

User Response

Specify a different filename or correct the error at operating system level.


-28551: Version open at trans-end - SAP Documentation

Background documentation -28551: Version open at trans-end

Explanation

During the end of a transaction (rollback or commit) a OMS-version is still open.

User Response

Make sure that all OMS-versions are closed before the transaction end is reached.


-8057: Too many snapshots - SAP Documentation

Background documentation -8057: Too many snapshots

Explanation

The maximum allowed number of created snapshots is reached.

User Response

Drop an older snapshot.


-7035: DEFAULT specification not allowed for this column - SAP Documentation

Background documentation -7035: DEFAULT specification not allowed for this column

Explanation

An INSERT or UPDATE statement or a DEFAULT predicate was issued with a DEFAULT specification for a column for which no DEFAULT specification had been defined in the CREATE TABLE or any subsequent ALTER TABLE statement.

User Response

Specify the desired value instead of DEFAULT.


-2012: View column list too long - SAP Documentation

Background documentation -2012: View column list too long

Explanation

In the CREATE VIEW statement, the number of view table columns to be defined must be equal to the number of columns issued as the result of the QUERY expression. In this case, an attempt was made to create more view table columns than columns are available in the QUERY request result.

User Response

Reduce the number of view table columns specified in the SQL statement.


-802: Invalid numeric input parameter value - SAP Documentation

Background documentation -802: Invalid numeric input parameter value

Explanation

The input value cannot be converted.

User Response

The value must be specified in a valid notation.


710:Session terminated by shutdown (work rolled back) - SAP Documentation

Background documentation 710:Session terminated by shutdown (work rolled back)

Explanation

Your transaction was implicitly canceled and rolled back by an implicit ROLLBACK statement. The database session was terminated implicitly because the database manager forced a shutdown of the database instance. To speed up a later restart, the database system tries to reset and not just terminate open transactions within a short period.

User Response

Once the database is ready, repeat the CONNECT statement and the transaction.


-25011: Error executing internal SQL statement '<statement>' : '<error_text>' - SAP Documentation

Background documentation -25011: Error executing internal SQL statement '<statement>' : '<error_text>'

Explanation

An SQL statement generated by the Loader to process an export or import command could not be executed. This message also displays the cause of the error.

User Response

Fix the cause of the error and restart the Loader.


Table Sizes - SAP Documentation

Procedure documentation Table Sizes

In the Space user menu of the DBA Cockpit you can find, among other things, a display of statistics about table size and table growth in the Table Sizes user menu. The current table sizes are determined by a report and saved in a database table which forms the history of table sizes and table growth. You can view, among other things, the statistical data in the Table Sizes user menu.

Procedure

Determining Statistical Data

If necessary, you will have to determine the statistics data for the tables. You have the following options to do this:

  • Schedule the action Update Table Statistics in the DBA planning calendar every week.

    The database must be in the ONLINE operational state at the time of executing the task. To schedule the action Update Statistics Tables, proceed as described in Scheduling an Action .

  • You can also update the table statistics once in the DBA Cockpit.

    The database must be in the ONLINE operational state at the time of executing the task. Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Space [image] Table Sizes [image] . Choose the Update Table Statistics function to start the background job that updates the statistics.

Result

The system determines the table sizes and their growth. The system determines the index sizes. The runtime depends on the fill level of the database instance and the number of tables you are analyzing. The measurement data is logged in the following areas:

  • Table SDBCCMS: The measurement data from the tables can be viewed in the DBA Cockpit in the Table Sizes user menu.

  • Spool/Screen: The measurement data from the tables and their indexes can be either printed out or downloaded for other provider’s tools.

  • Table ADATABSIZE (only for the basis database of the SAP system): You can use the SQL Studio database tool to access the measurement data and the indexes in the ADATABSIZE table directly.

Displaying Table Size

Once the statistical data has been determined, you can display it as follows: Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Space [image] Table Sizes [image] .

Result

You can choose from the following displays:

  • Tables with Greatest Growth: You can set the comparison time period, comparison interval, and the number of tables displayed.

  • Largest Tables: You can set the date and number of tables displayed.

  • Growth of a Table You can set the table name and the display period.

You can display all statistics as graphics. The following functions are available:

  • Delete Statistics Data: You can delete statistics data manually by specifying a time period/date or automatically by specifying a time period (in weeks).

  • Update Table Statistics: Note that table statistics information is saved only once a day. Any older daily statistics are overwritten.

More Information

Planning Concept


-28513: Method not found - SAP Documentation

Background documentation -28513: Method not found

Explanation

A user defined method was called which could not be found.

User Response

Check if the method name is spelled correctly and make sure that the method has been registered properly.


Entering and Executing SQL Statements - SAP Documentation

Procedure documentation Entering and Executing SQL Statements

You execute SQL statements in the SQL editor.

Note Note

Special editors are also available for most SQL statements for the respective database objects in the SQL editor. You can find further information in the following sections:

  • Creating Tables

  • Changing Data in the Database

You can also enter SQL statements in graphical form. More information: Visual Query

End of the note.

Prerequisites

  • You are logged on to the database as a database system administrator or database user.

  • You have the required privileges.

    More information: SQL Reference Manual, Privileges: Overview

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the user who you want to execute the SQL statement.

  2. Choose SQL Editor in the context menu of the user.

    More information: SQL Editor

  3. Enter the SQL statement.

    The following rules apply:

    • You can write SQL syntax elements in either upper or lower case.

    • You can add any number of spaces and line breaks.

    • To force the system to take into account upper/lower-case letters in database object names (such as table names), enter the name between double quotation marks: "<database_object_name>"

    • To comment out a row, use // or -- at the start of the row.

    • To separate several SQL statements from one another, enter a commented-out separator line.

    Example Example

    SELECT zip, name, state

      FROM hotel.city

        WHERE name = 'Seattle'

    End of the example.

    For more information about the syntax of SQL statements, see the SQL Reference Manual and the SQL Tutorial.

  4. To execute the SQL statement, choose Execute SQL in the context menu of the SQL editor.

Result

The result of the SQL statement is displayed.

Example Example

ZIP | NAME | STATE
20005 | Seattle | WA
20019 | Seattle | WA
20037 | Seattle | WA
End of the example.

More Information

  • Saving SQL Statements or Definitions of Database Objects in a Repository

  • Analyzing SQL Statements (EXPLAIN)

  • Testing Prepared Statements


-25305: Data for key columns exceeds allowed key length - SAP Documentation

Background documentation -25305: Data for key columns exceeds allowed key length

Explanation

An error has occurred when importing data.

User Response

Correct the data and re-execute the command.


auto_dbanalyzer - SAP Documentation

Background documentation auto_dbanalyzer

You can activate or deactivate an automatic function that starts Database Analyzer whenever the database is started.

When you activate the function while Database Analyzer is not running, Database Analyzer is started immediately. When you deactivate the function, Database Anaylzer is stopped.

You also use this command to determine whether the function is ON or OFF.

Prerequisites

You have the DBInfoRead server permission.

Structure

auto_dbanalyzer <option>

<option> :: = ON | OFF | SHOW

Options
Option | Description
ON | Activates the automatic function for starting Database Analyzer whenever the database is started, and starts Database Analyzer if it is not running
OFF | Deactivates the automatic function for starting Database Analyzer and stopps Database Analyzer
SHOW | Displays whether the function for automatically starting Database Analyzer is ON or OFF

Result

OK

[Automatic start of Database Analyzer is <ON | OFF>.]

[At the moment Database Analyzer is <ACTIVE | INACTIVE>.]

In the event of errors, see Reply Format.


Monitoring Databases: Overview - SAP Documentation

Background documentation Monitoring Databases: Overview

  • Displaying Information About the Data Area

  • Displaying Information About the Log Area

  • Displaying Information About the Database Analyzer

  • Displaying Information About Caches (Working Memory Areas)

  • Displaying Information About Database Activities

  • Displaying Information About Tasks

  • Displaying Information About Threads

  • Monitoring Databases in a Database Landscape

More Information

The section above is a reference of the functions that are available in Database Studio. You can find more information here:

Database Administration, Monitoring Databases


-1107: Too complicated SQL statement (Too many internal commands) - SAP Documentation

Background documentation -1107: Too complicated SQL statement (Too many internal commands)

Explanation

The SQL statement is so complicated that more internal statements must be generated for it than can be administered for an SQL statement.

User Response

Simplify the SQL statement or split it into several SQL statements.


Code Specification - SAP Documentation

Background documentation Code Specification

In the Loader code specification, you can define the default code type for interpreting data streams that contain plain text values.

Structure

You can determine code specifications for a Loader session using the SET command to define the data format

Syntax Syntax

  1. <set_codetype_command> ::=
  SET CODETYPE <standard_code_spec>

<standard_code_spec> ::=
  ASCII
| UCS2
| UTF8
End of the code.

You can determine code specifications for a Loader command using syntax rule code_spec for data format (see: field_format_spec in data format).

Syntax Syntax

  1. <code_spec> ::=
  <standard_code_spec>
| CODESET <literal>

<standard_code_spec> ::=
  ASCII
| UCS2
| UTF8
End of the code.

When using LOB data, you can determine the code specification using syntax rule lob_code_spec (see: Exporting and Importing LOB values).

Syntax Syntax

  1. <lob_code_spec> ::=
  <code_spec>
| BINARY
End of the code.
ASCII | Code type for interpreting data streams is ASCII. The Loader default value is ASCII.
UCS2 | Code type for interpreting data streams is UCS2.
UTF8 | Code type for interpreting data streams is UTF8.
BINARY | Specifying code type BINARY is only useful for columns of data type LOB BYTE. Data is exported/imported without being converted.

If the code specification is missing in the Loader command, Loader uses the code type defined by the SET CODETYPE command or a default value.

  • SET CODETYPE command: This setting applies to the entire Loader session if the character strings are not changed by another SET CODETYPE command. You can change the current value for individual Loader commands using the syntax element code_spec to define the data format.

  • Default value: This value is derived from the internal database data type of the column to be imported. If the internal database data type and the code specified for the data streams are different, Loader converts the data. If the data base type and the code specification are incompatible, Loader generates an error message and stops processing the command.

<code_spec>

When exporting or importing data, you can transform the data between various code types. If you export/import ASCII data into an ASCII database or UCS2 data into a UNICODE database, the data does not have to be converted. The following combinations are possible (internal and external database data types):

Internal Database Data Type | Possible Code Specifications for Data Streams with Clear Text Values when Exporting Data
(VAR)CHAR ASCII | ASCII, UCS2, UTF8
(VAR)CHAR UNICODE | UCS2, UTF8
(VAR)CHAR BYTE | BINARY, ASCII (HEX), UCS2 (HEX), UTF8 (HEX)
Numeric data types | ASCII, UCS2, UTF8
Internal Database Data Type | Possible Code Specifications for Data Streams with Clear Text Values when Importing Data
(VAR)CHAR ASCII | ASCII
(VAR)CHAR UNICODE | ASCII, UCS2, UTF8
(VAR)CHAR BYTE | BINARY, ASCII, UCS2 (HEX), UTF8 (HEX)
Numeric data types | ASCII, UCS2, UTF8
<lob_code_spec>

When exporting or importing LOB data, you define the default code types using the syntax rule lob_code_spec. This enables you to convert LOB data between various code types. If you are exporting/importing ASCII LOB data into an ASCII database or UCS2 LOB data into a UNICODE database, the data does not have to be converted. The following combinations are possible (internal and external database data types):

Internal Database Data Type | Possible Code Specifications for the Data Stream when Exporting Data
CLOB [ASCII] | ASCII, UCS2, UTF8
CLOB UNICODE | UCS2, UTF8
BLOB | BINARY, ASCII (HEX), UCS2 (HEX), UTF8 (HEX)
Internal Database Data Type | Possible Code Specifications for the Data Stream when Importing Data
CLOB [ASCII] | ASCII
CLOB UNICODE | ASCII, UCS2, UTF8
BLOB | BINARY, ASCII, UCS2 (HEX), UTF8 (HEX)

More Information

  • Exporting and Importing LOB Values

  • Data Description

    Data Types

  • SQL Reference Manual, Data Type (data_type)


autolog_off - SAP Documentation

Background documentation autolog_off

With this command you switch off the function for the automatic log backup of the database.

Prerequisites

  • You have the server permission Backup.

  • Automatic log backup is ON.

Structure

autolog_off

Result

OK

In the event of errors, see Reply Format.

Example

Call Database Manager CLI, log on as the operator OLEG with the password MONDAY, connect to the database DEMODB, turn off the automatic log backup function:

>dbmcli –u OLEG,MONDAY -d DEMODB autolog_off

OK

More Information

Database Administration, Backing Up Log Entries


-25205: Declare USAGE between 50% and 100% - SAP Documentation

Background documentation -25205: Declare USAGE between 50% and 100%

Explanation

A Loader command for importing contains an error: IMPORT TABLE <table_spec>.The USAGE value specified in the command is not within the permitted number range, that is, between 50% and 100%.

User Response

Correct the specified USAGE percentage and re-execute the command.


-870: Too many type definitions - SAP Documentation

Background documentation -870: Too many type definitions

Explanation

The number of type definitions is too great.

User Response

Break down the SQL statements into several modules or reduce the number of type definitions. The maximum number is 500.


Changing Index Properties - SAP Documentation

Procedure documentation Changing Index Properties

Prerequisites

  • You are logged on to the database as a database user.

  • You have the INDEX privilege for the table.

  • The database is in the ONLINE operational state.

Procedure

  1. In the explorer tree, select the table to which the index belongs.

  2. In the context menu of the table, choose Definition.

  3. In the context menu of the editor window, choose Edit.

  4. Change the index definition.

    Note Note

    To display the definition as an SQL statement, choose Export SQL in the context menu of the editor.

    End of the note.

  5. In the context menu of the editor window, choose Alter Index.

More Information

SQL Reference Manual, ALTER INDEX Statement (alter_index_statement)


-10220: Calling addBatch is not allowed for PreparedStatement / Calling clearBatch is not allowed for PreparedStatement - SAP Documentation

Background documentation -10220: Calling addBatch is not allowed for PreparedStatement / Calling clearBatch is not allowed for PreparedStatement

Explanation

The SQLDBC_PreparedStatement::addBatch or SQLDBC_PreparedStatement::clearBatch method that was called cannot be used for SQLDBC_PreparedStatement objects.

User Response

Only use the addBatch and clearBatch methods for SQLDBC_Statement objects.


CSV, FWV, FWV BINARY - SAP Documentation

Background documentation CSV, FWV, FWV BINARY

CSV (also COMPRESSED), FWV (also FORMATTED) and FWV BINARY (also FORMATTED BINARY) are possible formats for a data stream.

Loader assumes that data streams with plain text values have format CSV. You therefore do not have to specify format CSV. If you do not want CSV format, you need to explicitly specify FWV format or (in the case of binary coded data streams) FWV BINARY format in a command for exporting and importing data. You can specify the required format in commands for exporting and importing using the syntax rules for data format column_dataformat_spec and data stream outstream_csv_spec, instream_csv_spec, outstream_fwv_spec, instream_fwv_spec.

Structure

CSV

CSV (Comma Separated Values) is a data stream format that can only be used for source data streams with plain text values. If you do not specify a format in a command for exporting or importing data and the data is not in plain text, Loader generates an error message.

Example Example

Data stream customer_csv.data with data at position 1, 2, 3, 4, ...

"3000","Mrs","Jenny","Porter",...

"3100","Mr","Peter","Brown",...

"3200","Company","?","Datasoft",...

Import Command

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_csv.data'

  cno       1

  title     2

  firstname  3

  name      4

  zip       5

  address    6

PAGE WITH 80% USAGE

End of the example.
Data Lines

In CSV format, a data line must at least be long enough to map the data. The length of the individual data fields and the total length of the data lines can vary. Each data line ends with a line break. When data is exported, a data line in a source table with this format corresponds to exactly one data record in the target data stream. When data is imported, a data line in a source data stream with this format corresponds to exactly one data record in the target table.

Data Fields

Data fields in the data streams must always have external data type CHAR. The individual data fields are separated by any character (default value of Loader for separator: comma). They can also be encapsulated in any characters (default value of Loader for delimiter: double quotation marks). If there are successive delimiters in a data line, the value is an empty character string. If the relative position is larger than the number of values in the line, the value is also the empty character string.

Position Specification

The assignment of a data field of the data stream to a column in the table is defined by the position specification in a command for exporting or importing data. This is a relative position within the data record that specifies which value in a data record is to be imported into or exported from a specific column. When you export data from the database to a data stream, assign position 1 to the first column in your list. The position number of each following column is incremented by 1. This means that each position number can only be assigned once. When you import data from a source table, the data fields in the target table of the database must be sorted in ascending order. You can also assign the same input values to different columns or omit positions. If consecutive delimiters are detected or if the relative position is greater than the number of values in the line, the value is an empty character string.

FWV

FWV (Fixed Width Values) is a data stream format that can only be used for source data streams with plain text values. This format is not the default value of Loader and must be explicitly specified in an export or import command.

Example Example

Data stream customer_fwv.data

-3000Mrs----Jenny-----Porter

-3100Mr-----Peter-----Brown-

-3200Company?---------Dataso

Import Command

IMPORT TABLE hotel.customer

DATA INSTREAM 'customer_fwv.data' FWV

  cno       01-05

  title     06-12

  firstname  13-22

  name      23-32

  zip       33-37

  address    38-62

PAGE WITH 80% USAGE

End of the example.
Data Line

A data line in a data stream corresponds to a data record that you want to export or import. All data lines have the same fixed length. Each line in the data stream contains the individual data fields with a fixed length at the same position. Each data line ends with a line break.

Data Fields

The data fields in the data stream are assigned to the table columns using the position specification in a command for exporting or importing data.

Position Specification

The data fields in the data stream are described using the starting and end position of the byte. The first possible starting position is 1. You can optionally specify an end position. If an end position is not specified for a data field, it has a length of 1. The data fields in the data stream can be assigned to table columns in any order. The order does not affect the processing speed.

FWV BINARY

FWV BINARY (Fixed Width Values BINARY) is a data stream format that enables binary values to be exported and imported. This format is not the default value of Loader and must be explicitly specified in an export or import command.

Data Lines

FWV BINARY format is largely the same as FWV format. The only difference is that the length of a data record is only defined by the total length of the individual data fields. Unlike the FWV format, a data record does not end with an additional line break.

Data Fields

The data fields can contain special characters and have the same fixed length. This also applies to the individual data records. The data fields in the data stream are assigned to the table columns according to the position specification in the command for exporting or importing data.

Position Specifications

Data fields are described by the starting and end positions of the byte. The first possible starting position of a data record is 1. You can optionally specify an end position. If you do not specify an end position, the corresponding data field has a length of 1. The data fields of the data stream can be assigned to the table columns in any order. The order does not affect the processing speed. The positions do not need to be successive when you export or import data. Loader fills any gaps with blank characters when it exports data.

More Information

Data Format

Data Stream

Position Description

Data Description


USE USER Command - SAP Documentation

Background documentation USE USER Command

You can use the Loader command USE USER to open a database session with the specified information.

Structure

Syntax Syntax

  1. <use_user_command> ::=
  USE USER <user_spec> [SCHEMA <schema_name>]
    [DB <database_spec>] [<isolation_level_spec>]

<user_spec> ::=
  <database_user> <password>

<database_spec> ::=
  <database_name> [ON <database_computer> [ENCRYPTION <protocol_name>]]

<isolation_level_spec> ::=
  ISOLATION LEVEL <unsigned_integer>
End of the code.

This command terminates the current Loader connection to the database and opens a new database session with the specified parameters. This setting applies as long as no new parameter is specified with a USE command.

  • The database system automatically converts the name of the database user (database_user) and the password (password) to uppercase letters. If you want to suppress the conversion, you must place the name in quotation marks (Database Administration, Conventions for user names and passwords).

  • You can specify the schema where the user is to be logged on. If the name of the schema (schema_name) is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in double quotation marks. If you do not specify a schema, the user uses the assigned schema. This setting applies as long as no other schema is specified using a USE USER, USE SCHEMA or SET CURRENT SCHEMA command.

  • You can specify the database specification (database_name and other information).

    <database_spec>

    database_name

    Name of the database

    This name ist valid for the entire Loader session with this database session.

    If the name of the database is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in quotation marks (Database Administration, Conventions for Database Names).

    database_computer

    Name of the computer on which the database is installed for which a session is to be started.

    If this is not specified, Loader assumes that the specified database was created on the computer to which the user of Loader is logged on.

    protocol_name

    Name of the encryption protocol

    After key word ENCRYPTION, you can also specify the name of the requested encryption protocol protocol_name to ensure that the data transfer is encrypted. This option is currently only supported for SAP systems and SSL.

    If you do not specify a database specification in the USE USER command, the new connection is opened to the database that was used prior to the USE USER command or set using option –u. You can open another database session with the USE DB command.

  • You can specify the isolation level.

    ISOLATION LEVEL <unsigned_integer>

    unsigned_integer

    Value of the isolation level to be set (default value: 3); see also: SQL Reference Manual, CONNECT Statement (connect_statement), Concepts of the Database System, Isolation Level

Example

Example Example

USE USER mona red DB demodb ON genua

End of the example.

Use user MONA to log on to database DEMODB on computer GENUA

Example Example

USE USER mona red SCHEMA hotel DB demodb ON genua

End of the example.

Use user MONA to log on to database DEMODB in the schema HOTEL on computer GENUA

Example Example

USE USER mona red DB demodb ON genua ISOLATION LEVEL 0

End of the example.

Set isolation level 0.

More Information

Opening a Session: Loader Commands

Opening a Database Session: Loader CLI Options


-24932: ERR_XPMIN - parameter value smaller than minimum allowed - SAP Documentation

Background documentation -24932: ERR_XPMIN - parameter value smaller than minimum allowed

Explanation

The entered database parameter value is below the required minimum.

User Response

Correct your entry and re-execute the DBM command.


-8010: Table name must be in from list - SAP Documentation

Background documentation -8010: Table name must be in from list

Exlpanation

A table name which was not listed in the FROM clause was specified in a selected column, search condition or ORDER clause.

User Response

  1. If a reference name was specified for a table name, use this reference name in the SQL statement.

  2. If the FROM clause contains the specification of a table which is not included in the schema of the current database user and which is also not a system table, you need to specify the schema name for the table throughout the SQL statement.


-23052: Could not save object data - SAP Documentation

Background documentation -23052: Could not save object data

Explanation

An SQL Studio object could not be saved.

User Response

Load the system tables with Database ManagerIf you receive the same error message again, contact Support.


-10411: Illegal DATE value for parameter/column (<number>) - SAP Documentation

Background documentation -10411: Illegal DATE value for parameter/column (<number>)

Explanation

The value for parameter/column <number> could not be read or inserted, because the date value is invalid.

User Response

Enter a valid date value.

More Information

Reference Manual, datetimeformat


SYSCHECKSTATISTICSDETAILS - SAP Documentation

Object documentation SYSCHECKSTATISTICSDETAILS

The database procedure SYSCHECKSTATISTICS writes a detailed log to system table <DATABASE_SYSTEM_ADMINISTRATOR>.SYSCHECKSTATISTICSDETAILS for every table considered by SYSCHECKSTATISTICS.

Structure

SYSCHECKSTATISTICSDETAILS
EXECUTIONSTART | TIMESTAMP | Start time of SYSCHECKSTATISTICS execution
SCHEMANAME | CHAR(32) | Name of the schema of the table examined
OWNER | CHAR(32) | Name of the owner of the table examined
TABLENAME | CHAR(32) | Name of the table examined
UPDATESTATISTICSSCHEDULED | CHAR(3) | YES: the statistics of the table need to be updated NO: otherwise
REASON | CHAR(20) | Explanation of why the statistics of a table need updating or not
LASTRUNROWCOUNT | FIXED(10) | Row count of the table at the time its statistics were determined
CURRENTROWCOUNT | FIXED(10) | Row count of the table at the time SYSCHECKSTATISTICS was executed
ROWCOUNTCHANGEINPERCENT | FIXED(10) | Relative row count change of the table between the time its statistics were determined and the execution of SYSCHECKSTATISTICS (%)
LASTRUNSIZE | FIXED(10) | Size of the table at the time its statistics were determined (KB)
CURRENTSIZE | FIXED(10) | Size of the table at the time SYSCHECKSTATISTICS was executed (KB)
SIZECHANGEINPERCENT | FIXED(10) | Relative size change of the table between the time its statistics were determined and the execution of SYSCHECKSTATISTICS (%)

The system table SYSCHECKSTATISTICSDETAILS keeps information on SYSCHECKSTATISTICS runs during the last 30 days. You can find information there about the tables that were considered for update statistics and whether and why an update statistics was scheduled.

More Information

  • SYSUPDSTATWANTED

    SYSCHECKSTATISTICSLOG

  • Database Administration, SQL Optimizer Statistics

  • SQL Reference Manual, UPDATE STATISTICS Statement


From -11200 to -11399 - SAP Documentation

Background documentation From -11200 to -11399

JBDC Interface Messages
Message number | Message text


-28903: DB function $1 must return a value - SAP Documentation

Background documentation -28903: DB function $1 must return a value

Explanation

A database function does not contain a RETURN statement, which means that it cannot return a result. This is not allowed.

User Response

Add a RETURN statement to the database function.


-1008: Too many or too few host variables for output - SAP Documentation

Background documentation -1008: Too many or too few host variables for output

Explanation

The SQL statement contains variables for selected columns.The number of variables does not match the number of selected columns.

User Response

Check the number and data types of the variables, and correct them.In the SELECT statement, replace ‘*’ with a sequence of column names.


Command File Mode - SAP Documentation

Function documentation Command File Mode

In command file mode, a command file written by the user is processed sequentially. The command file can contain any sequence of Loader commands and SQL statements.

Features

You can start Loader CLI in command file mode by entering the following command:

Syntax Syntax

  1. loadercli -b <command_file>
End of the code.

If you want to transfer additional information when Loader CLI is called, use the corresponding options.

Syntax Syntax

  1. loadercli -b <command_file>
  [<connect_options>]
  [<in_output_options>]
  [<version_options>]
End of the code.

Enter the name of the command file after option –b. You can also enter the requested options for establishing the connection, for input and output control and for version queries. Loader reads the Loader commands and SQL statements from the specified command_file and transfers them to the Loader server. You can also create a command file by generating the design data in transport mode.

command_file

<command_file>

Command file

connect_options
-d <database_name> | Name of database
-u [<database_user>[,<password>]] | Name and password of database user
-n <database_computer>[:<port>] | Name of database computer
-s <schema_name> | Name of schema
-e <encryption> | Encryption method

More information: Opening a Database Session: Loader CLI Options

in_output_options
-o[w|a] <file_name> | Name of output file
-cs <separator> | Command separator
-ps<number> <string> | Substitution parameter
-E <number> | Maximum number of errors allowed

More information: Input and Output: Loader CLI Options

version_options
-V | Version of Loader server
-v | Version of Loader CLI
-R <installation_path> | Directory containing the programs that are dependent on the version of the database software

More information: Determing Version Information: Loader CLI Options

Example

Example Example

loadercli -b command.dat -d demodb -u mona,red –E 20

End of the example.

Loader establishes a connection to the database DEMOB for the user MONA. Loader processes the Loader commands and SQL statements contained in the command file command.dat. If errors occur (return code <> 0), processing of the command file is terminated after 20 error messages. For more examples, see the Loader Tutorial, Command File Mode.

More Information

  • Command File

  • Transport Mode

  • Opening a Session: Loader CLI Options

  • Loader Log File


-25238: Cannot execute DATAUPDATE command; specify access columns - SAP Documentation

Background documentation -25238: Cannot execute DATAUPDATE command; specify access columns

Explanation

Error when updating data using the UPDATE COLUMNS command.The column specifications required to execute the command are missing. The values specified in the columns represent the row in the target table that should be updated.

User Response

Correct the command and then re-execute it.


-25219: Columns have to be specified in left-to-right order (positions in ascending order) - SAP Documentation

Background documentation -25219: Columns have to be specified in left-to-right order (positions in ascending order)

Explanation

Error in the command for importing data.In the command for the data stream, the format CSV was entered. In this case, the columns must be specified in the command in ascending order according to their position.

User Response

Correct the entries and re-execute the command.


-4031: Unknown datasource - SAP Documentation

Background documentation -4031: Unknown datasource

Explanation

A datasource within the CREATE TABLE statement specified name is not recognized.

User Response

Correct the misspelling of the datasource name or create the datasource before using it in the CREATE TABLE statement.


backup_history_close - SAP Documentation

Background documentation backup_history_close

You close the backup history. The backup history information that is stored temporarily in the Database Manager is deleted.

Prerequisites

  • You have the server authorization Backup or DBInfoRead.

  • You have executed the DBM command for getting the backup history (backup_history_open) or displaying the backup history (backup_history_list).

Structure

backup_history_close

Result

OK

In the event of errors, see Reply Format.

More Information

Database Administration, Log Files


IMPORT SCHEMA Command - SAP Documentation

Background documentation IMPORT SCHEMA Command

You can use the Loader command IMPORT SCHEMA to import the data belonging to the application of the specified schema.

Prerequisites

Only the owner of the schema can execute the IMPORT SCHEMA command. You have exported the required data using the corresponding EXPORT command.

Structure

Syntax Syntax

  1. <import_schema_command> ::=
  IMPORT SCHEMA <schema_name>
    [<duplicates_clause>]
    [<map_schema_spec>]
    [<configuration_spec>]
    <catalog_data_instream_part_spec>
    [<package_spec>]
    [<restart_spec>]

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

<map_schema_spec> ::=
  MAP SCHEMA [<schema_map_name> | <schema_to_schema>,...]
<schema_map_name> ::=
  <identifier>
<schema_to_schema> ::=
  <schema_name> TO <schema_name>

<configuration_spec> ::=
  CONFIGURATION <instream_csv_spec>

<catalog_data_instream_part_spec> ::=
  <catalog_instream_spec>
| <data_instream_part_spec>
| <catalog_instream_spec> <data_instream_part_spec>
<catalog_instream_spec> ::=
  CATALOG <instream_ddl_spec>
<data_instream_part_spec> ::=
  DATA <instream_tableformat_spec>

<package_spec> ::=
  PACKAGE <oustream_csv_spec>

<restart_spec> ::=
  RESTART <package_guid>
<package_guid> ::=
  <unsigned_integer>
End of the code.
<catalog_instream_spec>, <data_instream_part_spec>

Depending on whether database catalog and/or application data is imported, the following data streams are generated during import:

  • Data stream for database catalog definitions CATALOG <instream_ddl_spec>

  • Data stream for application data DATA <instream_tableformat_spec>

Only one of the formats PAGES or RECORDS is possible for the data stream for the instream_tableformat_spec application data.

See: Data Stream, PAGES, RECORDS

If the name of the schema is identical to a keyword or if upper and lowercase notation is relevant, the name must be placed in double quotation marks.

Syntax Syntax

  1. IMPORT SCHEMA <schema_name>
  [<duplicates_clause>]
  [<map_schema_spec>]
  [<configuration_spec>]
  <catalog_instream_spec> <data_instream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT SCHEMA command imports the data belonging to the application of the specified schema (database catalog and application data).

Syntax Syntax

  1. IMPORT SCHEMA <schema_name>
  [<map_schema_spec>]
  <catalog_instream_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT SCHEMA command imports the database catalog information belonging to the application of the specified schema.

Syntax Syntax

  1. IMPORT SCHEMA <schema_name>
  [<duplicates_clause>]
  [<map_schema_spec>]
  [<configuration_spec>]
  <data_instream_part_spec>
  [<package_spec>]
  [<restart_spec>]
End of the code.

This IMPORT SCHEMA command imports the application data of the specified schema.

<duplicates_clause>

You use the DUPLICATES clause to specify how to proceed when importing data from a data stream if a row with the same key as the new row already exists in the table. This clause is not evaluated if the data is imported into the database in PAGES format.

REJECT DUPLICATES | The new line is rejected with an error message (default value).
IGNORE DUPLICATES | The new line is not inserted.
UPDATE DUPLICATES | The new line overwrites the existing line.
<map_schema_spec>

If data has been exported in one schema, you can import it to another. To do this, you can use the USE SCHEMAMAP command to determine a schema map for a Loader session. However, you can also use the map_schema_spec syntax element in the IMPORT SCHEMA command, either to specify an existing schema map (schema_map_name) containing the schema mapping you require or to determine the schema mapping directly using <schema_name> TO <schema_name>.

See: CREATE/DROP SCHEMAMAP Statement

<configuration_spec>

You can exclude tables from the import.

  • If you do not specify a data stream using CONFIGURATION <instream_csv_spec>, all the application data is imported.

  • If you specify a data stream using CONFIGURATION <instream_csv_spec>, you can exclude the application data of selected tables from the import of the instream_tableformat_spec application data. The tables must be identified in the data stream by specifying their schema and table name. The information about which tables are not exported is stored in the system tables. One way of displaying this information is to display the system table SYSLOADER.TRANSFORMATIONMODEL. The tables excluded from the export of the application data have the value TRUE in the EXCLUDE column.

The database catalog entries CATALOG <instream_ddl_spec> of all tables are always imported, regardless of the restrictions set using CONFIGURATION <instream_csv_spec>.

<package_spec>

You can export system table SYSLOADER.TRANSFORMATIONMODEL.

  • If you specify a data stream using PACKAGE <outstream_csv_spec>, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to this data stream. We recommend you use this option to create a log of the export or import process.

  • If you do not specify a data stream using PACKAGE <outstream_csv_spec>, the system table SYSLOADER.TRANSFORMATIONMODEL is not exported.

See: Additional Log Functions (package_spec)

<restart_spec>

You can restart the export or import using the package_guid (ID created by Loader for every command at runtime. This integer is always 24 bytes long). The user can determine the package_guid of the corresponding export or import commands from the SYSLOADER.TRANSFORMATIONMODEL table or the log file. You can restart the command with the corresponding package_guid using the restart_spec syntax element.

See: Restarting

Result

The application data and/or database catalog are imported to the data_instream_part_spec and catalog_instream_spec data streams. If necessary, all entries in the SYSLOADER.TRANSFORMATIONMODEL table are exported to the package_spec data stream.

Errors: The import cannot be completed successfully. In this case, Loader logs the cause of the error in the log file. The values PACKAGEGUID and CLIENTNODE are also written to the log file. The PACKAGEGUID is required if you want to restart the export.

Example

Loader Tutorial, IMPORT SCHEMA

More Information

Importing: Loader Commands

EXPORT SCHEMA Command

Loader Log File

Loader System Tables


-24982: ERR_NOHISTORY - backup history file not found - SAP Documentation

Background documentation -24982: ERR_NOHISTORY - backup history file not found

Explanation

No backup history exists.

User Response

A backup history only exists if backup operations have already been executed. The backup history function cannot be used before this has been done.


-10899: Unknown error - SAP Documentation

Background documentation -10899: Unknown error

Explanation

The error could not be assigned to a message. This error can occur if you are using a beta version of the software, or if inconsistencies have arisen between internal data structures

User Response

Contact Support.


-24998: ERR_NOTIMPL - sorry, command not yet implemented - SAP Documentation

Background documentation -24998: ERR_NOTIMPL - sorry, command not yet implemented

Explanation

Your DBM command is not available in this version.

User Response

Choose a different command.If the error occurs in Database Manager GUI and there is no way in which you can correct it, please contact Support.


The DBA Log - SAP Documentation

Procedure documentation The DBA Log

You can find logs of database actions in the Jobs user menu of the DBA Cockpit.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Jobs [image] DBA Log [image] .

Result

The system displays logs for database actions from the period you selected. You should examine logs in greater detail particularly if they display warnings or errors.

More Information

Logs


-28826: Pagecounter inconsistent - SAP Documentation

Background documentation -28826: Pagecounter inconsistent

Explanation

The specifications for the page counter on the root page of the object container file and in the object file directory are not consistent. This error can occur if CHECK DATA is executed.

User Response

Inform your local support.


680: Work pending - SAP Documentation

Background documentation 680: Work pending

Explanation

The state of the current transaction cannot be determined because the communication to a data source failed in commit phase.

User Response

Shut down and restart the database when the communication is available again.


-6018: Duplicate datasource name - SAP Documentation

Background documentation -6018: Duplicate datasource name

Explanation

There is already a datasource with the specified name.

User Response

Use another name for the datasource.


DBPROCEDURES - SAP Documentation

Example documentation DBPROCEDURES

Use of the system table DOMAIN.DBPROCEDURES

Prerequisites

You can use the demo data for the SQL tutorial. Start the Database Studio as database administrator MONA with the password RED and log on to demo database DEMODB: Logging On to a Database.

Create database procedures. Proceed as described in SQL Tutorial, Database Procedures.

Activities

You can use Database Studio to enter and execute SQL statements. More information: Working with SQL Statements: Overview

Note the General Instructions for formulating SQL statements.

You can use the system table DBPROCEDURES to determine the following database information, among other things:

  • All database procedures of the HOTELschema and their comments that were created in the last 10 days

    SELECT schemaname, dbprocname, comment

    FROM DOMAIN.DBPROCEDURES

    WHERE schemaname = 'HOTEL' AND createdate >= subdate(date,10)

  • All database procedures of the SYSLOADERschema and their definition

    SELECT schemaname, dbprocname, definition

    FROM DOMAIN.DBPROCEDURES

    WHERE schemaname = 'SYSLOADER'

More Information

Parameters for a database procedure: See DBPROCPARAMS


SAP Library - ADO.NET Interface

Start Level 1 Node: ADO.NET Interface ADO.NET Interface End Level 1 Node: ADO.NET Interface


From -3000 to -3999 - SAP Documentation

Background documentation From -3000 to -3999

-3000 | Invalid host file content
-3002 | Invalid data type
-3003 | Invalid user name
-3004 | Invalid host file sequence
-3005 | Invalid SQL statement
-3007 | Invalid sequence for DML and DDL statements
-3008 | Invalid key word or missing delimiter
-3009 | Invalid table name
-3011 | Invalid column name
-3014 | Invalid end of SQL statement
-3016 | Invalid numeric constant
-3017 | Invalid unsigned integer
-3018 | Invalid numeric parameter
-3019 | Invalid exponent
-3020 | Invalid length for this data type
-3021 | Invalid mixture of functions and columns
-3024 | Invalid numeric expression
-3030 | Invalid SESSION TIMEOUT
-3035 | Invalid date time format
-3037 | Invalid volume name
-3038 | Invalid volume size
-3046 | Invalid char position in string function
-3047 | Invalid table for RESTORE CATALOG
-3048 | Invalid date format
-3049 | Invalid time format
-3050 | Invalid timestamp format
-3054 | Invalid block size
-3059 | Invalid day of week
-3061 | Invalid escape value
-3062 | Invalid month
-3063 | Invalid format code
-3064 | Date input value out of range
-3065 | Invalid date input value
-3066 | Date input value inconsistent
-3067 | Invalid time zone
-3068 | Mismatch of parameter configuration between backup and instance
-3069 | Bad xparam page in backup
-3071 | Invalid datasource name
-3072 | Invalid value for EXECUTE on datasource
-3073 | Invalid value for TYPE on datasource
-3074 | Statement not possible for external tables
-3102 | Invalid subtrans structure
-3103 | Invalid sequence definition
-3995 | Invalid pattern
-3998 | Wrong password
-3999 | Invalid parameter


-24967: ERR_SYSTEM - system call error - SAP Documentation

Background documentation -24967: ERR_SYSTEM - system call error

Explanation

An attempt to use an operating system function has failed.

User Response

Read the extended error text, which describes operating system messages in more detail.


Kernel Administration - SAP Documentation

Procedure documentation Kernel Administration

In the Logs user menu of the DBA Cockpit you can find, among other things, a display of administrative commands that were sent from the DBM server to the database kernel when using SAP liveCache technology.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and choose [image] Configuration [image] Logs [image] Kernel Administration [image] .

Caution Caution

For SAP NetWeaver 7.1, use the liveCache Assistant to call the Kernel Administration display.

End of the caution.

More Information

Database Administration, Log Files


-s: Displaying Client Information - SAP Documentation

Background documentation -s: Displaying Client Information

Use this option to display the version and path information of a pure client installation.

You can use the -s option for the dbm_version and dbm_getpath commands only. When specified with other DBM commands, the -s option does not have any effect.

If you do not specify the -s option together with these commands, the DBMCLI client connects to the DBM server of the highest available server installation on this computer. The information displayed then refers to this DBM server.

Prerequisites

You are logged on to a pure DBM client. There is no DBM server in this installation.

Structure

-s

Example

Displaying the Version Information of a DBMCLI Client Installation

>dbmcli -s dbm_version

OK

VERSION = 7.9.00

BUILD = DBMServer 7.9.00 Build 000-123-211-705

OS = WIN32

SYSNAME = Windows Vista Enterprise Edition, 32-bit


-71: Session terminated by shutdown (Work rolled back) - SAP Documentation

Background documentation -71: Session terminated by shutdown (Work rolled back)

Explanation

The user's transaction was implicitly canceled and reset by a ROLLBACK statement. The database session was terminated because the database management system forced the database instance to shut down. To speed up a later restart, the database system tries to reset and not just terminate open transactions within a short period.

User Response

Once the database is ready, you must repeat the CONNECT statement and the transaction.


-2027: Space for converted value too small - SAP Documentation

Background documentation -2027: Space for converted value too small

Explanation

You tried to convert ASCII or UCS-2 data to another format. The attempt failed.

User Response

Check whether the target column definition is large enough. If you cannot increase the target column, you cannot carry out an explicit conversion. You can try to avoid this error by explicitly converting the data used for the purpose of, for example, comparisons.


-25317: Constant must be compatible with column type and length (column: '<column_name>') - SAP Documentation

Background documentation -25317: Constant must be compatible with column type and length (column: '<column_name>')

Explanation

The Loader command to import or update data contains an error. The value that has to be imported cannot be imported into the column because it is either too long or the external data type and the column data type are incompatible.

User Response

Correct the data and re-execute the command.


-907: Space for user session exhausted - SAP Documentation

Background documentation -907: Space for user session exhausted

Explanation

You have not been connected to database system, because there is not sufficient free temporary disk space for the CONNECT of a normal database session.

User Response

  1. You can connect as soon as another user has disconnected, or if there is sufficient free storage space available again, because other users deleted some result tables.

  2. You can use the database manager to log on and reconfigure the database instance.


SAP liveCache and CCMS Documentation

 Entering content frame

Component documentation SAP liveCache and CCMS Documentation

All documentation on SAP liveCache, and the administration of SAP MaxDB database systems in the Computing Center Management System CCMS, is relevant for SAP customers only. For more details see the SAP Help Portal at http://help.sap.com.

Leaving content frame


-25319: Missing data for specified column '<column_name>' - SAP Documentation

Background documentation -25319: Missing data for specified column '<column_name>'

Explanation

Error in the command for importing data. When you import data, you must specify data in the data stream for all columns included in the command. The only exceptions to this rule are columns that permit system default or NULL values.The Loader found no data in the data stream for the specified column. In addition to displaying this error message, the Loader also logs which row (text data stream) or which position in the data stream (binary data stream) contained the error.

User Response

Check the data in the data stream and re-execute the command.


Recreating Damaged Indexes - SAP Documentation

Procedure documentation Recreating Damaged Indexes

Prerequisites

  • You are logged on to the database as a database user.

  • You have the INDEX privilege for the table to which the damaged index belongs.

    More information: SQL Reference Manual, Privilege Specification (privilege_specification)

  • The database is in the ONLINE operational state.

Procedure

Automatically Recreating Indexes

See Activating or Deactivating the Automatic Recreation of Damaged Indexes

Manually Recreating Indexes

Recommendation Recommendation

Recreate indexes during periods where the load on the system is low.

End of the recommendation.

  1. Display the damaged indexes.

    More information: Displaying Indexes

  2. In the context menu of each damaged index, choose Recreate.

    The system deletes the damaged index and recreates it.

More Information

  • Creating Indexes

  • Activating or Deactivating Indexes

  • Deleting Indexes

  • Restoring Databases


-28009: Duplicate class id - SAP Documentation

Background documentation -28009: Duplicate class id

Explanation

Registering a persistent class with a class identification failed. The class identification is already used by another class (with different properties).

User Response

Use a class identification, which is not yet used from another persistent class.


-107: SQL statement not allowed for this instance - SAP Documentation

Background documentation -107: SQL statement not allowed for this instance

Explanation

The database instance is unable to execute this SQL statement.

User Response

You must do without the SQL statement for this database instance.


EXPORT COLUMNS Command - SAP Documentation

Background documentation EXPORT COLUMNS Command

You can use the Loader command EXPORT COLUMNS to export individual column values from a table.

Prerequisites

You must have access authorization for the tables from which you want to export data.

Structure

Syntax Syntax

  1. <export_columns_command> ::=
  EXPORT COLUMNS <select_expression>
    [MAP COLUMNS <export_column_spec> ...]
    <data_outstream_column_spec>

<select_expression> ::=
  <!  SELECT statement without specifying the keyword SELECT  !>

<data_outstream_column_spec> ::=
  DATA <outstream_columnformat_spec> [<export_lobcolumn_spec> ...]

<package_spec> ::=
  PACKAGE <oustream_csv_spec>
End of the code.

You can use the EXPORT COLUMNS command to specify the table columns from which you want to export the application data (DATA). You can link several tables and specify a sort order for the exported data.

<select_expression>

You use the syntax rule select_expression to specify which columns in a table are to be exported. The database query is formulated in the same way as a SELECT statement, except that the SELECT keyword is not used. All SELECT statement options are permitted:

  • Select the result columns and determine their order in the result table

  • Join multiple tables

  • Use qualifications to select result rows

  • Specify sort order

  • Specify locks and the isolation level

<export_column_spec>

If you specify the syntax element export_column_spec, you describe the columns in a source table that are to be exported (output columns) and how the data records are represented in the data stream.

  • The columns can be in any order in the column description.

  • The column list can only contain columns of the SELECT statement or a subset of these columns.

  • Values are output only for the columns in the column list. If the column list contains more columns than the SELECT statement, Loader generates an error and terminates the command.

  • If you want to assign the columns of the source table to fields of the data stream you have to use the keyword MAP COLUMNS.

  • If you have defined CSV format for the data stream, the values of the columns to be exported are output in the order defined in the SELECT statement and separated with separators.

  • If you have defined format FWV for the data stream, the values of the columns to be extracted are formatted and output in the order defined in the SELECT statement. The length of the output values depends on the sizes defined for the individual columns of the source table.

  • If the SELECT statement does not contain any column names (EXPORT COLUMNS * FROM ...), the format of the columns is the same as that of the data stream. They are output in the order specified by the database catalog.

Result

The application data is exported to the outstream_columnformat_spec data stream and, if appropriate stating the LOB specification export_lobcolumn_spec. The application data can be reconstructed with the corresponding IMPORT command.

Errors: The export cannot be completed successfully. Loader logs the cause of the error in the log file.

Example

Loader Tutorial, EXPORT COLUMNS

More Information

Exporting: Loader Commands

IMPORT TABLE Command

IMPORT COLUMN Command

Loader Log File


-10862: Stream parameter (<number>) error in read|write procedure - SAP Documentation

Background documentation -10862: Stream parameter (<number>) error in read|write procedure

Explanation

An error was reported when calling the callback procedure when processing a liveCache stream.

User Response

Check the callback procedure.


Database Studio Preferences: Repository - SAP Documentation

Background documentation Database Studio Preferences: Repository

Repository: Settings
Property | Comments
Local Folder Path | Path to the local folder which is used as Local User Folder in the My Repository area of the Exporer.


Automating Database Administration Activities - SAP Documentation

Background documentation Automating Database Administration Activities

To enable a more effective database administration, you can automate many of the DBA actions.

DBA actions

Automatic backup

DBA Planning Calendar,

  • Scheduling a Data Backup

  • Activating Automatic Log Backup

  • Scheduling Interactive Log Backups

  • Archiving Backup Files

  • Action Patterns

Backing up SAP liveCache in the background

Backing Up liveCache: Background Processing

Storing and Checking Backups

Planning Concept

Automatic updating of the SQL Optimizer statistics

DBA Planning Calendar, Scheduling Updates in SQL Optimizer Statistics

Automatically checking database structures

DBA Planning Calendar, Scheduling a Database Structure Check

Updating table statistics

Planning Concept

Reporting Critical Alerts

Automatic Monitoring

Automating bottleneck analysis

Database Analyzer

Deleting DBA action logs automatically

Automatic Monitoring

Start SAP liveCache in the background

Starting liveCache

Stop SAP liveCache in the background

Stopping liveCache

Initialize SAP liveCache in the background

Initializing liveCache

More Information

  • Database Administration,

    Automating Administration Tasks

    Periodic Administration Tasks

  • DBA Planning Calendar, Scheduling Concept

  • Database Administration: Overview of Activities


MULTIVERSIONREADSTATISTICSRESET - SAP Documentation

Object documentation MULTIVERSIONREADSTATISTICSRESET

The system table SYSINFO.MULTIVERSIONREADSTATISTICSRESET provides details about operations for preserving consistent reading since the last RESET MULTIVERSIONREADSTATISTICS or RESET ALL.

Structure

MULTIVERSIONREADSTATISTICSRESET
RESETDATE | TIMESTAMP | Time of the last RESET for these entries
HISTORYANCHORFROMFILECOUNT | FIXED(20) | Number of pages whose entry points into history data had to be recreated via additional page access
HISTORYANCHORFROMPAGECOUNT | FIXED(20) | Number of pages whose entry points into history data could be created directly from the page
HISTORYANCHORTOFILECOUNT | FIXED(20) | Number of pages whose entry points into history data had to be stored on an additional page while writing
HISTORYANCHORTOPAGECOUNT | FIXED(20) | Number of pages whose entry points into history data could be stored on the page itself while writing
HISTORYACCESSCOUNT | FIXED(20) | Number of accesses to history data

More Information

MULTIVERSIONREADSTATISTICS


-28002: Invalid OID - SAP Documentation

Background documentation -28002: Invalid OID

Structure

Explanation

Invalid OID specified for an OMS operation.This is the case if the page number or position part of the OID falls outside of the permitted limits.

User Response

Contact Support.


-28902: Too many nested try/catch statements - SAP Documentation

Background documentation -28902: Too many nested try/catch statements

Explanation

A maximum of 16 nested TRY/CATCH blocks is permitted in a database procedure.

User Response

Do not exceed the upper limit of 16 nested TRY/CATCH blocks when you code the database procedure.


Resource Monitor - SAP Documentation

Procedure documentation Resource Monitor

The SQL Performance user menu of the DBA Cockpit contains, among other things, the SQL resource monitor. By analyzing resource consumption, you can identify the most costly SQL statements. The resources used by an SQL statement are measured (runtime and I/O accesses, for example).

If an SQL statement is used more than once, the total cost is calculated. This enables you to identify those SQL statements that have a relatively short runtime but cause a considerable database load due to the number of times they are executed. The SQL resource monitor is therefore a monitoring tool that can be used for load analysis of one workday, for example.

Prerequisites

Only for the SAP MaxDB (OLTP) database that is the basis of the current SAP Web AS system: In order for the name of the ABAP program and other information to be sent to the database, the instance profile parameter dbs/ada/register_appl_info=1 must be set.

Procedure

Open the DBA Cockpit (transaction DBACOCKPIT) and select [image] Performance [image] SQL Performance [image] Resource Monitor [image] .

Result

Starting/Stopping the SQL Resource Monitor

To start or stop the SQL resource monitor, choose [image] Resource Monitor [image] Start Recording / Stop Recording [image] .

During normal operation of the database system, the resource monitor is stopped. The status of the SQL resource monitor is displayed in the Current Monitor Status area and can be refreshed using [image] Resource Monitor [image] Refresh Monitor Status [image] .

Output of Results

Since the number of recorded SQL statements can be very large, you can restrict the display by setting output criteria. To output the results in the SQL resource monitor, select [image] Resource Monitor [image] Refresh Monitor Output [image] .

Displaying SQL Statements

If a logged SQL statement was called from an ABAP program, you can trace the SQL statement back to that program. To do this, select the SQL statement in the display quantity of the SQL resource monitor and choose Display Call in ABAP Program (only for the OLTP database instance that is the basis of the current SAP Web AS system).

To obtain additional information about an SQL statement, double-click the SQL statement or choose Display SQL Statement. You can see the complete SQL statement in the following view. Additional analyses are possible for SQL statements:

  • Tables/View Information: The Tables/Views/Synonyms display appears.

  • Print Version: You can copy the output to the clipboard or print it directly.

  • Display Callpoint in ABAP Program (only for the OLTP database instance that serves as the basis for the current SAP Web AS system)

  • Information about ABAP Callpoint (only for the OLTP database that serves as the basis for the current SAP Web AS system)

Initializing the Resource Monitor Tables

Tables SYSDATA_ANALYZE and SYSCMD_ANALYZE save statistical information that is calculated when an SQL statement is executed, along with the SQL statements themselves, when the resource monitor is active. Stopping the resource monitor does not initialize tables SYSDATA_ANALYZE and SYSCMD_ANALYZE.

To initialize the resource monitor tables, in the SQL resource monitor, choose [image] Resource Monitor [image] Initialize Monitor Tables [image] .

More Information

  • Command Monitor

  • Properties

  • Database Administration, Special Database Parameters


-27003: Numeric input parameter overflow - SAP Documentation

Background documentation -27003: Numeric input parameter overflow

Explanation

An overflow occurred in one of the following situations:

  • With an SQL read statement:when transferring a numerical value from the database instance to a host variable

or

  • With an SQL write statement:when transferring a numerical value of a host variable to the database instance.

User Response

Contact Support.


-877: Unknown parameter name - SAP Documentation

Background documentation -877: Unknown parameter name

Explanation

The name of the parameter is not known.

User Response

Correct the name or declare an indicator.


Creating Schemas - SAP Documentation

Procedure documentation Creating Schemas

Prerequisites

  • You are logged on to the database as a database system administrator or database user of user class DBA.

  • The database is in the ONLINE operational state.

Procedure

Create a new schema using the CREATE SCHEMA statement.

More information: Entering and Executing SQL Statements

More Information

SQL Reference Manual, CREATE SCHEMA Statement (create_schema_statement)


-7018: Variable not allowed in view definition - SAP Documentation

Background documentation -7018: Variable not allowed in view definition

Explanation

Parameters must not be specified in the CREATE VIEW statement.

User Response

Use variables instead of constants.


System Tables - SAP Documentation

Component documentation System Tables

The database system contains a series of system tables with information about database objects and their connection to each other, statistics system tables, monitor system tables and loader system tables.

The following information describes how to evaluate the system tables.

  • When you specify SELECT statements for the system tables, you have to bear in mind some general information

  • To find out which system table contains information for a particular database term, consult the list of database terms.

  • To find out which information a particular system table can provide, see the examples of SELECT statements in the section on evaluating system tables. The examples make use of the demo data for the SQL Tutorial.

  • For a complete definition of some of the most important system tables, see Definition of the System Tables.

More Information

SQL Reference Manual


-3072: Invalid value for EXECUTE on datasource - SAP Documentation

Background documentation -3072: Invalid value for EXECUTE on datasource

Explanation

The specified EXECUTE syntax is incorrect.

User Response

Correct the statement for creating a datasource and use one of the possible EXECUTE syntaxes: EXECUTE INPROC or EXECUTE LOCAL.


200: Duplicate key - SAP Documentation

Background documentation 200: Duplicate key

Explanation

There is already a table row with the key to be inserted.

User Response

Check whether the existing table row contains the desired values. If this is not the case, check whether values in the existing table row can be replaced with the desired values. If a new table row must be inserted, change the value of the key to be inserted in the SQL statement in order to prevent key collisions.


-3054: Invalid block size - SAP Documentation

Background documentation -3054: Invalid block size

Explanation

  1. The specified block size for backing up or restoring data is invalid.

  2. (liveCache) When registering a container that already exists in the database, the specified length of the object is different to the one stored in the database catalog.

User Response

  1. Set the block size to a value >= 1.

  2. Register the container using the length specifications stored in the database catalog.


Obsolete Database Parameters - SAP Documentation

Background documentation Obsolete Database Parameters

Starting with version 7.7.03 of the database software, some database parameters have been marked as obsolete. These parameters have either been removed already or will be removed in one of the next database versions.

The following table lists the most important database parameters that have been marked as obsolete.

Obsolete Database Parameters (Selection)
Name | Old Names | Marked as Deprecated Since Version | Removed Since Version | Description
DeprecatedParameter38 | EnableSynchronousTaskIO _USE_IOPROCS_ONLY | 7.8 | - | YES: I/O operations are executed only by special I/O threads NO: The kernel decides whether a task executes an I/O operation itself or delegate the I/O operation to a special I/O thread
- | MaxVolumes MAXVOLUMES | 7.8 | - | Maximum number of data and log volumes, including mirrored volumes
- | MiniDumpType MINI_DUMP | 7.8 | - | Defines whether the system writes the memory dumps knlmini.dmp and srvmini.dmp (for postmortem debugging) and how much information these dumps contain
- | _BACKUP_HISTFILE | 7.7 | 7.7 | Name of the history file for data and log backups
- | _BACKUP_MED_DEF | 7.7 | 7.7 | Name of the file containing the definitions of the backup templates
DeprecatedParameter22 | _UNICODE | 7.7 | - | Defines whether the database system uses Unicode as the character set for the names of database objects in the database catalog
DeprecatedParameter01 | BACKUP_BLOCK_CNT | 7.7 | - | Block size used by the database system when writing backups to data carriers Only useful for tapes that have an optimal block size
- | ClusterCompressionThreshold | 7.7.06.04 7.7.04.27 7.8.00.04 | - | Minimum number of blocks in a cluster that is eligible for compression that needs to be reached before the database system starts compressing the cluster (in 1/1000 of the total block count)
DeprecatedParameter13 | EXPAND_COM_TRACE | 7.7 | - | Specifies whether memory space is reserved when COM trace files are created
DeprecatedParameter29 | USE_OPEN_DIRECT | 7.7 | - | Replaced by UseFilesystemCacheForVolume, see Support Database Parameters YES: the database system uses the O_DIRECT flag when opening volumes (if this flag is supported by the file system). You use this flat to configure that the operating system does not use a separate cache for I/O operations. Note that this flag is ignored for Linux kernel < 2.4.18.Changes only apply after restart


-10505: Result set type is UPDATABLE but row set type is READ_ONLY - SAP Documentation

Background documentation -10505: Result set type is UPDATABLE but row set type is READ_ONLY

Explanation

A RowSet could not be generated, because the corresponding SQL statement or the result set type does not allow updates (modifications).

User Response

Modifiable result sets can only be generated using special SELECT statements. The following options are available:

  • Alter the SQL statement

  • Set the result set type to CONCUR_UPDATABLE sing the SQLDBC_Statement::ConcurrencyType or SQLDBC_PreparedStatement::ConcurrencyType method.


auto_recreate_bad_index - SAP Documentation

Background documentation auto_recreate_bad_index

You can instruct the database to recreate bad indexes automatically. You can also specify whether you want all bad indexes to be recreated automatically or only unique indexes that prove to be bad.

You can switch this function on or off. The default setting is OFF.

You also use this DBM command to display the status of this function.

If the function is ON, the system recreates bad indexes after having received a respective event from the database kernel.

Note Note

Make sure that X server is running.

End of the note.

Prerequisites

You have the server permissions EvtDispMgm and AccessSQL.

Structure

auto_recreate_bad_index <mode>

<mode> :: = ALL | UNIQUE | OFF | SHOW

Options
Option | Description
<mode> | Function for automatically recreating bad indexes Possible values are: ALL: Recreate all bad indexes UNIQUE: Recreate unique indexes that prove to be bad OFF: Disable function SHOW: Display function

Result

OK

[ALL | UNIQUE | OFF | UNKNOWN]

Values for the Reply Fields
Value | Description
ALL | UNIQUE | OFF | UNKNOWN | Output if the SHOW mode is used ALL: The function is on. All bad indexes are automatically recreated. UNIQUE: The function is on. Unique indexes that prove to be bad are automatically recreated. OFF: The function for automatically recreating bad indexes is inactive. UNKNOWN: The system cannot determine the status of the function for automatically recreating bad indexes.

In the event of errors, see Reply Format.


Download - SAP Documentation

Background documentation Download

Downloads and Information for SAP Customers
Product | Source
Database Software SAP MaxDB/SAP liveCache Technology | SAP installation CD SAP Service Marketplace at http://service.sap.com/swcenter-3pmain/
SAP MaxDB Installation and Upgrade Guides | See SAP Note 767598
Upgrade Guide for SAP liveCache Technology | See SAP Note 767598
Product Availability Matrix (PAM) | See http://service.sap.com/pam
SAP MaxDB Documentation | SAP installation CD See also SAP Note 767598
SAP liveCache Technology Documentation | SAP installation CD See also SAP Note 767598
Downloads and Information for Other Users
Product | Source
SAP MaxDB Database Software | See https://www.sdn.sap.com/irj/sdn/maxdb-downloads
Product Availability Matrix | See https://www.sdn.sap.com/irj/sdn/maxdb?rid=/webcontent/uuid/30501665-8e9b-2a10-9fa9-cedf4c9d2095
Overview of the Supported Operating Systems and Architectures | See https://www.sdn.sap.com/irj/sdn/maxdb?rid=/webcontent/uuid/7001df5e-549f-2a10-4487-f818b3c52031
Installation Description | In the documentation (See Installation Manual at http://maxdb.sap.com/documentation/)
Security Guide | In the documentation (See SAP MaxDB Security Guide at http://maxdb.sap.com/documentation/)
Documentation | See http://maxdb.sap.com/documentation/


Security - SAP Documentation

Background documentation Security

There are several recommendations on how to securely operate your database. Depending on your security requirements, you can also implement additional security measures for your database.

More Information

SAP MaxDB Security Guide


-28606: Communication error - SAP Documentation

Background documentation -28606: Communication error

Explanation

This error only occurs if you are using socket communication. An unexpected data packet has been received, or the size of the data packet does not match the object size specified in the request packet.

User Response

Contact your local support.


-804: Parameter list too long - SAP Documentation

Background documentation -804: Parameter list too long

Explanation

More parameters have been specified in a statement than are permitted in the pertinent EXECUTE statement.

User Response

Modify the number of parameters in such a way that it corresponds to the specifications made in the column list.


-10321: LOB invalidated by a previous error for parameter/column (<number>) - SAP Documentation

Background documentation -10321: LOB invalidated by a previous error for parameter/column (<number>)

Explanation

The SQLDBC_LOB method that was called could not be executed, because the last attempt to call the method failed and, as a result, the LOB object for parameter/column <number> is invalid.

User Response

Check the last attempt to call the method.


-10903: Internal Error: LONGDATA part expected - SAP Documentation

Background documentation -10903: Internal Error: LONGDATA part expected

Explanation

The method that was called failed during the transfer of LOB values, because the database kernel did not provide the necessary data, or the internal structure of the buffer for the connection to the database instance is inconsistent.

User Response

Check the kernel log for more information about the error.


SAP Banner

Entering navigation banner
Documentation of SAP MaxDB Database Version 7.8 Copyright
SAP Knowledge Warehouse
Leaving navigation banner


SAP

 Start of Alphabet Bar A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Special Character End of Alphabet Bar


SAP Library
Release 4.6B, December 2000
SAP Library

Glossary

Getting Started

Release Notes

Implementation Guide
© Copyright 2000 SAP AG
All rights reserved.


Broken Link

 Start of Content Area

The target of the selected link does not exist

 End of Content Area


HTML Help Viewer Help

Use

With the HTML Help Viewer you can view the SAP Library in file format Compiled HTML (*.CHM).

Features

The HTML Help Viewer comprises:

  • A topic window for displaying the current help document.
  • A navigation window for displaying the current table of contents, the keyword search and the full-text search. (The navigation window can be hidden or shown: Hide/Show.)
  • A toolbar containing navigation and print functions, etc.

If you go to other help files while navigating through the online help, other HTML Help Viewer instances are opened. These instances can be closed individually. If you close the initial instance, all viewer instances are closed.

To go to the first page of the SAP Library, choose Home. You have access to the entire documentation from there: SAP Library, Glossary, Implementation Guide (IMG) and Release Notes.

Finding Help Documents

To find help documents:

  • Navigate in the table of contents tree structure (Contents tab)
    • To expand or collapse all branches of the table of contents tree, click the right-hand mouse key in the navigation window and choose Expand all or Collapse all in the context menu.
    • To move backwards and forwards in a navigation path, choose Back or Forward in the toolbar. This applies to the navigation path within an HTML Help Viewer instance.
    • To display only the entries for particular info classes in the table of contents, click the right-hand mouse key in the navigation window and choose Customize... in the context menu. Specify in the following dialog which info classes are to appear in the table of contents.
  • Perform a keyword search (Index tab)

The complete index is displayed if you are in the SAP Library; the index of the current help file is displayed if you are in another help file. No Index tab is displayed if no index exists for the current help file.

Loading the complete SAP Library index (approx. 8 MB) can take several minutes, depending on the configuration of your PC.

Select an entry in the list of keywords and choose Display.
If the selected keyword is assigned to only one help document, that document is displayed. Otherwise a list of documents found is offered for selection.

As Release Notes and IMG have no index, only full-text search is possible for them.
  • Perform a full-text search (Search tab)

Enter a search request and choose List Topics.
All documents are searched if you are in the SAP Library; only the documents in the current help file are searched if you are in another help file. The documents found are listed for selection.

To make complex searches:
    • Use the place holder ? for single characters and * for character strings in search terms.
    • Match similar words
    • Combine search terms with the operators:
      • AND (all terms appear in the document)
      • OR (at least one of the terms appears in the document)
      • NOT (the term does not appear in the document)
      • NEAR (the terms occur close together, such as in the same sentence in the document)
    • Restrict the search to document titles (Search titles only)
    • Restrict the search to the set of documents found in the previous search (Search previous results)

A global search in the SAP Library, in particular full-text search, requires a large amount of main memory. Global full-text search should only be used if the help files are on the local hard disk.

Finding the Current Help Document in the Table of Contents

If you found the current topic by search or hyperlink, the position of the topic in the table of contents is not displayed. To find the topic in the table of contents, choose Locate in the HTML Help Viewer toolbar.

If you found the current topic by a global (full-text or keyword) search in the SAP Library, the help file containing the topic must first be found. Click on the Locate icon [image] in the topic title. Then choose Locate in the toolbar to expand the help file table of contents and find the position of the topic.

Printing Help Documents

You can print individual help documents or several documents at the same time:

  • To print the current topic, choose Print with the option Print the selected topic.
  • To print the current topic and all its subtopics, choose Print with the option Print the selected heading and all subtopics.


SAP Library

These product-specific HTML-based documents form part of the SAP Library.
To view the entire SAP Library, please go to http://help.sap.com.


Broken link

Error: Broken link

You tried to follow a link that points to an unknown target document.