Como criar um depósito com agrupamento que não diferencia maiúsculas de minúsculas (CI)
Aplica-se a:✅ Armazém no Microsoft Fabric
Por padrão, todos os armazéns de malha são configurados com agrupamento que diferencia maiúsculas de minúsculas (CS) Latin1_General_100_BIN2_UTF8. Você também pode criar armazéns com agrupamento sem diferenciação de maiúsculas e minúsculas (CI) - Latin1_General_100_CI_AS_KS_WS_SC_UTF8.
Atualmente, o único método disponível para criar um data warehouse que não diferencia maiúsculas de minúsculas é por meio da API REST. Este artigo fornece um guia passo a passo sobre como criar um depósito com agrupamento que não diferencia maiúsculas de minúsculas por meio da API REST. Ele também explica como usar o Visual Studio Code com a extensão de cliente REST para facilitar o processo.
Importante
Depois que um depósito é criado, a configuração de agrupamento não pode ser alterada. Considere cuidadosamente as suas necessidades antes de iniciar o processo de criação.
Pré-requisitos
- Um espaço de trabalho de malha com capacidade ativa ou de avaliação.
- Baixe e instale o Visual Studio Code para baixar e instalar o aplicativo.
- Instale o cliente REST - Visual Studio Marketplace.
Ponto final de API
Para criar um armazém com a API REST, use o ponto de extremidade da API: POST https://api.fabric.microsoft.com/v1/workspaces/<workspace-id>/items
Aqui está um exemplo de corpo de solicitação JSON para criar um depósito:
{
"type": "Warehouse",
"displayName": "CaseInsensitiveAPIDemo",
"description": "New warehouse with case-insensitive collation",
"creationPayload": {
"defaultCollation": "Latin1_General_100_CI_AS_KS_WS_SC_UTF8"
}
}
Usar o Visual Studio Code para invocar a API REST
Você pode criar facilmente um novo depósito com agrupamento que não diferencia maiúsculas de minúsculas usando o Visual Studio Code (VS Code) e a extensão REST Client . Siga estes passos:
Crie um novo arquivo de texto no VS Code com a
.http
extensão.Insira os detalhes da solicitação no corpo do arquivo. Observe que deve haver um espaço em branco entre o cabeçalho e o corpo, colocado após a linha "Autorização".
POST https://api.fabric.microsoft.com/v1/workspaces/<workspaceID>/items HTTP/1.1 Content-Type: application/json Authorization: Bearer <bearer token> { "type": "Warehouse", "displayName": "<Warehouse name here>", "description": "<Warehouse description here>", "creationPayload": { "defaultCollation": "Latin1_General_100_CI_AS_KS_WS_SC_UTF8" } }
Substitua os valores de espaço reservado:
<workspaceID>
: Encontre o GUID do espaço de trabalho no URL após a/groups/
seção ou executandoSELECT @@SERVERNAME
em um depósito existente.<bearer token>
: Obtenha isso seguindo estas etapas:- Abra o espaço de trabalho do Microsoft Fabric em um navegador (Microsoft Edge ou Google Chrome).
- Pressione F12 para abrir as Ferramentas de Desenvolvimento.
- Selecione a guia Console . Se necessário, selecione Expandir Visualização Rápida para revelar o prompt
>
do console . - Digite o comando
copy(powerBIAccessToken)
e pressione Enter. Enquanto o console responde indefinido, o token do portador será copiado para a área de transferência. - Cole no lugar de
<bearer token>
.
Observação
Em alguns cenários,
copy(powerBIAccessToken)
pode falhar com o errouncaught TypeError: copy is not a function
se houver algum id de elemento chamado "copy" na página. Nesses casos, remova manualmente o id do elemento usando o seguinte comando antes de usar a função "copiar":document.querySelector('#copy').remove()
.<Warehouse name here>
: Insira o nome do armazém desejado.<Warehouse description here>
: Insira a descrição do armazém desejado.
Selecione o link Enviar solicitação exibido sobre o comando POST no editor do VS Code.
Você deve receber uma resposta com o código de status 202 Aceito, juntamente com detalhes adicionais sobre sua solicitação POST.
Vá para o armazém recém-criado no portal do Fabric.
Execute a seguinte instrução T-SQL no editor de consultas para confirmar se o agrupamento do seu armazém está alinhado com o que você especificou no JSON acima:
SELECT name, collation_name FROM sys.databases;