Package org.h2.expression.function

# Class SysInfoFunction

java.lang.Object
org.h2.expression.Expression
org.h2.expression.Operation0
org.h2.expression.function.SysInfoFunction

All Implemented Interfaces:
  `NamedExpression`, `HasSQL`, `Typed`

public final class SysInfoFunction extends Operation0 implements NamedExpression
Database or session information function.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`AUTOCOMMIT`
AUTOCOMMIT().
`static final int`
`DATABASE_PATH`
DATABASE_PATH().
`static final int`
`H2VERSION`
H2VERSION().
`static final int`
`LOCK_MODE`
LOCK_MODE().
`static final int`
`LOCK_TIMEOUT`
LOCK_TIMEOUT().
`static final int`
`MEMORY_FREE`
MEMORY_FREE().
`static final int`
`MEMORY_USED`
MEMORY_USED().
`static final int`
`READONLY`
READONLY().
`static final int`
`SESSION_ID`
SESSION_ID().
`static final int`
`TRANSACTION_ID`
TRANSACTION_ID().

### Fields inherited from class org.h2.expression.Expression

`AUTO_PARENTHESES, MAP_IN_AGGREGATE, MAP_IN_WINDOW, MAP_INITIAL, WITH_PARENTHESES, WITHOUT_PARENTHESES`

### Fields inherited from interface org.h2.util.HasSQL

`ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS`

## Constructor Summary

Constructors
Constructor
Description
`SysInfoFunction(int function)`

## Method Summary

Modifier and Type
Method
Description
`int`
`getCost()`
Estimate the cost to process the expression.
`String`
`getName()`
Get the name.
`static String`
`getName(int function)`
Get the name for this function id.
`TypeInfo`
`getType()`
Returns the data type.
`StringBuilder`
`getUnenclosedSQL(StringBuilder builder, int sqlFlags)`
Get the SQL statement of this expression.
`Value`
`getValue(SessionLocal session)`
Return the resulting value for the current row.
`boolean`
`isEverything(ExpressionVisitor visitor)`
Check if this expression and all sub-expressions can fulfill a criteria.

### Methods inherited from class org.h2.expression.Operation0

`mapColumns, optimize, setEvaluatable, updateAggregate`

### Methods inherited from class org.h2.expression.Expression

`addFilterConditions, createIndexConditions, getAlias, getBooleanValue, getColumnName, getColumnNameForView, getEnclosedSQL, getNonAliasExpression, getNotIfPossible, getNullable, getSchemaName, getSQL, getSQL, getSQL, getSQL, getSubexpression, getSubexpressionCount, getTableAlias, getTableName, getTypeIfStaticallyKnown, getWhenSQL, getWhenValue, isConstant, isIdentity, isNullConstant, isValueSet, isWhenConditionOperand, needParentheses, optimizeCondition, toString, writeExpressions, writeExpressions`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.h2.util.HasSQL

`getTraceSQL`

## Field Details

### AUTOCOMMIT

public static final int AUTOCOMMIT
AUTOCOMMIT().

See Also:
  - Constant Field Values

### DATABASE_PATH

public static final int DATABASE_PATH
DATABASE_PATH().

See Also:
  - Constant Field Values

### H2VERSION

public static final int H2VERSION
H2VERSION().

See Also:
  - Constant Field Values

### LOCK_MODE

public static final int LOCK_MODE
LOCK_MODE().

See Also:
  - Constant Field Values

### LOCK_TIMEOUT

public static final int LOCK_TIMEOUT
LOCK_TIMEOUT().

See Also:
  - Constant Field Values

### MEMORY_FREE

public static final int MEMORY_FREE
MEMORY_FREE().

See Also:
  - Constant Field Values

### MEMORY_USED

public static final int MEMORY_USED
MEMORY_USED().

See Also:
  - Constant Field Values

### READONLY

public static final int READONLY
READONLY().

See Also:
  - Constant Field Values

### SESSION_ID

public static final int SESSION_ID
SESSION_ID().

See Also:
  - Constant Field Values

### TRANSACTION_ID

public static final int TRANSACTION_ID
TRANSACTION_ID().

See Also:
  - Constant Field Values

## Constructor Details

### SysInfoFunction

public SysInfoFunction(int function)

## Method Details

### getName

public static String getName(int function)
Get the name for this function id.

Parameters:
  `function` - the function id
Returns:
  the name

### getValue

public Value getValue(SessionLocal session)
Description copied from class: `Expression`
Return the resulting value for the current row.

Specified by:
  `getValue` in class `Expression`
Parameters:
  `session` - the session
Returns:
  the result

### getUnenclosedSQL

public StringBuilder getUnenclosedSQL(StringBuilder builder, int sqlFlags)
Description copied from class: `Expression`
Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.

Specified by:
  `getUnenclosedSQL` in class `Expression`
Parameters:
  `builder` - string builder
  `sqlFlags` - formatting flags
Returns:
  the specified string builder

### isEverything

public boolean isEverything(ExpressionVisitor visitor)
Description copied from class: `Expression`
Check if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.

Specified by:
  `isEverything` in class `Expression`
Parameters:
  `visitor` - the visitor
Returns:
  if the criteria can be fulfilled

### getType

public TypeInfo getType()
Description copied from class: `Expression`
Returns the data type. The data type may be unknown before the optimization phase.

Specified by:
  `getType` in interface `Typed`
Specified by:
  `getType` in class `Expression`
Returns:
  the data type

### getCost

public int getCost()
Description copied from class: `Expression`
Estimate the cost to process the expression. Used when optimizing the query, to calculate the query plan with the lowest estimated cost.

Specified by:
  `getCost` in class `Expression`
Returns:
  the estimated cost

### getName

public String getName()
Description copied from interface: `NamedExpression`
Get the name.

Specified by:
  `getName` in interface `NamedExpression`
Returns:
  the name in uppercase