MySQL Shell API 9.4.0
Unified development interface for MySQL Products
Methods | Properties | List of all members
ClassicSession Class Reference

Enables interaction with a MySQL Server using the MySQL Protocol. More...

Methods

String getUri ()
 Retrieves the URI for the current session. More...
 
String getSshUri ()
 Retrieves the SSH URI for the current session. More...
 
String getSqlMode ()
 Retrieves the SQL_MODE for the current session. More...
 
Integer getConnectionId ()
 Retrieves the connection id for the current session. More...
 
ClassicResult runSql (String query, Array args=[])
 Executes a query and returns the corresponding ClassicResult object. More...
 
Undefined close ()
 Closes the internal connection to the MySQL Server held on this session object.
 
ClassicResult startTransaction ()
 Starts a transaction context on the server. More...
 
ClassicResult commit ()
 Commits all the operations executed after a call to startTransaction(). More...
 
ClassicResult rollback ()
 Discards all the operations executed after a call to startTransaction(). More...
 
Bool isOpen ()
 Returns true if session is known to be open. More...
 
Undefined setQueryAttributes (Dictionary attributes)
 Defines query attributes that apply to the next statement sent to the server for execution. More...
 
Undefined setClientData (String key, Any value)
 Associates a value with the session for the given key. More...
 
Any getClientData (String key)
 Returns value associated with the session for the given key. More...
 
String trackSystemVariable (String variable)
 Enables session tracking of the given system variable. More...
 

Properties

String uri
 Retrieves the URI for the current session.
 
String sshUri
 Retrieves the SSH URI for the current session.
 
Integer connectionId
 Retrieves the connection id for the current session.
 

Detailed Description

Enables interaction with a MySQL Server using the MySQL Protocol.

Provides facilities to execute queries.

// Begins a transaction
classicSession.startTransaction();
// Inserts some records
var res1 = classicSession.runSql('insert into sample values ("john")');
var res2 = classicSession.runSql('insert into sample values ("carol")');
var res3 = classicSession.runSql('insert into sample values ("jack")');
// Commits the transaction
classicSession.commit();

Member Function Documentation

◆ getUri()

String getUri ( )

Retrieves the URI for the current session.

Returns
A string representing the connection data.

◆ getSshUri()

String getSshUri ( )

Retrieves the SSH URI for the current session.

Returns
A string representing the SSH connection data.

◆ getSqlMode()

String getSqlMode ( )

Retrieves the SQL_MODE for the current session.

Returns
Value of the SQL_MODE session variable.

Queries the value of the SQL_MODE session variable. If session tracking of SQL_MODE is enabled, it will fetch its cached value.

◆ getConnectionId()

Integer getConnectionId ( )

Retrieves the connection id for the current session.

Returns
An integer value representing the connection id.

◆ runSql()

ClassicResult runSql ( String  query,
Array  args = [] 
)

Executes a query and returns the corresponding ClassicResult object.

Parameters
querythe SQL query to execute against the database.
argsOptional list of literals to use when replacing ? placeholders in the query string.
Returns
A ClassicResult object.
Exceptions
LogicErrorif there's no open session.
ArgumentErrorif the parameters are invalid.

◆ startTransaction()

Undefined startTransaction ( )

Starts a transaction context on the server.

Calling this function will turn off the autocommit mode on the server.

All the operations executed after calling this function will take place only when commit() is called.

All the operations executed after calling this function, will be discarded if rollback() is called.

When commit() or rollback() are called, the server autocommit mode will return back to it's state before calling startTransaction().

◆ commit()

void commit ( )

Commits all the operations executed after a call to startTransaction().

All the operations executed after calling startTransaction() will take place when this function is called.

The server autocommit mode will return back to it's state before calling startTransaction().

◆ rollback()

void rollback ( )

Discards all the operations executed after a call to startTransaction().

All the operations executed after calling startTransaction() will be discarded when this function is called.

The server autocommit mode will return back to it's state before calling startTransaction().

◆ isOpen()

Bool isOpen ( )

Returns true if session is known to be open.

Returns
A boolean value indicating if the session is still open.

Returns true if the session is still open and false otherwise.

Note
This function may return true if connection is lost.

◆ setQueryAttributes()

Undefined setQueryAttributes ( Dictionary  attributes)

Defines query attributes that apply to the next statement sent to the server for execution.

It is possible to define up to 32 pairs of attribute and values for the next executed SQL statement.

To access query attributes within SQL statements for which attributes have been defined, the query_attributes component must be installed, this component implements a mysql_query_attribute_string() loadable function that takes an attribute name argument and returns the attribute value as a string, or NULL if the attribute does not exist.

To install the query_attributes component execute the following statement:

session.runSql('INSTALL COMPONENT "file://component_query_attributes"');

◆ setClientData()

Undefined setClientData ( String  key,
Any  value 
)

Associates a value with the session for the given key.

Parameters
key(string) A string to identify the stored value.
valueJSON-like value to be stored.

Saves a value in the session data structure associated to the given key. The value can be retrieved later using getClientData().

◆ getClientData()

Any getClientData ( String  key)

Returns value associated with the session for the given key.

Parameters
key(string) A string to identify the stored value.
Returns
JSON-like value stored for the key.

Returns a value previously stored in the session data structure associated with setClientData().

◆ trackSystemVariable()

String trackSystemVariable ( String  variable)

Enables session tracking of the given system variable.

Parameters
variableName of the system variable to track.
Returns
The new value of the session_track_system_variables session variable.

Appends the given system variable name to the session_track_system_variables, session variable enabling session tracking of changes to it. Currently supported variables:

  • SQL_MODE