Execute a instrução CREATE TABLE para criar uma tabela de mapeamento para uma tabela ou índice de pesquisa existente. Ao criar uma tabela de mapeamento, especifique os nomes e tipos dos campos, as informações de chave primária e o mecanismo de execução que você deseja usar para consultas de dados com base nos seus requisitos de negócios.
Para mais informações, consulte Criar uma tabela de mapeamento para uma tabela e Criar tabelas de mapeamento para índices de pesquisa.
Observações de uso
O recurso de consulta SQL é compatível com o Tablestore SDK for PHP V5.1.0 e versões posteriores. Ao usar o recurso de consulta SQL, certifique-se de que uma versão compatível do Tablestore SDK for PHP esteja instalada.
Para informações sobre o histórico de versões do Tablestore SDK for PHP, consulte Histórico de versões do Tablestore SDK for PHP.
Pré-requisitos
-
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 para um índice de pesquisa, primeiro crie o índice de pesquisa.
Parâmetros
|
Parâmetro |
Descrição |
|
query |
A instrução SQL. Configure este parâmetro com base no recurso necessário. |
Exemplos
Este tópico descreve como criar uma tabela de mapeamento para uma tabela. Para criar uma tabela de mapeamento para um índice de pesquisa, substitua a instrução SQL no código de exemplo pela instrução SQL usada para criar uma tabela de mapeamento para um índice de pesquisa.
O exemplo a seguir mostra como usar a instrução CREATE TABLE `tableName` (`PK0` BIGINT(20),`PK1` VARCHAR(1024),`geo` MEDIUMTEXT,`boolean` BOOL,`array` MEDIUMTEXT,`double` DOUBLE,`text` MEDIUMTEXT,`keyword` MEDIUMTEXT,`nested` MEDIUMTEXT,`long` BIGINT(20),PRIMARY KEY(`PK0`,`PK1`)); para criar uma tabela de mapeamento para a tabela tableName.
$request = array(
'query' => 'CREATE TABLE `tableName` (`PK0` BIGINT(20),`PK1` VARCHAR(1024),`geo` MEDIUMTEXT,`boolean` BOOL,`array` MEDIUMTEXT,`double` DOUBLE,`text` MEDIUMTEXT,`keyword` MEDIUMTEXT,`nested` MEDIUMTEXT,`long` BIGINT(20),PRIMARY KEY(`PK0`,`PK1`));',
);
$response = $otsClient->sqlQuery($request);
print json_encode($response, JSON_PRETTY_PRINT);
Perguntas frequentes
O que fazer se a mensagem de erro "Table 'instancename.tablename' doesn't exist ?" for retornada ao criar uma tabela de mapeamento?
-
Possível causa
A tabela para a qual você deseja criar uma tabela de mapeamento não existe.
-
Solução
A instrução CREATE TABLE em SQL cria uma tabela de mapeamento apenas para uma tabela ou índice de pesquisa existente. Certifique-se de que a tabela ou o índice de pesquisa para o qual você deseja criar uma tabela de mapeamento exista.
O que fazer se a mensagem de erro "Table 'instancename.tablename' already exist?" for retornada ao criar uma tabela de mapeamento?
-
Possível causa
Uma tabela de mapeamento já foi criada para a tabela.
-
O usuário criou manualmente uma tabela de mapeamento para a tabela.
-
O Tablestore criou automaticamente uma tabela de mapeamento para a tabela. Se você usar diretamente instruções SQL (como DESCRIBE, SELECT etc.) para consultar dados em uma tabela de dados sem criar uma tabela de mapeamento, o Tablestore cria automaticamente uma tabela de mapeamento para a tabela de dados. A tabela de mapeamento criada automaticamente contém apenas as colunas de chave primária e as colunas predefinidas da tabela de dados. Não é possível atualizar as colunas de atributos da tabela de mapeamento.
-
-
Solução
Execute a instrução
DESCRIBEpara consultar o esquema da tabela de mapeamento. Se o esquema não atender aos seus requisitos de negócios, atualize as colunas de atributos da tabela de mapeamento. Se o Tablestore criou automaticamente a tabela de mapeamento, não é possível atualizar as colunas de atributos. Nesse caso, exclua a tabela de mapeamento e crie uma nova, desde que tenha certeza de que os negócios não serão afetados após a exclusão. Para mais informações, consulte Atualizar as colunas de atributos da tabela de mapeamento.
Para erros comuns e soluções do recurso de consulta SQL, consulte Solucionar erros comuns de consulta SQL.
Referências
-
Após criar uma tabela de mapeamento, você pode atualizar as colunas de atributos, consultar as informações da tabela de mapeamento, listar os nomes das tabelas de mapeamento, consultar as informações de índice e excluir a tabela de mapeamento. Para mais informações, consulte Atualizar colunas de atributos de uma tabela de mapeamento, Consultar informações sobre uma tabela, Listar os nomes de tabelas de mapeamento, Consultar informações de índice sobre uma tabela e 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.