Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
1 Aplicativo / 3 Bancos
Message
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Titre:
1 Aplicativo / 3 Bancos
Divers
Thread ID:
00820130
Message ID:
00820130
Vues:
60
Alow! Alow! Alow!

Venho faz algum tempo pensando uma maneira de ter apenas 1 projeto e deixá-lo funcionando com uma dessas bases de dados: DBF, SQL Server e Postgree!... Assim, o cliente pode escolher qual base usar, etc... Minhas dúvidas:

1) Segurança!

Hoje uso DBC/DBF e faço tenho um cadastro de usuários do programa. Neste cadastro tenho nome/senha do usuário e o que ele pode (ou não) fazer. Por exemplo: Se pode consultar/incluir/alterar/excluir clientes / produtos / etc... Qual o desconto máximo permitido em uma venda... Qual condição de pagamento o usuário pode oferecer, etc...

Sei que o SQL / Postgree possui gerenciamento de segurança no próprio banco quanto ao tipo de instrução (Select/Insert/Update/Delete/StoredProc)... Até aí tudo bem... mas vamos imaginar que eu precise permitir um determinado usuário a deletar um "grupo" (inativos) de clientes, mas impedir que delete outro "grupo" (os ativos)...

No caso do desconto... Como falar para o banco que aquele usuário pode oferecer 5% e o outro 10%?

E a condição de pagamento: Determinado usuário pode vender com 30 / 60 dias e outros podem apenas oferecer a opção 30 dias...

Enfim... Como controlar o acesso de cada usuário?... No caso do DBC, não se tem muito a fazer a não ser criar uma tabela para controlar isso... Mas no caso do SQL / Postgree?

2) Diferença de sintaxe:

Em DBC: Select Nome+Sobrenome From Clientes ou Update Clientes Set Nome = "Rodolfo" Where Codigo = "100" funcionaria sem problemas... mas sei que outros bancos a sintaxe é diferente... Como vocês tratam isso?

Estou querendo usar CursorAdapter... será que ele trata esse tipo de situação quando trocamos a origem de NATIVE para ODBC? E ainda: será que ele entende como deveria ficar a instrução SQL independente do banco (neste caso SQL ou Postgree)?

3) Recursos do próprio banco:

Em DBC: Begin Transaction / End Transaction / Rollback ... em outros bancos Commit... - Como deixar o aplicativo pronto para gerenciar transações nos diversos bancos?

Views / Backup / Stored Procedures: Esses recursos são interessantes, melhoram desempenho / segurança... mas cada banco trata de um jeito.... Existe uma maneira de minimizar as diferenças?

[]s!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Rodolfo Duarte
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform