Propojení více SQL databází   zodpovězená otázka

SQL, Architektura, Databáze

Dobrý den,

chtěl bych poprosit hlavy osvícené o radu v zajímavém problémku..

Mám několik (asi 20) strojů a na každém běží SQL Server.

Stroj ukládá nějaké informace.

Nyní bych potřeboval, nevím v SQL jak, propojit tabulky z jednotlivých strojů dohromady, abych k nim mohl přistupovat.

Dříve bych to řešil pomocí Accessu a propojených tabulek, bohužel nyní to takto nejde (potřebuji na tyto informace přistupovat z ASP).

Za Vaše nápady předem děkuji..

S pozdravem Karel Láska

nahlásit spamnahlásit spam 0 odpovědětodpovědět

V první řadě bych se spíše zamyslel nad tím,proč je k provozování SQL DB potřeba cca 20 strojů?! Jakmile se pořeší logicky toto,tak bude možné snadno přistupovat i k datům

nahlásit spamnahlásit spam 0 / 2 odpovědětodpovědět

Viz dole..

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Proč nemůže být databáze jen na jednom počítači?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zdravím,

díky za reakce...

Odpověď oběma bude poměrně jednoduchá.

20 strojů, je myšleno opravdu strojů (3 haly).

V případě jedné centrální db, by se vše vyřešilo, vzhledem k tomu že je potřeba zajistit funkčnost ukládání a čtení i v případě nefukčnosti(byť i dočasné) sítě, má každý stroj svojí db. Možná se to zdá být trochu nelogické, ale svůj smysl to má.

Proto se snažím vše propojit, s tím, že to co vytvářím je pouze pro vyhodnocení procesu a nebude mít vliv na jeho činnost a případě jakékoli poruchy se nic neděje.

Karel

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak to se ale neřeší na úrovni aplikace, ale na úrovni databáze (replikace). Samozřejmě to nemůže nastavit kde kdo, vyžaduje to pokročilé znalosti.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Opět jsme si nerozuměli..

PC u každého stroje, má svůj SQL server.

Ať už z důvodu síťových problémů, nebo jiných.

Vím že by bylo jistým ulehčením, kdyby bylo vše na jednom místě, ale to teď není to co bych chtěl (s prominutím) řešit.

Musíte určitě i Vy uznat, že pokud potřebuji nezávislost stroje na síti, tak je toto jednoduché řešení.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

propojit tabulky z jednotlivých strojů dohromady

Na každém SQL Serveru je tedy databáze s jiným schématem?

Kam by se měl výsledek spojení tabulek ukládat?

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Máte pravdu :-(

Budu muset si přečíst svůj příspěvek ne 2x, ale 3x :-)

Na každém stroji je extra SQL databáze, s tabulkami, které jsou stejné(převážně).

Budu mluvit konkrétně, jedná se například o hodinovou spotřebu elektřiny. Pro vyhodnocení bych potřeboval jednotlivé tabulky z jednotlivých SQL spojit. Výsledek nepotřebuji ani snad ukládat, spíše by mi stačil view, který bych si v případě potřeby zavolal, ten by mi v danou chvíli ukázal co potřebuji..

Např. pro graf, kterým se dá porovnávat spotřeby jednotlivých strojů za posledních 7 dní.

Tentokrát jsem to snad napsal dobře.. :-)

Díky za pomoc.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

V tom případě nemá absolutně smysl mít více databází na více počítačích. Pokud jde pouze o možné výpadky sítě, používejte datový přístup v odpojeném (disconnected) režimu. Data se nacpou do hlavní databáze v momentě, kdy bude dostupné připojení k síti. Odpadne tím asi tak 75% záležitostí, které musíte řešit v současném stavu.

http://csharp.net-informations.com/ado.n...

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Velice si cením Vašeho času, který trávíte řešením mého problému. V případě že bych tuto DB vytvářel novou, pravděpodobně bych se touto cestou vydal (ostatně kolega to tak používá). Já jsem však nyní postaven před hotovou věc a potřebuji ji řešit tak jak je.

Existuje prosím tedy něco jako "Propojená tabulka" ?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

A co je myšleno termínem "Propojená tabulka"? Pomocí dotazu SQL lze sloučit data z více tabulek do jedné.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Propojenou tabulkou myslím toto(popisoval jsem to v úvodu - používám to v Accessu):

http://office.microsoft.com/cs-cz/access...

http://office.microsoft.com/cs-cz/access...

Takže asi tak..

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Lze používat tzv. linkované servery - je to most mezi jednou databází a databází jinou.

http://msdn.microsoft.com/en-us/library/...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zdravím,

díky moc za jednoduchou a přímou odpověď ..

Už to zkouším a je to přesně to co potřebuji..

Ještě jednou díky

Karel

nahlásit spamnahlásit spam 0 odpovědětodpovědět

A proč to neřešíte jednoduchou Snapshot replikací? Na internetu je návodů HAFO?

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback