文档主页
X DevAPI 用户指南
下载本手册
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


X DevAPI 用户指南  /  连接和会话概念  /  设置当前模式

2.5 设置当前模式

可以在打开连接会话时,使用 类似 URI 的连接字符串或键值对 中的 schema 属性来指定会话的默认模式。Session 类的 getDefaultSchema() 方法返回 Session 的默认模式。

如果在连接时未选择默认模式,则可以使用 Session 类的 setCurrentSchema() 函数来设置当前模式。

MySQL Shell JavaScript 代码

var mysqlx = require('mysqlx');

// Direct connect with no client-side default schema specified
var mySession = mysqlx.getSession('user:password@localhost');
mySession.setCurrentSchema("test");

MySQL Shell Python 代码

from mysqlsh import mysqlx

# Direct connect with no client-side default schema specified
mySession = mysqlx.get_session('user:password@localhost')
mySession.set_current_schema("test")

Node.js JavaScript 代码

/*
  Connector/Node.js does not support the setCurrentSchema() method.
  One can specify the default schema in the URI-like connection string.
*/

C# 代码

// Direct connect with no client-side default schema specified
var mySession = MySQLX.GetSession("server=localhost;port=33060;user=user;password=password;");
mySession.SetCurrentSchema("test");

Python 代码

# Connector/Python
from mysqlsh import mysqlx

# Direct connect with no client-side default schema specified
mySession = mysqlx.get_session('user:password@localhost')
mySession.set_current_schema("test")

Java 代码

/*
  Connector/J does not support the setCurrentSchema() method.
  One can specify the default schema in the URI-like connection string.
*/

C++ 代码

/*
  Connector/C++ does not support the setCurrentSchema() method.
  One can specify the default schema in the URI-like connection string.
*/

请注意,setCurrentSchema() 不会更改会话的默认模式,该模式在整个会话过程中保持不变,如果未在连接时设置,则保持为 nullsetCurrentSchema() 设置的模式可以通过 getCurrentSchema() 方法返回。

设置当前模式的另一种方法是使用 Session 类的 sql() 方法和 USE db_name 语句。