73 messaggi dal 19 ottobre 2005
Ciao, ho una domanda:
ho due database con struttura identica, se server sql 2005 remoti che però riescono a comunicare tra di loro; posso dire ai due server che devo avere una determinata tabella in comune, oppure che i dati di una tabella in realtà sono solo su di un server?
In pratica sto cercando di creare un mezzo per permettere a due filiali della stessa azienda di condividere dati.

grazie ciao
1.976 messaggi dal 27 luglio 2005
Contributi
salve,
adima wrote:
Ciao, ho una domanda:
ho due database con struttura identica, se server sql 2005 remoti che però riescono a comunicare tra di loro; posso dire ai due server che devo avere una determinata tabella in comune, oppure che i dati di una tabella in realtà sono solo su di un server?
In pratica sto cercando di creare un mezzo per permettere a due filiali della stessa azienda di condividere dati.


potresti optare per linked server, nel senso che, sul database db1 avrai la sola anagrafica articoli e nel db2 l'anagrafica clienti.. definendo un linked server potresti quindi eseguire delle proiezioni sui server remoti, ad esempio tramite una procedura
CREATE PROC proc_name (
@codArt type
)
AS BEGIN
SELECT ....
FROM server2.db2.dbo.tabella_articoli
WHERE [CodArt] = @codArt;
END;

ed ovviamente anche
CREATE PROC proc_name (
@codCustomer type
)
AS BEGIN
SELECT ....
FROM server1.db1.dbo.tabella_clienti
WHERE [CodCustomer] = @codCustomer;
END;

a seconda del server utilizzato, il codice della procedura dovra' o meno comprendere il nome del linked server da utilizzare, oltre ovviamente al corretto nome del db..
non so comunque se questa sia una soluzione pratica o comunque perseguibile.. in caso di caduta del collegamento, in questo caso, entrambi i server sarebbero inutilizzati.. anche una corretta gestione dei vincoli di integrita' referenziale, nell'esempio corrente, sarebbero inutilizzabili in quanto la tabella "ordini" locale a db1 non potra' ovviamente referenziare e validare il vincolo con CustomerCode presente nel db2 remoto...
la soluzione "migliore", se percorribile, e' ovviamente quella di "condivisione" di un unico server per entrambe le filiali.. soluzioni promisque piu' eleganti passano per la replica mono o bi-direzionale, stratagemmi di log shipping anche manuale ovvero la possibilita' di mirroring... lo scenario si complica e diventa sia piu' difficile mantenerlo che gestirlo..
saluti

Andrea Montanari
http://www.hotelsole.com - http://www.hotelsole.com/asql/index.php
73 messaggi dal 19 ottobre 2005
uhm ho capito poco
Comunque ho iniziato a spulciare MSDN e i miei libri su sql server 2005 e sto cercando di risolvere il tutto tramite la replica, per adesso sono allo stadio di cercar di capire che tipo di replica potrebbe essermi utile  .



Grazie per la risposta!!
ciaoo

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.