Toon posts:

Verschillende tabellen koppelen in MSSQL

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben sinds kort met een ingewikkelde opdracht bezig om een oude dos-based applicatie te migreren naar een MSSQL-ASP omgeving. Het is de bedoeling dat de gegeven gescheiden worden in ATOP-gegevens (Naam, adres, woonplaats etc.) en bij-gegevens. De ATOP-gegevens gaan in 1 database, de bij-gegevens gaan in 1 database. Hoe krijg ik het nou voor elkaar dat ik in de SQL 2000 Manager de 2 databases gegevens kan laten uitwisselen (ik wil ze dus als het ware "koppelen" en net doen alsof het 1 database is).

De manier lijkt een beetje omslachtig maar d'r zit een hele filosofie achter die ik jullie ga besparen, waardoor ik het op deze manier probeer

Alvast Thnx,

DaFreak

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

uhm databases != tabellen
verdiep je eerst maar in de verschillen

overigens kan dat met joins

Doet iets met Cloud (MS/IBM)


  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Zoek maar eens op OPENDATASOURCE

Verwijderd

Zolang ze op de zelfde server staan kan je gewoon iets doen
code:
1
 select * from database.tableowner.tabelnaam

staan ze op een andere server dan moet je even 'n linked server toevoegen en kan je gewoon dmv
code:
1
 select * from server.database.tableowner.tabelnaam

de data benaderen..

  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
Wat D2k al zegt, ik denk dat je tabellen bedoeld.
We hebben het dan over twee tabellen met als het goed is evenveel records.
Vermoedelijk ben je op zoek naar een view die gewoon altijd de records uit beide tabellen ophaalt.
Overigens ben ik toch eigenlijk wel benieuwd naar die filosofie. Als het iets te maken heeft met rechten, afschermen oid, dan zou je wel eens een verkeerde keus gemaakt kunnen hebben.

Never underestimate the power of


Verwijderd

Topicstarter
Zie http://www.atopcentre.nl/ voor die visie

En ik bedoel toch echt databases, en dat ik dan de tabellen in die databases met elkaar wil verbinden (Het hele zooitje moet elkaar kunnen zien)

  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
OK, maar volgens mij heb je het over één applicatie, dus lijkt me dat het verspreiden van gegevens over meerdere database nu niet echt zinvol is.
Nadeel van de hele ATOP strategie is, dat je in ieder geval in MSSQL, tussen verschillende databases geen referentiele integriteit kunt laten afdwingen door het RDBMS. En dat mag je dan allemaal fijn in de code gaan doen.
Voor het benaderen van een db vanuit een andere db moet je even naar het voorbeeld van Yarvieh kijken. Verder moet je dan wel even twee punten (ipv één punt) tussen de database en de tableowner zetten.

Never underestimate the power of


Verwijderd

Topicstarter
Argh daar was ik dus al bang voor... en helaas is het wel nodig om het in aparte databases te zetten, want er komen nog tig applicaties die aan het ATOP-principe gekoppeld gaan worden... *zucht*
Zijn triggers hier een oplossing? Of database-publishing?

  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
Je zult hier inderdaad van alles met triggers moeten gaan doen, maar het wordt wel erg lastig om dit aan te sturen vanuit je ATOP DB. Als er bijvoorbeeld een applicatie bijkomt met een apart db, dan moet je dus in de trigger vd ATOP DB gaan controleren of het record weggemikt mag worden. Je kunt natuurlijk alle databases op betreffende server op gaan halen en dan per db gaan controleren of ie gebruik maakt van de ATOP DB en dan dus kijken of iets wel verwijderd mag worden. Maar dat is natuurlijk niet zo leuk.
Houdt er trouwens wel rekening mee, dat de user waarmee je bent ingelogd dan ook rechten heeft op al die databases, want anders vindt MSSQL dat ook weer niet zo grappig.

Never underestimate the power of

Pagina: 1