MSSQL

Data source: External SQL ServerStandard Edition+

Introdução

O MSSQL (SQL Server) pode ser conectado ao NocoBase como banco de dados externo. Após a conexão, o NocoBase lê as tabelas, os campos e as visualizações do SQL Server e os utiliza como tabelas de dados na fonte de dados externa.

Diferentemente do banco de dados principal, a estrutura real das tabelas do MSSQL externo continua sendo mantida pelo sistema de negócios original, pelo cliente de banco de dados ou por scripts de migração. O NocoBase é responsável por ler a estrutura, salvar os metadados dos campos e configurar blocos de página, permissões, fluxos de trabalho e APIs.

Item de configuraçãoDescrição
Versões compatíveisSQL Server 2014-2019.
Versões comerciaisCompatível com as edições Standard, Professional e Enterprise.
Plugin correspondente@nocobase/plugin-data-source-external-mssql.
Recursos de conexãoCompatível com a configuração de «Encrypt connection» e «Trust server certificate».

Cenários adequados para usar o MSSQL externo:

  • Conectar bancos de dados SQL Server de sistemas de negócios existentes, como ERP, MES, WMS e CRM
  • Criar interfaces de gerenciamento com o NocoBase sem migrar dados históricos
  • Configurar permissões, processar fluxos, corrigir dados ou exibir relatórios de tabelas existentes
  • Continuar mantendo a estrutura do banco de dados por DBAs, scripts de migração ou pelo sistema original
Atenção

O MSSQL externo não é o banco de dados do sistema NocoBase. O NocoBase não gerencia o backup, a restauração, a migração nem as alterações na estrutura das tabelas.

Instalação do plugin

Este plugin é comercial. Para obter detalhes sobre a ativação, consulte o Guia de ativação de plugins comerciais

Adicionar fonte de dados

Em «Gerenciamento de fontes de dados», clique em «Add new», selecione MSSQL e preencha as informações de conexão.

20260709210022

Configurações de conexão comuns:

ConfiguraçãoDescrição
Data source nameNome de identificação da fonte de dados, usado para referência em blocos de página, permissões, fluxos de trabalho e APIs. Não pode ser alterado após a criação.
Data source display nameNome exibido da fonte de dados na interface. Recomenda-se usar um nome compreensível para os usuários de negócio, como «ERP SQL Server» ou «Banco financeiro».
Host / PortEndereço do host e porta do SQL Server. A porta padrão geralmente é 1433.
DatabaseNome do banco de dados SQL Server ao qual se conectar.
Username / PasswordConta e senha usadas para conectar ao SQL Server. O NocoBase só pode ler os objetos aos quais essa conta tem acesso; ele não concede permissões nem lê objetos privados de outras contas.
Table prefixPrefixo dos nomes das tabelas. Após configurado, o NocoBase lê apenas as tabelas e visualizações que correspondem a esse prefixo e gera no NocoBase nomes de tabelas sem o prefixo.
Encrypt connectionIndica se a conexão criptografada deve ser habilitada. Habilite quando o banco de dados exigir criptografia ou quando o canal de rede precisar ser criptografado.
Trust server certificateIndica se o certificado do servidor deve ser confiável. Pode ser necessário habilitar em ambientes de teste ou com certificados autoassinados; em produção, recomenda-se usar um certificado confiável.
Collections / Add all collectionsControla o escopo da conexão. Quando «Add all collections» está habilitado, o NocoBase conecta todas as tabelas e visualizações dentro do escopo atual; quando desabilitado, conecta apenas os objetos selecionados em «Collections».
Enabled the data sourceIndica se esta fonte de dados está habilitada. Quando desabilitada, a configuração da fonte de dados é mantida, mas os blocos de página, as permissões, os fluxos de trabalho e as APIs não podem mais ler seus dados.
Dica

Se houver muitos objetos no SQL Server, restrinja primeiro o escopo usando Database, Table prefix e «Collections». Conecte apenas as tabelas e visualizações usadas pelo aplicativo atual; assim, a configuração posterior de permissões, a criação de páginas e a manutenção da sincronização serão mais simples.

Selecionar tabelas de dados

Após preencher as informações de conexão, clique em «Load Collections» para ler as tabelas e visualizações disponíveis no SQL Server. Os resultados da leitura serão afetados pela conta de conexão, por Database, Table prefix e pela configuração de «Collections».

Por padrão, «Add all collections» estará habilitado, indicando que todas as tabelas e visualizações dentro do escopo atual serão conectadas. Se quiser conectar apenas alguns objetos, desabilite «Add all collections» e selecione na lista as tabelas ou visualizações necessárias.

add_new_database_configure_load_collection

Atenção

Uma única fonte de dados externa pode conectar no máximo 500 tabelas ou visualizações por vez. Se houver muitos objetos no SQL Server, recomenda-se restringir primeiro o escopo usando Database, Table prefix ou «Collections».

Sincronizar e configurar campos

A estrutura das tabelas do MSSQL externo é mantida no banco de dados. O NocoBase não cria campos, altera tipos de campos nem exclui campos reais no SQL Server externo.

Quando a estrutura das tabelas no SQL Server for alterada, execute «Sync from database» na fonte de dados para ler novamente os metadados das tabelas e dos campos. A sincronização atualiza as informações de mapeamento das tabelas, dos campos, das chaves primárias, das chaves exclusivas e dos tipos de campos salvas no NocoBase, mas não exclui as tabelas nem os dados reais do SQL Server.

Após a sincronização dos campos, você pode configurar no NocoBase o título do campo, o tipo de campo (Field type) e a interface do campo (Field interface). Se precisar criar campos de relação do NocoBase, os metadados da relação também serão salvos no NocoBase, sem adicionar automaticamente campos de chave estrangeira reais às tabelas do SQL Server.

Mapeamento de tipos de campos

O NocoBase mapeia automaticamente os tipos de campos do SQL Server para um Field type e uma Field interface adequados. Você pode ajustar a forma de exibição na interface de configuração do campo.

Mapeamentos comuns:

Tipo de campo do SQL ServerNocoBase Field typeField interface disponível
BITbitCheckbox, Switch.
TINYINTSMALLINTintegerbooleansortInteger, Sort, Checkbox, Switch, Select, Radio group.
INTintegerunixTimestampsortInteger, Sort, Unix timestamp, Select, Radio group.
BIGINTbigIntunixTimestampsortInteger, Sort, Unix timestamp, Created at, Updated at.
DECIMALMONEYSMALLMONEYdecimalNumber, Percent, Currency.
NUMERICFLOATREALfloatNumber, Percent.
CHARVARCHARNCHARNVARCHARstringuuidnanoidInput, Email, Phone, Password, Color, Icon, Select, Radio group, UUID, Nano ID.
TEXTNTEXTtextTextarea, Markdown, Vditor, Rich text, URL.
DATEdateOnlyDate.
TIMEtimeTime.
DATETIMEDATETIME2datetimeNoTzDate, Time, Created at, Updated at.
DATETIMEOFFSETdatetimeTzDate, Time, Created at, Updated at.
UNIQUEIDENTIFIERuuidstringUUID, Input.
JSONjsonarrayJSON.
Atenção

Os tipos de campos do SQL Server que não são compatíveis serão exibidos separadamente na configuração dos campos. Esses campos só poderão ser usados no NocoBase como campos comuns após o desenvolvimento de um adaptador.

Chave primária e identificador exclusivo do registro

Para tabelas de dados usadas na exibição e edição de blocos de página, recomenda-se ter um campo de chave primária ou exclusivo. O NocoBase dará prioridade à chave primária como identificador exclusivo do registro.

Se a conexão for com uma visualização, uma tabela sem chave primária ou uma tabela com chave primária composta, será necessário definir manualmente «Record unique key» na configuração da tabela de dados. Sem um identificador exclusivo disponível, os blocos de página poderão não conseguir visualizar, editar ou excluir registros corretamente.

20260709210154 20260709210214