Lazarus 3.6 (2024.09.30.)
Letöltés

  • Oldal:
  • 1

TÉMA:

Válasz: Két MsSQL adatbázis 2014 ápr. 14 06:23 #1335

  • SziZo
  • SziZo profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 12
  • Köszönetek: 0
Hálásan köszönöm

így tökéletesen működik (majd). Arra azonban értelemszerűen figyelni kell, hogy a két adatbázis kódolása egyforma legyen.

Válasz: Két MsSQL adatbázis 2014 ápr. 11 05:05 #1334

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 507
  • Köszönetek: 86
SQL terminálban/parancssorban futtatva a lekérdezést részletes hiba információkat kaphatsz.

Az előbbi kód nálam hibátlanul lefutott (természetesen adatbázis előtagokkal kiegészítve). Habár nem MsSQL hanem MySQL szervert futtatok... de ez mégiscsak egy szabványos SQL lekérdezés. Persze az is igaz, hogy M$-ék nem szeretik a szabványokat és az általánosan elfogatott módszereket alkalmazni.

Előfordulhat, hogy az adatbázis neve és a tábla neve közé be kell szúrni az adatbázis sémájának nevét is. Például '.dbo'-t ha a dbo séma szerint készült el. Valahogy így:
INSERT INTO adatbázis1.dbo.harmadiktábla(cikkszám,mező,mező2)
  SELECT cikkszám,mező,mező2 FROM adatbázis1.dbo.cikktörzstábla
  WHERE cikkszám =
    (SELECT cikkszám FROM adatbázis2.dbo.készlettábla
    WHERE azonosítóadat='valamiérték')
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 3.0 -- FPC 3.2-- GNU/Linux 5.15.0 x86_64

Válasz: Két MsSQL adatbázis 2014 ápr. 10 08:36 #1333

  • SziZo
  • SziZo profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 12
  • Köszönetek: 0
Hálásan köszönöm a helyreigazítást.

A bemutatott SQL az amit nem tudok azzal kiegészíteni, hogy:
INSERT INTO adatbazis1.harmadiktábla(cikkszám,mező,mező2)
SELECT cikkszám,mező,mező2 FROM adatbazis1.cikktörzstábla
WHERE cikkszám =
(SELECT cikkszám FROM adatbazis2.készlettábla
WHERE azonosítóadat='valamiérték')

Válasz: Két MsSQL adatbázis 2014 ápr. 10 07:16 #1332

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 507
  • Köszönetek: 86
Ez nem pascal hanem inkább SQL kérdés...
Figyelem: Spoiler!

A szükséges SQL lekérdezés ehhez hasonló legyen:
INSERT INTO harmadiktábla(cikkszám,mező,mező2)
  SELECT cikkszám,mező,mező2 FROM cikktörzstábla
  WHERE cikkszám =
    (SELECT cikkszám FROM készlettábla
    WHERE azonosítóadat='valamiérték')
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 3.0 -- FPC 3.2-- GNU/Linux 5.15.0 x86_64
Megköszönték: SziZo

Két MsSQL adatbázis 2014 ápr. 10 06:11 #1331

  • SziZo
  • SziZo profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 12
  • Köszönetek: 0
Kedves Hozzáértők

Két MsSQL adatbázisban levő táblát kéne kezelnem.
Az egyik adatbázisban a cikktörzs van, a másikban a készlet
A feladat az, hogy a készleten levő termékekhez a cikktörzsből vadásszak adatokat, és letegyek egy 3. táblába.

A készlet és cikktörzs táblák között egyértelmű kapcsolatot ad a cikkszám mező.

A kérdés az, hogy miképpen tudok egy select-ben a két adatbázisban levő táblára hivatkozni.

A két adatbázis ugyan azon a vason fut, csak valami szervezési okból van különszedve.

  • Oldal:
  • 1