Todos os produtos
Search
Central de documentação

Lindorm:Variáveis de sessão

Última atualização: Jun 28, 2026

As variáveis de sessão permitem controlar o comportamento do mecanismo SQL por conexão. As alterações entram em vigor imediatamente na sessão atual e não afetam outras sessões.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Lindorm SQL versão 2.8.4.0 ou posterior. Para verificar sua versão, consulte Versões do SQL.

Mecanismos aplicáveis

LindormTable e LindormTSDB (todas as versões).

Sintaxe

Definir uma variável de sessão:

SET [SESSION] variable_identifier = literal

Consultar uma variável de sessão:

SELECT @@variable_identifier

Os nomes das variáveis seguem as mesmas regras lexicais dos identificadores comuns. Para mais detalhes, consulte Estrutura léxica do Lindorm SQL.

Referência de variáveis de sessão

Os parâmetros no nível de sessão definidos com SET têm precedência sobre os parâmetros globais definidos com ALTER SYSTEM. Em caso de conflito, o valor no nível de sessão sempre prevalece.

Importante

A modificação de parâmetros no nível de sessão afeta o comportamento do mecanismo SQL durante toda a sessão. Compreenda cada parâmetro antes de alterá-lo.

TIME_ZONE

Atributo

Valor

Data type

String

Default

+08:00 (UTC+8)

Applicable engine

LindormTable

Protocol constraint

Apenas protocolo MySQL

Define o fuso horário da sessão atual. Disponível apenas para conexões via protocolo MySQL.

SQL_MODE

Atributo

Valor

Data type

String

Applicable engine

LindormTable, LindormTSDB

Introduced in

Lindorm SQL 2.8.4.8

Controla o comportamento de análise do mecanismo SQL. Para definir vários modos, separe-os por vírgula (,).

Único valor compatível:

  • NO_BACKSLASH_ESCAPES — As barras invertidas (\) são tratadas como caracteres literais, e não como caracteres de escape, durante a análise de strings literais.

Exemplos

Alterar o fuso horário da sessão

  1. Consulte o fuso horário atual da sessão:

    SELECT @@TIME_ZONE;

    Saída esperada:

    +-------------+
    | @@TIME_ZONE |
    +-------------+
    | +08:00      |
    +-------------+
  2. Altere o fuso horário para UTC:

    SET TIME_ZONE='UTC';
  3. Verifique a alteração:

    SELECT @@TIME_ZONE;

    Saída esperada:

    +-------------+
    | @@TIME_ZONE |
    +-------------+
    | UTC         |
    +-------------+
Nota

Para obter detalhes sobre como o fuso horário da sessão afeta os dados de timestamp, consulte Especificar um fuso horário para uma conexão LindormTable.

Desativar o escape de barra invertida

  1. Consulte uma string literal para observar o comportamento padrão de escape:

    SELECT '{\"key\":\"va\\lu\'e\r\n\"}';

    Saída esperada:

    +---------------------+
    | EXPR$0              |
    +---------------------+
    | {"key":"va\lu'e
    "} |
    +---------------------+
  2. Defina NO_BACKSLASH_ESCAPES para desativar o escape de barra invertida:

    SET SQL_MODE='NO_BACKSLASH_ESCAPES';
  3. Execute a mesma consulta para verificar a alteração:

    SELECT '{\"key\":\"va\\lu\'e\r\n\"}';

    Saída esperada:

    +-----------------------------+
    | EXPR$0                      |
    +-----------------------------+
    | {\"key\":\"va\\lu\'e\r\n\"} |
    +-----------------------------+

    Com NO_BACKSLASH_ESCAPES ativo, as barras invertidas deixam de ser tratadas como caracteres de escape e a string é retornada exatamente como foi escrita.