2010-10-18 4 views
2

J'ai plusieurs applications en cours d'exécution qui accèdent à une base de données SQL Server. J'avais initialement une table réservée pour chaque application mais maintenant on m'a dit de tout mettre dans une table et que toutes les applications accèdent à la base de données. Je veux juste m'assurer qu'il suffit de changer ma chaîne de connexion pour toutes les applications et que je n'ai pas besoin d'apporter d'autres modifications pour que toutes les applications écrivent sur une seule table. Est-ce que ça ira? Les applications écrivent dans la table de base de données qui a un index unique sur une colonne et une clé d'identification primaire incrémentée automatiquement. J'ai modifié les procédures stockées que j'avais pour chaque application, car les chaînes de connexion étaient les mêmes car elles accédaient à la même base de données. Je veux juste m'assurer qu'il n'y aura pas de problèmes de conflit lorsque chacun essaye d'écrire dans la même table. Aucune des applications n'interrogera la table à tout moment, sauf si je lance moi-même des requêtes manuelles.accès multiple à la base de données du serveur SQL, une table

+0

Que font vos applications? Lire des données, écrire des données ou les deux? Quelle est l'importance de la précision pour vous. Si l'application a est en cours de lecture et que l'application b est en cours d'écriture, devez-vous vous assurer que l'application obtient la mise à jour de l'application b? – JNK

Répondre

1

Si vos applications accèdent toutes à des tables différentes dans une seule base de données, vous devez modifier ou reconfigurer les applications pour qu'elles utilisent toutes la même table.

La modification de la chaîne de connexion ne fonctionnerait que si les applications accèdent actuellement aux tables portant le même nom dans différentes bases de données ou sur différents serveurs. Vous pouvez également supprimer toutes les autres tables de la base de données et créer des vues avec ces noms d'objets qui serviront de "wrappers" autour de la table conjointe. Une vue d'alias droite n'entraîne généralement pas beaucoup de frais généraux.

+0

Merci d'avance. J'ai changé les procédures stockées que j'avais pour chaque application puisque les chaînes de connexion étaient les mêmes car elles accèdent à la même base de données. Je veux juste m'assurer qu'il n'y aura pas de problèmes de conflit lorsque chacun essaie d'écrire dans la même table. – vbNewbie

+0

Il existe des problèmes potentiels de verrouillage et/ou de blocage. Il y a des façons de gérer ces choses, mais c'est une combinaison d'expérience et d'essais et d'erreurs pour les résoudre. Cela dépendra principalement de la complexité des processus qui se produisent * dans une seule transaction *, et de la charge. – Toby

Questions connexes