webForumDet fria alternativet

Vissa fält från Access till MySql, en gång om dagen

ASP

2 svar · 431 visningar · startad av saturday

Medlem sedan jan. 2007133 inlägg
Frågan#1

Har lite kluriga funderingar på något helt nytt för mig. Jag behöver en gång om dagen uppdatera en MySql databas med uppgifter från en Access databas.

Lite info om detta
* Jag ska inte uppdatera alla fält och rader utan några stycken av dem. Så jag kan inte "bara" skriva över hela tabellen.
* Det finns nycklar i båda databaserna som överensstämmer.
* Jag kommer bara åt MySql servern innifrån webbservern vilket innebär att Accessdatabasen måste(?) laddas upp på webbservern innan jag kan öppna MySql databasen och uppdatera.
* Nycklarna som ska uppdateras(Då inte alla rader ska uppdateras) hämtas från en annan tabell ifrån MySql databasen

Så flödet blir ungefär så här:
> Vad ska plockas:
Plocka nycklarna ifrån MySql tabellen "nycklar".

> Plocka den nya informationen:
Öppna Access databasen och hämta de fält som jag behöver där nycklarna övernstämmer med dem jag nyss hämtat.

> Spara den nya informationen:
Öppna MySql databasen igen och öppna destinationstabellen(Alltså inte nyckeltabellen) och uppdatera fälten där nycklarna överensstämmer.

Jag behöver hjälp med att tänka här. Om jag ska lösa den via något ASP script (Och hur är då det optimala scriptet?) eller om det finns programvara för detta. Att göra någon join fråga i SQL borde vara omöjligt med tanke på att det är olika databaser?

Har du erfarenhet av detta eller bara har vettiga idéer så blir jag superglad! Har du dessutom ett kodexempel blir det guldstjärna. ;)

Edit. Jag kan inte köra tredjeparts program då inte webbhotellet tillåter det. Så det behöver bli en smart ASP lösning.

Medlem sedan juli 20003 825 inlägg
#2

Jag förstår inte hela problematiken, men en av de saker som skiljer Access från MS SQL Server är att i SQL Server kan man hantera databasen i ett webbaserat grafiskt gränssnitt.

I Access är du hänvisad till gränssnittet som Microsoft tillhandahåller. Kanske jag missuppfattar dig.

***
Att jämföra tabeller borde inte vara något problem. Du kan ju lätt spara data i aningen lokala variabler eller i sessionsvariabler.

Man kan tänka sig att du har ett datum/tid fält och kollar vilken som är nyast. Då uppdaterar du den nyaste informationen till den äldre.

Jag undrar om inte jag skulle ta en tabell, en fråga i taget. Kanske inte den optimalt mest snabba metoden, men allt är relativt.

I ett senare skede kommer det vara överskådligt och lätt att se och att ändra. Att felsöka. Det är ett stort värde i det med!

På sättet som du beskriver det på kommer det, oavsett metod, gå mycket fort. I ett sånt läge röstar jag på mer kod som man fattar vad den gör och man slipper dokumentera.

Medlem sedan jan. 2007133 inlägg
#3

Eclipse skrev:

Jag förstår inte hela problematiken, men en av de saker som skiljer Access från MS SQL Server är att i SQL Server kan man hantera databasen i ett webbaserat grafiskt gränssnitt.

I Access är du hänvisad till gränssnittet som Microsoft tillhandahåller. Kanske jag missuppfattar dig.

***
Att jämföra tabeller borde inte vara något problem. Du kan ju lätt spara data i aningen lokala variabler eller i sessionsvariabler.

Man kan tänka sig att du har ett datum/tid fält och kollar vilken som är nyast. Då uppdaterar du den nyaste informationen till den äldre.

Jag undrar om inte jag skulle ta en tabell, en fråga i taget. Kanske inte den optimalt mest snabba metoden, men allt är relativt.

I ett senare skede kommer det vara överskådligt och lätt att se och att ändra. Att felsöka. Det är ett stort värde i det med!

På sättet som du beskriver det på kommer det, oavsett metod, gå mycket fort. I ett sånt läge röstar jag på mer kod som man fattar vad den gör och man slipper dokumentera.

Det är två problem jag anser mig ha, dels hur jag ska lagra datan mellan databaserna(Array, form, eller annan lösning - beroende på vad som är bäst) samt hur jag uppdaterar SQL frågan i ett recordset för varje loop.

Exempelvis när jag plockat upp nycklarna och öppnat Accessdatabasen så blir det en select som loopar genom hela databasen och kollar av när nycklarna stämmer, så fort en nyckel har körts ska ju nästa nyckel in i SQL fågan och recordsetet, misstänker jag(Har aldrig gjort en sådan här lösning förut).

Första delen missförstod du mig på, jag vet vad skillnaderna är mellan MySql och Access då jag jobbat/jobbar med båda.

280 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
141 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
142 ms — ändringar (db)