[OT] Multi-SGBD, vamos debater?
Olá amigos, estou iniciando um projeto no início será um sistema comercial para pequenas empresas, porém tenho a intenção de fornecer o mesmo para empresas de média e grande portes... e me veio a pergunta: Qual SGBD usar?
Pois bem, de inicio estou usando Firebird, o qual me adaptei de um forma explendida... porém todos sabemos que em determinadas empresas temos necessidade de outros SGBDs como por exemplo SQL Server, Oracle e etc.. principalmente agora que estes têm suas versões gratuitas...
O que quero aqui, [b:0f86c5136c]não é discutir a forma de conexão[/b:0f86c5136c] para tantos banco de dados, e sim a forma de manutenção, todos sabemos que existem Trigger, Store Procedures e etc.. e que em cada banco de dados é diferente... pois bem, claro que se o usuário quiser ele mesmo poderá desenvolver uma Trigger ou SP, mas e eu? as minhas SP e Trigger, não posso criar uma trigger pra cada banco de dados, correto? FKs e tals.. como é a melhor forma de fazer isso no próprio sistema?
Acho que o sistema Protheus da Microsiga usa isso...
Pois bem, está lançado, vamos discutir isso?
[]s
Pois bem, de inicio estou usando Firebird, o qual me adaptei de um forma explendida... porém todos sabemos que em determinadas empresas temos necessidade de outros SGBDs como por exemplo SQL Server, Oracle e etc.. principalmente agora que estes têm suas versões gratuitas...
O que quero aqui, [b:0f86c5136c]não é discutir a forma de conexão[/b:0f86c5136c] para tantos banco de dados, e sim a forma de manutenção, todos sabemos que existem Trigger, Store Procedures e etc.. e que em cada banco de dados é diferente... pois bem, claro que se o usuário quiser ele mesmo poderá desenvolver uma Trigger ou SP, mas e eu? as minhas SP e Trigger, não posso criar uma trigger pra cada banco de dados, correto? FKs e tals.. como é a melhor forma de fazer isso no próprio sistema?
Acho que o sistema Protheus da Microsiga usa isso...
Pois bem, está lançado, vamos discutir isso?
[]s
Titanius
Curtidas 0
Respostas
Bon Jovi
23/07/2006
Não é complicado, isso até já foi discutido aqui. Primeiro passo é sempre usar as instruções SQL padrão. SP nem pensar mesmo (e jamais usaria linguagem procedural mesmo podendo). E o que não tiver jeito e for necessário usar instrução SQL diferente, via código fazer if, classe que retorne métodos com particularidades de cada banco, uso de tags dentro do SQL, etc. SGDB pra mim foi feito somente para armazenar, ler e manter integridade de dados, só isso! Regras de negócio tem que ficar por conta de uma boa linguagem orientada a objetos procurando permitir soluções mais abrangentes e sem redundâncias.
GOSTEI 0
Aroldo Zanela
23/07/2006
Colega,
Acho que o uso de um framework de persistência poderia simplificar o processo. [url=http://www.oodesign.com.br/forum/index.php?showforum=17]Material [/url]de apoio do OODesign.
Acho que o uso de um framework de persistência poderia simplificar o processo. [url=http://www.oodesign.com.br/forum/index.php?showforum=17]Material [/url]de apoio do OODesign.
GOSTEI 0
Titanius
23/07/2006
[quote:5eb5e26a27=´Aroldo Zanela´]Colega,
Acho que o uso de um framework de persistência poderia simplificar o processo. [url=http://www.oodesign.com.br/forum/index.php?showforum=17]Material [/url]de apoio do OODesign.[/quote:5eb5e26a27]
Olá aroldo... já tentei usar quase todos que vi neste site, e infelizmente foi muito complicado... mas valeu pelas dicas...
[]s
Acho que o uso de um framework de persistência poderia simplificar o processo. [url=http://www.oodesign.com.br/forum/index.php?showforum=17]Material [/url]de apoio do OODesign.[/quote:5eb5e26a27]
Olá aroldo... já tentei usar quase todos que vi neste site, e infelizmente foi muito complicado... mas valeu pelas dicas...
[]s
GOSTEI 0
Paullsoftware
23/07/2006
Eu não sou muito experiente nesse assunto mais tenho a minha opinião pessoal quanto a isso e gostaria de compartilhar com vocês.
Na minha opinião você deve usar uma tecnologia que trabalhar de forma robusta e traga bons resultados no seu sistema seja em velocidade/desempenho seja segurança dos dados, acho que hoje a liguagem mais usada é a SQL como todos nós sabemos os SGBD aceitam muito bem, mudando alguns comandos de um para o outro mais nada de anormal, para melhorar a sua manutenção no futuro é aconcelhavel usar comandos SQL simples como já mencionado acima, e trabalhar com MultCamadas criando um servidor de negócios para a sua aplicação, assim, evita que você tenha que fazer o banco fazer algo a+++ além de armazenar os dados, e numa futura atualização pode ser que tenha dores de cabeça quando for migrar de banco, eu passei por isso quando migrei de [b:7cc7269ba3]access[/b:7cc7269ba3] para [b:7cc7269ba3]Firebird[/b:7cc7269ba3] a um tempo atrás e percebi que a melhor forma e usar o banco somente para guardar os dados, nada de geradores, somente triggers e SP que sejam essenciais mais somente. É isso amigo, boa sorte no seu projeto e estamos aqui para ajudar no que for preciso :wink:
Na minha opinião você deve usar uma tecnologia que trabalhar de forma robusta e traga bons resultados no seu sistema seja em velocidade/desempenho seja segurança dos dados, acho que hoje a liguagem mais usada é a SQL como todos nós sabemos os SGBD aceitam muito bem, mudando alguns comandos de um para o outro mais nada de anormal, para melhorar a sua manutenção no futuro é aconcelhavel usar comandos SQL simples como já mencionado acima, e trabalhar com MultCamadas criando um servidor de negócios para a sua aplicação, assim, evita que você tenha que fazer o banco fazer algo a+++ além de armazenar os dados, e numa futura atualização pode ser que tenha dores de cabeça quando for migrar de banco, eu passei por isso quando migrei de [b:7cc7269ba3]access[/b:7cc7269ba3] para [b:7cc7269ba3]Firebird[/b:7cc7269ba3] a um tempo atrás e percebi que a melhor forma e usar o banco somente para guardar os dados, nada de geradores, somente triggers e SP que sejam essenciais mais somente. É isso amigo, boa sorte no seu projeto e estamos aqui para ajudar no que for preciso :wink:
GOSTEI 0