Just nu i M3-nätverket
Jump to content

Dubbla databaser på samma sida


Patronbutiken

Recommended Posts

Patronbutiken

Kan man hämta data från två databaser till samma asp-sida. där frågan ser ut ung. select from tabell1 i databas 1 and tabell1 i databas 2 where artnr i databas1 tabell1 like artnr i databas 2 tabell2

 

Är detta möjligt? eller är jag helt ute och seglar (surfar)

 

TPFH

Peter

 

Link to comment
Share on other sites

Jo, det ska man kunna göra:

 

SELECT .... FROM databas1.tabell1, databas2.tabell2 where databas1.tabell1.artnr = databas2.tabell2.artnr

 

 

_________

TicoRoman - The One And Only

 

Link to comment
Share on other sites

Magnus Gladh

Tror inte du kan göra så mot Access, eftersom där kopplar du dig mot en fil och en fil = en databas.

 

Om du däremot kör typ SQL Server, mySQL, Oracle så är det inga problem. Bara koppla upp sig mot någon databas och sedan använda databas.tabell.kolumn.

 

om du använder dig av Access, så kan du göra en fullösning, och det är att du skapar en ny databas (.mdb fil) och sedan länkar du in alla de tabeller som du vill ha. Vilket gör att du kan komma åt olika tabeller i olika databaser på en enkelt sätt.

 

- Magnus

-----------------------------------------------------

Jag är inte kaxig, jag är bara så jävla bäst...

 

Link to comment
Share on other sites

Patronbutiken

Öhhh!

Nu blev det tvärstopp i de små grå, de få som finns kvar efter helgen.

skall jag ha två lika databaser?

 

Tackar allra ödmjukast

 

Link to comment
Share on other sites

Magnus Gladh

Om du inte har access, utan typ MySQL, SQL server, oracle så gör du som TicoRoman säger.

 

Har du access, så har du antagligen 2 filer (.mdb det du kallar databaser) redan. Det du vill göra är att hämta är att joina tabeller i dessa motvarandra.

 

- Så fall så skapar du en ny tom access fil.

- väjl File -> Externdata -> Linked tables (något sånt)

- Leta sedan fram den 1 "databasen", välj den och välj sedan den/de tabeller som du vill kunna joina emot.

- När det är klart så väljer du den 2 "databasen" och gör samma sak.

 

Du har nu fått en ny databas som "pekar" på tabellerna i dina 2 andra databaser. Nu kan du enkelt joina ihop tabellerna utan att blanda in andra databaser, du din nya databas "tror" att tabellerna finns i den.

 

- Magnus

-----------------------------------------------------

Jag är inte kaxig, jag är bara så jävla bäst...

 

Link to comment
Share on other sites

Patronbutiken

Kanske är det jag som krånglar till det.

Jag är ute efter följande:

Databasen innehåller 4 tabeller, varav en inte får uppdateras.

Tabellen som får uppdateras heter kunder, och den uppdateras via webbformulär,

Tabell två är ett artikelregister som uppdateras manuellt med att konvertera en excel-fil och skriva över det gamla artikelregistret.

Frågan som ställs i kundvagnen är ung.

Select from korg, artikelregister where korg.artid = artikelregister.artid and artikelregister artid = request.querystring......osv.

Det jag vill göra är att ha "korgen" i en databas samt de övriga i en annan. Ms Accessdata.

Blev nån klokare på min förklaring ?

 

Mvh Peter

 

Link to comment
Share on other sites

Magnus Gladh

Ja men då kan du inte joina mellan dem.

 

- Magnus

-----------------------------------------------------

Jag är inte kaxig, jag är bara så jävla bäst...

 

Link to comment
Share on other sites

Magnus Gladh

Okej!

 

Så har jag också löst förut. Man splittar upp sin databas i 2 stycken, en som ändras från webben och en som ändras av någon administrator som sedan laddar upp den ändrade databasen, utan att skriva över något som har skrivits in från webben.

 

ett typ exempel är som du säger en onlinelösning. Där har man en orderTabell som ändras från webben och en produktTabell som ändras av en admin. Om man tar hem hela databasen för att lägga till produkter så kan det bli så att en order läggs i databasen, innan man har hunnit att lägga upp den nya databasen med produktförändringarn, när man sedan laddar upp hela databasen så försvinner den ordern, och så kan man inte ha det.

 

Då bryter man ut så man har 2 databaser, en som endast ändras från webben som är din MASTER, här finns information om Orders, kunder och andra saker som matas in via webben.

 

Sedan skapar du en ny databas där du lägger in tabeller som INTE ändras från webben, och det skulle vara tabeller som produkter, leverantörer osv osv.

 

Denna nya databas blir din SLAVE.

 

Det du gör som jag beskrivit innan är att du länkar in tabellerna i SLAVE in i din MASTER databas, du kan nu från MASTER komma åt informationen i SLAVE och du kan joina mellan tabellern i SLAVE och MASTER.

 

Denna funktion hittar du under File -> Extern data -> Link Tabelles (eller något sån't)

 

Sök på nätet om Linked Tabells/Linked databas i access så hittar du nog mer info.

 

- Magnus

-----------------------------------------------------

Jag är inte kaxig, jag är bara så jävla bäst...

 

Link to comment
Share on other sites

Patronbutiken

Man får tacka

skall försöka får vi se om de små grå har fattat det hela rätt. Det skall alltså vara två indentiska baser

 

Link to comment
Share on other sites

Magnus Gladh

Nope!

 

Du skall bygga din 2 databaser som du vill ha dem, en med data som inte kan ändras från webben och en med data som kan ändras från webben.

 

Sedan länkar du in den en databasen i den andra.

 

Gör så här.

 

1. Öppna din databas där du har dina tabeller som kan ändras från webben, Typ (Order, customer, reviews osv osv) Denna kallar vi för MASTER

2. välj File -> Get External Data -> Link Tables

3. Leta upp din andra databas, den där du har datan om saker som inte kan ändras på webben (typ produktinfo, info om leverantörer osv osv) denna kallar vi för SLAVE

4. Markera vilka tabeller som du vill länka in (välj all)

5. I din MASTER databas har nu dessa tabeller kommint in och de har fått en lite pil framför sig (vilket visar att de är linked)

 

Nu kan du joina mellan tabellerna Order och produkter och Customer utan problem.

 

Du kan även utan att sabba något, när som helst ladda upp en ny SLAVE databas till din webserver, utan att något i MASTER försvinner.

 

Det enda du skall se till är att databasern ligger på exakt samma sök väg på din dator och på webservern, annars får du problem.

 

- Magnus

-----------------------------------------------------

Jag är inte kaxig, jag är bara så jävla bäst...

 

Link to comment
Share on other sites

Patronbutiken

Hurra!!!!

Du gör skäl för din signatur.

Jag kunde t.o.m länka in excel-filer vilket gjorde det hela MYCKET enklare, mitt orderprg. kan bara exportera till excel,

 

Så än en gång

Tack Magnus

 

Link to comment
Share on other sites

Patronbutiken

Jo problem blev det :-(

när jag publicerar allt på Internet får jag ett felmeddelande att databasen D:\data\inetpub

inte kunde hittas,, vad ble de nu för galet?

Excel tvärstöp, Carambole stöder inte excel-kopplingar på webben :-(

 

Försökte göra en fråga likande:

Select * from kategorier where fabrikat = hp

 

Problemet är att tabellen kategorier är den sk .SLAVE

hur skall man skiva frågan mot MASTER för att den skall inkludera SLAVE?

 

Mvh

Peter

 

Link to comment
Share on other sites

Magnus Gladh

problemet är att när du länkar in din SLAVE databas i din MASTER så är det en Fysiks sökväg som läggs in där, så om du har din SLAVE liggandes i C:\MinDatabas och länkar in den i MASTER så kommer MASTER att titta i C:\MinDatabas efter din SLAVE även på webhotellet. Och det fungerar ju inte.

 

Så du måste få reda på den fysiska sökvägen på ditt webhotell och sedan skapa en likadan trädstruktur hemma och därefter lägga in din SLAVE i MASTER.

 

Angående Excel så vet jag inte, har aldrig använt excel i access...

 

Angående frågan mot databasen MASTER så skriver du precis som du gjort alltså:

 

SELECT * FROM Katergorier WHERE fabrikat = 'hp'

 

även om kategorier finns i SLAVE databasen, så ioch med att du länkar in den i MASTER så "finns" den där också.

 

Men du måste ha fått in din SLAVE databas rätt i MASTER och det har du säkert inte fått eftersom det inte är samma sökväg till SLAVE databasen på din dator och webhotellet.

 

- Magnus

-----------------------------------------------------

Jag är inte kaxig, jag är bara så jävla bäst...

 

Link to comment
Share on other sites

Patronbutiken

Jag har fått den fysisiska adressen av carambole.

Jag kan dock inte lägga upp en liknande katalog på datorn. Eller?

Fyskisk väg enl carambole...

D:\websites\http://www.blabla.se

 

Är jag tvungen att skapa en domänserver eller?

 

Är du fortfarande bäst Magnus?? :-)

 

Link to comment
Share on other sites

Patronbutiken

Flåt, blabla.se var visst en sida, den har inget att göra med mina frågor utan var menat som ett ex.

 

 

/Peter

 

Link to comment
Share on other sites

Hej!

 

Om du inte har en D: drive, kan du skapa en virtuell genom att dela ut din C: disk.

 

Det skiljer lite mellan operativsystem men enklast är nog att gå via Utforskaren och välja verktyg och dela nätverks disk (?). Sedan mappar du in din C: disk och döper sharen till D: så vips har du en D: disk också ;)

 

/foo

 

Link to comment
Share on other sites

Patronbutiken

Jag har en D: disk, och löste det på följande sätt

skapade en mapp websites i den skapades webbplatsmappen.

Öppnade hela rubbet i frontpage och därigenom länkade databaserna, funkade klockrent,

Så tack alla som hjälp mig på vägen

 

/Peter

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...