Execute a instrução CREATE TABLE para criar uma tabela de mapeamento de uma tabela ou índice de pesquisa existente. Ao criar a tabela de mapeamento, especifique os nomes e tipos dos campos, as informações da chave primária e o mecanismo de execução das consultas de dados conforme suas necessidades de negócio.
Para mais informações, consulte Criar uma tabela de mapeamento para uma tabela e Criar tabelas de mapeamento para índices de pesquisa.
Pré-requisitos
Antes de começar, verifique se:
Um cliente foi inicializado. Para mais informações, consulte Inicializar um cliente do Tablestore.
-
Uma tabela de dados foi criada.
Para criar uma tabela de mapeamento de um índice de pesquisa, primeiro crie o índice de pesquisa.
Parâmetros
|
Parâmetro |
Descrição |
|
query |
Instrução SQL usada para criar a tabela de mapeamento. Os tipos das colunas na instrução devem corresponder aos tipos de dados das colunas equivalentes na tabela de dados. |
Exemplos
Este tópico descreve como criar uma tabela de mapeamento para uma tabela de dados. Para criar uma tabela de mapeamento de um índice de pesquisa, substitua a instrução SQL no código de exemplo pela instrução SQL correspondente à tabela de mapeamento do índice de pesquisa.
Diferentemente do CREATE TABLE em bancos de dados relacionais, esta instrução não cria uma nova tabela. Ela estabelece um mapeamento SQL sobre uma tabela de dados existente no Tablestore, permitindo consultas baseadas em SQL em dados NoSQL.
O exemplo a seguir cria uma tabela de mapeamento para test_table usando a instrução create table test_table (pk varchar(1024), long_value bigint, double_value double, string_value mediumtext, bool_value bool, primary key(pk)).
const params = {
// The SQL statement to create a mapping table.
// Column types must match the data types of the corresponding columns in the data table.
// For SQL syntax details, see the SQL reference documentation.
query: "create table test_table (pk varchar(1024), long_value bigint, double_value double, string_value mediumtext, bool_value bool, primary key(pk))",
}
client.sqlQuery(params, function (err, data) {
if (err) {
console.log('sqlQuery error:', err.toString());
} else {
console.log('sqlQuery success:', data);
}
});
Perguntas frequentes
O que fazer se a mensagem de erro "Table 'instancename.tablename' doesn't exist ?" for retornada ao criar uma tabela de mapeamento?
-
Causa possível
A tabela para a qual você deseja criar uma tabela de mapeamento não existe.
-
Solução
A instrução CREATE TABLE em SQL só permite criar uma tabela de mapeamento para uma tabela ou índice de pesquisa existente. Verifique se a tabela ou o índice de pesquisa alvo existe antes de prosseguir.
O que fazer se a mensagem de erro "Table 'instancename.tablename' already exist?" for retornada ao criar uma tabela de mapeamento?
-
Causa possível
Já existe uma tabela de mapeamento associada à tabela.
O usuário criou manualmente uma tabela de mapeamento para essa tabela.
O Tablestore criou automaticamente uma tabela de mapeamento. Se você usar diretamente instruções SQL (como DESCRIBE, SELECT, etc.) para consultar dados em uma tabela de dados sem ter criado previamente uma tabela de mapeamento, o Tablestore gera essa tabela automaticamente. A tabela gerada automaticamente contém apenas as colunas de chave primária e as colunas predefinidas da tabela de dados. Nesse cenário, não é possível atualizar as colunas de atributo da tabela de mapeamento.
-
Solução
Execute a instrução
DESCRIBEpara consultar o esquema da tabela de mapeamento. Caso o esquema não atenda às suas necessidades de negócio, atualize as colunas de atributo da tabela de mapeamento. Se o Tablestore tiver criado a tabela de mapeamento automaticamente, a atualização das colunas de atributo não será permitida. Nessa situação, exclua a tabela de mapeamento atual e crie uma nova, desde que tenha certeza de que essa exclusão não afetará seus serviços.
Para erros comuns e soluções relacionados ao recurso de consulta SQL, consulte Solucionar erros comuns de consulta SQL.
Referências
Após criar uma tabela de mapeamento, atualize suas colunas de atributo, consulte informações sobre ela, liste nomes de tabelas de mapeamento, obtenha detalhes de índices e exclua a tabela. Para mais informações, consulte Atualizar colunas de atributo de uma tabela de mapeamento, Consultar informações sobre uma tabela, Listar os nomes das tabelas, Consultar informações de índice das tabelas ou Excluir uma tabela de mapeamento.
Use a instrução SELECT para consultar e analisar dados em uma tabela de mapeamento. Para mais informações, consulte Consultar dados.