Cascais51
-
Total de itens
18 -
Registro em
-
Última visita
Posts postados por Cascais51
-
-
Não sei se você não capitou bem a ideia ou se eu não capitei a sua.
A ideia central é transformar um sistema para um um cliente, em um sistema "multi-cliente", ou seja, usar a mesma base e o mesmo sistema para vários, sendo o fator diferencial apenas uma coluna em cada tabela .
exemplo:Licença 1 - "Supermercado Extra" - ID: 1
Tudo que for movimentado em todas as tabelas do banco de dados terá uma coluna licenca com valor 1, ligando a Supermercado Extra.
nesse mesmo banco eu terei outras licenças como Farmácia Legal (ID: 2), Salão de Beleza (ID: 3), Loja Linha bela (ID: 4), Etc..
-
Respondi no local errado
-
Olá, pessoal!
Tenho um banco de dados com 111 tabelas de um sistema de gestão feito para um cliente. Acontece que agora quero transformar esse sistemas em SaaS, Quero manter ele com a mesma base, apenas incluindo uma tabela "licencas" onde terei o cadastro de meus clientes na modalidade SaaS com as configurações necessárias e possíveis ligações com tabelas de mensalidades e etc.
Pois bem, para não fazer grandes alterações nesse sistema, adicionei uma coluna de nome "licenca" em cada uma das 111 tabelas e fiz uma chave estrangeira em cada uma ligando a chave primária da tabela "licencas" (id_licenca).
A ideia é com mais tempo organizar para apenas as tabelas chaves terem essa ligação com a tabela licencas, mas por enquanto tenho pouco tempo, mas gostaria de saber de vocês se ter essa coluna "licenca" em todos as tabelas ligando a tabela licenças vai ser muito custoso em processamento para meu banco de dados, ou é indiferente?
Acham que eu deveria deixar o campo sem chave estrangeira?Enviei a imagem com o diagrama de apenas 5 tabelas para ilustrar. são muitas tabelas para enviar todas.
111 Tabelas com Chave Estrangeira
em MySQL
Postado
A ideia de fazer um SaaS com banco de dados único é justamente por causa da praticidade no desenvolvimento e manutenção do sistema. Se eu replicar o banco de dados, basicamente vou replicar o sistema. Então não é prático fazer um banco de dados pra cada cliente.
Se eu tiver 100 clientes e fizer uma mudança na estrutura do banco de dados, terei que sair atualizando todos. E a ideia é um sistema em constante evolução.
Quanto as tabelas, sim, todas gerenciadas pelo cliente através do sistema, com exceção da tabela "licenças" que é gerenciada somente por nós.