SQLite PRAGMA
comando SQLite APRAGMA é um comando especial pode ser usado em uma variedade de variáveis ambientais SQLite de controle ambiental e de estado bandeiras.PRAGMA um valor pode ser lido, que pode ser ajustado de acordo com a demanda.
gramática
Para consultar o valor atual da PRAGMA, só você precisa fornecer o nome do pragma:
PRAGMA pragma_name;
Para definir um novo valor para o PRAGMA, a seguinte sintaxe:
PRAGMA pragma_name = value;
modo de configuração, ela pode ser um nome ou um número inteiro equivalente, mas o valor de retorno será sempre um número inteiro.
auto_vacuum Pragma
auto_vacuum Pragma Obtém ou define o modo de auto-vácuo.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Auto_vacuum; PRAGMA [banco de dados.] Auto_vacuum = modo;
Em que, o modo pode ser qualquer um dos seguintes:
Pragma 值 | 描述 |
---|---|
0 或 NONE | 禁用 Auto-vacuum。这是默认模式,意味着数据库文件尺寸大小不会缩小,除非手动使用 VACUUM 命令。 |
1 或 FULL | 启用 Auto-vacuum,是全自动的。在该模式下,允许数据库文件随着数据从数据库移除而缩小。 |
2 或 INCREMENTAL | 启用 Auto-vacuum,但是必须手动激活。在该模式下,引用数据被维持,免费页面只放在免费列表中。这些页面可在任何时候使用incremental_vacuum pragma进行覆盖。 |
cache_size Pragma
cache_size Pragma pode obter ou definir o tamanho máximo das páginas temporárias no cache de memória.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Cache_size; PRAGMA [. Banco de Dados] cache_size = páginas;
valor representa o número depáginas no cache de página.Construído tamanho do cache de página padrão é de 2.000 páginas, o tamanho mínimo é 10.
case_sensitive_like Pragma
case_sensitive_like sensível Pragmaconstruído como sensibilidade de controlo de expressão. Por padrão, o Pragma é falso, o que significa que a-LIKE construída operador para ignorar o caso das cartas. A sintaxe é a seguinte:
PRAGMA case_sensitive_like = [true | false];
Não há nenhuma maneira de verificar o estado actual da Pragma.
count_changes Pragma
count_changes Pragma Obtém ou define o valor de retorno de instruções de manipulação de dados, tais como INSERT, UPDATE e DELETE.A sintaxe é a seguinte:
count_changes PRAGMA; PRAGMA count_changes = [true | false];
Por padrão, o Pragma é falsa, a instrução não retorna nada. Se definido como verdadeiro, cada declaração mencionada irá retornar uma única tabela em separado é composto por um único valor inteiro, que representa a operação inteiro linha afetada.
database_list Pragma
database_list Pragma será usado para listar todas as conexões de banco de dados.A sintaxe é a seguinte:
PRAGMA database_list;
A Pragma irá retornar uma única linha da tabela com três colunas, quando é ligado ou anexar o banco de dados, o banco de dados dará o número de série, o seu nome e arquivos relacionados.
codificação Pragma
Como controlar acodificação de cadeia Pragmacodificados e armazenados no arquivo de banco de dados. A sintaxe é a seguinte:
codificação PRAGMA; PRAGMA encoding = formato;
valor formato pode ser UTF-8, UTF-16LE um ou UTF-16BE.
freelist_count Pragma
freelist_count Pragma retorna um inteiro que representa o atualmente marcado como páginas de banco de dados livres e disponíveis.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Freelist_count;
valor formato pode ser UTF-8, UTF-16LE um ou UTF-16BE.
index_info Pragma
index_info Pragma retorna informações sobre os índices de banco de dados.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Index_info (index_name);
O conjunto de resultados para cada coluna contém uma sequência em um determinado índice, índice de coluna dentro de uma tabela, a coluna nome da coluna exibe a linha.
index_list Pragma
index_list Lista Pragmatodos os índices associados à tabela. A sintaxe é a seguinte:
PRAGMA [banco de dados.] Index_list (table_name);
O conjunto de resultados para cada coluna de índice é dado nome de índice sequência, o índice indica se ou não a linha de exibição identificador exclusivo.
journal_mode Pragma
journal_mode Pragma Obtém ou define o log arquivos são armazenados e como lidar com o modo de log.A sintaxe é a seguinte ::
PRAGMA journal_mode; PRAGMA journal_mode = modo; PRAGMA database.journal_mode; PRAGMA database.journal_mode = modo;
Aqui log suporta cinco modos:
Pragma 值 | 描述 |
---|---|
DELETE | 默认模式。在该模式下,在事务结束时,日志文件将被删除。 |
TRUNCATE | 日志文件被阶段为零字节长度。 |
PERSIST | 日志文件被留在原地,但头部被重写,表明日志不再有效。 |
MEMORY | 日志记录保留在内存中,而不是磁盘上。 |
OFF | 不保留任何日志记录。 |
max_page_count Pragma
max_page_count Pragma banco de dados Obtém ou define o número máximo de páginas permitidas.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Max_page_count; PRAGMA [banco de dados.] Max_page_count = MAX_PAGE;
O valor padrão é 1073741823, que é uma página gigabit, ou seja, se o tamanho da página padrão de 1 KB, em seguida, o banco de dados cresceu em um megabyte.
page_count Pragma
page_count Pragma retorna o número de páginas no banco de dados atual.A sintaxe é a seguinte:
PRAGMA [banco de dados.] PAGE_COUNT;
o tamanho do arquivo de banco de dados deve ser page_count * page_size.
page_size Pragma
page_size Pragma Obtém ou define o tamanho da página do banco de dados.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Page_size; PRAGMA [.] Do banco de dados page_size = bytes;
Por padrão, o tamanho permitido 512,1024,2048,4096,8192,16384,32768 bytes. A única forma de alterar o tamanho da página do banco de dados existente é para definir o tamanho da página, logo em seguida aspirar o banco de dados.
parser_trace Pragma
parser_trace Pragma como ele resolve os comandos SQL para controlar estado de depuração de impressão, a sintaxe é a seguinte:
PRAGMA parser_trace = [true | false];
Por padrão, ela é definida como falsa, mas é definido como verdadeiro para permitir, em seguida, o analisador SQL pode analisar comandos SQL como ele imprime seu status.
RECURSIVE_TRIGGERS Pragma
RECURSIVE_TRIGGERS Pragma Obtém ou define a função de gatilho recursivo.Se gatilho recursivo não está habilitado, uma ação do disparador não vai provocar um outro gatilho. A sintaxe é a seguinte:
RECURSIVE_TRIGGERS PRAGMA; PRAGMA RECURSIVE_TRIGGERS = [true | false];
schema_version Pragma
schema_version Pragma Obtém ou valor de versão do esquema é armazenado no cabeçalho do banco de dados.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Schema_version; PRAGMA schema_version = número [Banco de Dados.];
Este é um valor inteiro assinado de 32 bits, usado para rastrear alterações à arquitectura. Sempre que um comando de alteração de esquema (como CREATE pt. ou DROP pt.), este valor é incrementado.
secure_delete Pragma
secure_delete Pragma é usado para controlar como o conteúdo é excluído do banco de dados.A sintaxe é a seguinte:
PRAGMA secure_delete; PRAGMA secure_delete = [true | false]; PRAGMA database.secure_delete; PRAGMA database.secure_delete = [true | false];
segurança padrão eliminar bandeira está normalmente fechada, mas pode ser construída por opção SQLITE_SECURE_DELETE para mudar.
sql_trace Pragma
sql_trace Pragma para o despejo de SQL para acompanhar os resultados na tela.A sintaxe é a seguinte:
PRAGMA sql_trace; PRAGMA sql_trace = [true | false];
SQLite deve ser compilada pela instrução SQLITE_DEBUG para referenciar o Pragma.
síncronas Pragma
síncronas Pragma Obtém ou define o modo síncrono de disco atual, o controle de modo SQLite positiva como os dados são escritos para armazenamento físico.A sintaxe é a seguinte:
PRAGMA [banco de dados.] Synchronous; PRAGMA [banco de dados.] Synchronous = modo;
SQLite suporta os seguintes modos de sincronização:
Pragma 值 | 描述 |
---|---|
0 或 OFF | 不进行同步。 |
1 或 NORMAL | 在关键的磁盘操作的每个序列后同步。 |
2 或 FULL | 在每个关键的磁盘操作后同步。 |
temp_store Pragma
temp_store Pragma Obtém ou define o modo de armazenamento usado pelo arquivo de banco de dados temporário.A sintaxe é a seguinte:
PRAGMA temp_store; PRAGMA temp_store = modo;
SQLite suporta os seguintes modos de armazenamento:
Pragma 值 | 描述 |
---|---|
0 或 DEFAULT | 默认使用编译时的模式。通常是 FILE。 |
1 或 FILE | 使用基于文件的存储。 |
2 或 MEMORY | 使用基于内存的存储。 |
temp_store_directory Pragma
temp_store_directory Pragma Obtém ou define o local para os arquivos de bancos de dados temporários.A sintaxe é a seguinte:
PRAGMA temp_store_directory; PRAGMA temp_store_directory = 'directory_path';
user_version Pragma
versãouser_version Pragma Obtém ou define o valor armazenado no costume de usuário de cabeçalho do banco de dados.A sintaxe é a seguinte:
PRAGMA [banco de dados.] User_version; PRAGMA user_version = número [Banco de Dados.];
Este é um valor inteiro assinado de 32 bits que pode ser definido pelo desenvolvedor para fins versão de rastreamento.
writable_schema Pragma
Sãowritable_schema Pragma Obtém ou define a capacidade de modificar as tabelas do sistema.A sintaxe é a seguinte:
PRAGMA writable_schema; PRAGMA writable_schema = [true | false];
Se o Pragma, o quadro começou a SQLite_, você pode criar e modificar, incluindo mesa sqlite_master. Quando usamos a prestar atenção Pragma, porque pode resultar em danos a toda a base de dados.