Har sökt igenom gamla inlägg men inte riktigt fått svar på mitt problem.
Jag vill hämta data från vissa fält från en tabell i en databas (AS400) och spara den i en annan databas (access).
Denna uppdatering vill jag sedan göra på speciella tider på dygnet.
Jag vet hur jag ska connecta till de båda databaserna, men kan inte riktigt komma på koden för kopieringen.
Om tabellerna legat i samma databas så är det inga problem, men nu är de ju i olika databaser.
Lösningen ovan var ju inte den bästa jag sett. Om du bara ska flytta över en rad från databasen kan du lätt göra detgenom att ta ut alla fält i variabler och sedan på samma sida kasta in dem i den nya databasen
1 öppna databaskoppling1
2 hämta informationen från databas1 och placera det ivariabler
3 stäng databaskoppling1
4 öppna databaskoppling2
5 sätt in variablerna i databas2
6 stäng databaskoppling2
Om du vill att det ska bli säkert så kan du använda ADO-transactions. Alltså om ett steg avbryts så går allting tillbaka till det ursprunliga
------------------
Adde
I AS400 sitter det en DB2 databas som stödjer SQL. Så det går bra att i ett VBScript att koppla mot den och hämta datan och sen koppla mot Access och lägga in. En .vbs fil går att schemalägga.
Ett annat sätt är att i AS400 skapa en query och spara som en fil. Ladda över till NT som en kommaseparerad textfil med ClientAccess. Sen är det bara (!) att skriva ett skript som läser in textfilen till databasen.
Bästa sättet är förmodligen att direkt köra mot DB2an, men det kanske du inte kan/får/vill...
Vet inte riktigt vilken lösning som låter bäst.
Att hämta info från AS400 och mellanlagra i variabler låter ju simpelt, men problemet är att detär väldigt många poster. Flera hundra tusen.
Är det risk att man kraschar webservern då?
En kommaseparerad textfil kanske blir lösningen.
Men finns det inget kommando i SQL för att kopiera en tabell från en databas till en annan??
Flera hundra tusen poster... hur kommer det att fungera i en Access databas (ngn som vet?). Framför allt om den ska kopplas mot webben och förhoppningsvis ska få flera samtidiga användare.
Om du skriver ett VBScript så använder du inte webbservern, utan scriptmotorn i NT (om du nu kör NT). Jag gjorde nått liknande i NT4. Använde då kommaseparerade textfiler som jag läste in rad för rad i Access (finns nog bättre lösning på detta).
Enklare att schemalägga en .vbs fil i stället för en .asp fil. (tycker jag i alla fall)
Jag antar att du ska ut med informationen på en webbsida, så bäst prestanda får du nog om du använder dig av DB2 databasen i stället för Access.
Det ska inte ut på webben.
Det ska användas i ett intranät med ca 10 användare.
Idag utvecklar jag det på min egen dator (Win 98 SE och PWS).
Men sedan när det ska användas så blir det NT och då väl IIS.
Jag vill/får inte köra direkt mot AS400 utan vill lyfta bort lite av trafiken som går mot den, till webservern istället.
Att schamlägga en .vbs fil låter ju helt OK.
Bygger man upp en sådan fil på samma sätt som en ASP fil? (baserad på Visual Basic Script alltså)
ja du .... inte skulle jag köra en Access db med flera hundra tusen poster i .....
Körde ett experiment häromdagen då jag la in ca 100 000 poster .... wooopzzziiiii process tider på mellan 3 och 5 sekunder, samma db som med ca 4000 poster hade process tider på 150 millisekunder ...
Inget roligt det kan jag säga, och detta kördes i ett LAN =(
BLir nog att tänka om angående DBMS, tex MS-SQL eller mySQL
cya,
PatrikB
------------------
*Det tar sig sa han som hade eld i håret*
vi har själva setat med ett liknande problem där vi INTE fick koppla direkt mot ASET.
Vi löste det så att de en ggn i veckan kör ut en excell fil och sedan körs den in i MS-SQL dbn.
Den uppdateringen sköter vi manuellt idag men kommer inom en snar framtid att ske schema lagt
cya,
PatrikB
------------------
*Det tar sig sa han som hade eld i håret*
Har nu installerat MySQL, och river mig i huvet, då jag försöker lära mig det.
Får väl avsätta de närmaste dagarna åt det.
Har i alla fall lyckats konvertera Accessdatabasen till mySQL.
Tänkte se om sökningarna går snabbare nu än med Access.
Har dock problem med att connecta...
Angående uppdateringen så kanske bästa sättet är att göra en query i AS400 och exportera den som en textfil och sedan läsa in den i mySQL.
Jag återkommer säkert med fler frågeställningar.
David
265 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2