All previous examples used the getSchema()
or
getDefaultSchema()
methods of the Session
object, which return a Schema object. You use this Schema object
to access Collections and Tables. Most examples make use of the
X DevAPI ability to chain all object constructions, enabling you
to get to the Schema object in one line. For example:
schema = mysqlx.getSession(...).getSchema();
This object chain is equivalent to the following, with the difference that the intermediate step is omitted:
session = mysqlx.getSession();
schema = session.getSchema().
There is no requirement to always chain calls until you get a
Schema object, neither is it always what you want. If you want to
work with the Session object, for example, to call the Session
object method getSchemas()
, there is no need to
navigate down to the Schema. For example:
session = mysqlx.getSession(); session.getSchemas().
In this example the mysqlx.getSession()
function is used to open a Session. Then the
Session.getSchemas()
function is used to get a
list of all available schemas and print them to the console.
# Connecting to MySQL and working with a Session
from mysqlsh import mysqlx
# Connect to a dedicated MySQL server using a connection URI
mySession = mysqlx.get_session('user:password@localhost')
# Get a list of all available schemas
schemaList = mySession.get_schemas()
print('Available schemas in this session:\n')
# Loop over all available schemas and print their name
for schema in schemaList:
print('%s\n' % schema.name)
mySession.close()