Menu Docs
Página inicial do Docs
/
Relational Migrator
/ /

Converter query

Nesta página

  • Sobre esta tarefa
  • Passos
  • Exemplos
  • Próximos passos
  • Saiba mais

Você pode converter queries SQL de aplicativos incorporados e relatórios para sintaxe MongoDB usando o conversor de query. Copie e cole suas consultas no conversor de consulta para atualizá-las para trabalhar com MongoDB e seu esquema migrado.

  • O conversor de query usa tecnologia de AI que pode não ser capaz de converter query, triggers ou procedimentos armazenados longos ou complexos. Algumas queries podem não ser convertidas corretamente, enquanto outras podem não ser convertidas.

  • O conversor de query utiliza o esquema relacional, o esquema MongoDB e as regras de mapeamento em seu projeto atual para determinar como as queries devem ser convertidas. As conversões podem falhar ou estar incorretas se as queries fizerem referência a tabelas que não estão em seu esquema relacional ou se não estiverem mapeadas para as coleções do MongoDB.

  • Query, Atlas Triggers, visualizações e procedimentos armazenados convertidos são salvos em seu projeto e persistem por meio da importação e exportação do projeto.

  • As queries SQL estão limitadas a 40,000 caracteres de texto.

  • Sempre revise e teste o código gerado pelo conversor de query antes de implementá-lo em um ambiente de produção.

  • Você pode visualizar o histórico de conversões anteriores no painel Query Converter à esquerda. Cada conversão tem um ícone indicando o resultado da conversão. Se um objeto não tiver um ícone próximo a ele, ainda não foi tentada uma conversão:

    Icon
    Descrição
    Controle giratório
    A conversão agora está sendo executada.
    Marca de verificação verde
    A conversão foi bem-sucedida.
    Ponto de interrogação vermelho
    A conversão falhou na última tentativa.
1

Na guia Code Generation , clique no painel Query Converter .

2
  • Se for a primeira vez que você utiliza o conversor de query em seu projeto, clique em Paste SQL Query.

  • Se você já converteu código SQL no seu projeto, clique no botão + ADD no painel esquerdo, ao lado de Queries .

3
  1. Copie sua query SQL para a área de transferência.

    Observação

    As queries copiadas no campo de texto SQL Query devem ser uma query SELECT. Por exemplo: SELECT ID,ITEMNAME,PRICE FROM inventory.

  2. Sob o cabeçalho SQL Query , cole sua query SQL na caixa de texto.

4

Use Target Language para selecionar um idioma para o conversor de query renderizar.

Observação

Se você utilizar Java, também poderá selecionar Return a domain object where possible. Quando selecionado, o conversor de query inclui entidades Java fortemente digitadas com base em classes POJO se a query operar apenas em uma única collection MongoDB .

5
  1. Clique no botão Convert . Aguarde a conversão do seu código SQL. O código de sintaxe do MongoDB convertido é exibido no painel Converted MongoDB Query .

    Se o conversor de consultas tiver erros, você poderá ver os detalhes no painel Converted MongoDB Query.

    Dica

    Para renomear ou excluir queries do seu projeto, clique em botão no painel SQL Query e selecione o ou ícone.

  2. Clique em ícone para copiar a sintaxe MongoDB para sua área de transferência.

  3. Teste e valide a sintaxe gerada do MongoDB.

    Dica

    Você pode usar a caixa de texto Filter para filtrar query, procedimentos armazenados, Atlas Triggers e visualizações com base no nome do objeto e na sintaxe SQL.

6

Forneça feedback sobre as consultas convertidas para ajudar a melhorar as conversões de consultas futuras. Para fornecer comentários, clique no ícone ou no canto inferior direito do painel de consulta convertido. Em seguida, você pode fornecer detalhes do feedback e clicar em Submit.

A tabela a seguir mostra exemplos de queries SQL convertidas para sintaxe MongoDB usando o conversor de query. A sintaxe e a estrutura das query convertidas variam dependendo das regras de mapeamento utilizadas no projeto:

SQL Syntax
sintaxe do MongoDB
SELECT *
FROM CUSTOMERS
async function query(db) {
return await db.collection('Customers').find({
}).toArray();
}
SELECT CONTACTNAME, CITY
FROM CUSTOMERS
WHERE CONTACTNAME LIKE '%SMITH%'
async function query(db) {
return await db.collection('Customers').find({
ContactName: { $regex: '.*SMITH.*' }
}, {
projection: { ContactName: 1, City: 1, _id: 0 }
}).toArray();
}
SELECT CUSTOMERID, CITY
FROM CUSTOMERS AS C
JOIN ORDERS AS O
ON C.CUSTOMERID = O.CUSTOMERID
WHERE CONTACTNAME IN('ABI','JIM')
const query = async (db) => {
return await db.collection('Customers').aggregate([
{
$lookup: {
from: 'Orders',
localField: 'CustomerId',
foreignField: 'CustomerId',
as: 'customer_orders'
}
},
{
$match: {
CONTACTNAME: { $in: ['ABI', 'JIM'] }
}
},
{
$project: {
CustomerId: 1,
City: 1
}
}
]).toArray();
};
  • Converter visualizações

  • Converter procedimentos armazenados

  • Gráfico de mapeamento SQL para MongoDB

  • Gráfico de mapeamento SQL para agregação

Voltar

Habilitar conversor de query