webForumDet fria alternativet

Konvertera databas

4 svar · 203 visningar · startad av danielpetersson

danielpeterssonMedlem sedan apr. 2002123 inlägg
#1

Hej!

Tänkte konvertera en dBase IV - databas till en Access - databas.
Undrar hur man skulle kunna göra det med ASP. Skulle man inte kunna göra så här?

Set ConDbase = Server.CreateObject("ADODB.Connection")
Set RsDbase = Server.CreateObject("ADODB.Recordset")
ConDbase.Open "DSN=dbase;UID=;PWD=;"
dbaseQuery = "SELECT * FROM F4_art"
RsDbase.Open dbaseQuery, ConDbase, adOpenKeyset, adLockPessimistic

Set ConAccess = Server.CreateObject("ADODB.Connection")
Set RsAccess = Server.CreateObject("ADODB.Recordset")
ConAccess.Open "DSN=access;UID=;PWD;"
accessQuery = "SELECT * FROM VARUBENÄMNING"
RsAccess.Open accessQuery, ConAccess, adOpenKeyset, adLockPessimistic

Do While Not RsDbase.EOF

RsAccess.AddNew
RsAccess("ARTNR") = RsDbase("ARTNR")
RsAccess.Update
RsDbase.MoveNext
Loop

Får felmeddelande antingen på AddNew eller Update.

Tacksam för hjälp

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Jo, det går nog om du har små datamängder.

Vad får du för fel?

danielpeterssonMedlem sedan apr. 2002123 inlägg
#3

Hej!

Jag får detta felmeddelande (rad 23 - RsAccess.AddNew):
ADODB.Recordset fel '800a0cb3'
Åtgärden som programmet begärt stöds inte av leverantören.
/access/konverterare.asp, rad 23

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Det verkar konstigt.

Vad händer om du gör en insert

Set ConDbase = Server.CreateObject("ADODB.Connection") 
Set RsDbase = Server.CreateObject("ADODB.Recordset") 
ConDbase.Open "DSN=dbase;UID=;PWD=;" 
dbaseQuery = "SELECT * FROM F4_art" 
RsDbase.Open dbaseQuery, ConDbase, adOpenKeyset, adLockPessimistic 

Set ConAccess = Server.CreateObject("ADODB.Connection") 
 
ConAccess.Open "DSN=access;UID=;PWD;" 

Do While Not RsDbase.EOF 
ConAccess.execute "insert into Varubenämnig(artnr) values(" & _
"'" & RsDbase("ARTNR") & "')",,128
RsDbase.MoveNext 
Loop

Om artnr är numeriskt så får du ta bort ' från frågan.

Jag tror nog att det finns några verktyg för att göra den här typen av överföringar. Har du letat hos dBase?

danielpeterssonMedlem sedan apr. 2002123 inlägg
#5

Hej!

Får det fortfarande inte att fungera. Ja, jag har letat hos dBase, men dock utan framgång. Tycker det borde vara lika enkelt som när man sätter in värde från formulär till databasen.

rs.AddNew
rs("ARTNR") = Request.Form("ARTNR")
rs.Update

138 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)