Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Réplications
Réplications Forum d'entraide sur les différentes réplications de MS SQL Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/09/2006, 12h11   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2005
Messages : 92
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 92
Points : 12
Points : 12
Par défaut Lancer une réplication depuis une application

Bonjour à tous.

Voila, je viens créer une réplication d'une quarantaine de tables sur 16 serveurs. Elle marche parfaitement, jusque la pas de problème

J'ai une réplication principale qui copie toutes les tables et une pour chaque table afin de pouvoir n'en répliquer qu'une a la fois.

J'ai à coté de cela une page web ASP.NET qui va modifier les valeurs dans la BDD de référence. Et j'aimerai pouvoir lancer la réplication directement depuis cette page. Sans avoir à passer par le gestionnaire de réplication ou par Entreprise Manager.

J'ai commence a regarder dans les bases systemes du serveur ou se trouve la réplication et j'ai trouve ces quelques tables :

MSsubscriver_info : qui contient les infos des différents abonnés aux réplications
MSsubscribtion : qui contient la liste des abonnés/réplications
MSpublications : qui contient les différentes réplications

J'ai donc a peu près toutes les infos qu'il me faut... Mais je ne vois pas du tout comment les mettres ensemble...

Quelqu'un saurait il comment on peut lancer une réplication depuis une app extérieur ?

Niveau SQL Server, j'ai un mix entre 2k et 2k5

Merci d'avance

EDIT : Après quelques recherches, je viens de tomber la dessus :

Microsoft.SqlServer.Replication

Un namespace .NET qui, apparement, permet de gérer les réplications.

Je continus de regarder mais si quelqu'un a déjà utiliser cela, je veux bien un petit coup de main ^^
Raton est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/09/2006, 14h28   #2
Candidat au titre de Membre du Club
 
Inscription : juillet 2005
Messages : 92
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 92
Points : 12
Points : 12
Bon, j'ai trouvé comment faire...

Mais malheuresement, ce n'est compatible qu'avec SQL Server 9.0... Et mon serveur de replication est en 8.0...

Je laisse le code pour d'éventuel chercheur :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
Dim conn AS New Microsoft.SqlServer.Management.Common.ServerConnection
 
        'Passe en mode d'identification SQL Server
        conn.LoginSecure = False
        conn.Login = "login"
        conn.Password = "mdp"
        conn.ServerInstance = "NomServeur"
 
        conn.Connect()
 
        'Initialisation de l'objet de publication
        Repl = New Microsoft.SqlServer.Replication.TransSubscription
 
        Repl.ConnectionContext = conn
        'Base de donnée du serveur de référence
        Repl.DatabaseName = "nombase"
        'Nom du script
        Repl.PublicationName = "NomScript"
        'Base de données chez l'abonné
        Repl.SubscriptionDBName = "nombasel"
        'Nom de l'abonné
        Repl.SubscriberName = "NomAbonne"
 
        IF NOT Repl.LoadProperties() AND Repl.AgentJobId IS Nothing Then
            ' Start the Distribution Agent asynchronously.
            Repl.SynchronizeWithJob()
 
        End If
 
        conn.Disconnect()
Raton est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h37.


 
 
 
 
Partenaires

Hébergement Web