---
title: "nybörjarfråga om export/import av data i Access"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/22580-nybörjarfråga-om-export-import-av-data-i-access"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "timedia"
published: "2001-11-20T16:07:00.000Z"
updated: "2001-11-20T17:40:00.000Z"
replies: 6
views: 205
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/22580-nybörjarfråga-om-export-import-av-data-i-access"
---

# nybörjarfråga om export/import av data i Access

## #1 — timedia, 2001-11-20T16:07Z

Har en tabell där jag tyvärr för ca 170 filmer sedan gjorde ett dumt misstag (visste inte bättre) :(
Tabellen heter recensioner och där finns tyvärr all info om recenserade filmer samlade. Nu vill jag utveckla skådespelardelen med lite nya funktioner och då behöver jag göra en ny tabell för dom. 

Problemet: I dag ligger skådespelarna kommaseparerade i ett PM-fält (Actors)ex.Christian Bale, Willem Dafoe, Jared Leto,
Finns det något enkelt sätt att exportera dessa till en annan tabell (Skadisar) där fnamn och efternamn blir liggande i var sin cell?

Permalänk: https://www.webforum.nu/p/22580

## #2 — LarsG, 2001-11-20T16:47Z

Hur ligger namnet? Är det alltid ett förnamn och ett efternamn eller
kan det förekomma 

"Rhonda jo Petty,Madonna, John C  Watson" ?

Jag skrev ihop en bit VB-script. Där tolkas det så att sista ordet i actors blir efternamn allt annat blir förnamn. Om det bara finns ett ord så
blir det efternamn. 

Koden gör också en kontroll så att man inte lagrar duplikat. Det är ju helt otestat, men det kanske är något
du kan utgå ifrån i alla fall.

```
option explicit
dim sql,rs,actors,connect,firstName,lastName,rq,lastSpace,i

set connect = server.createobject("adodb.connection")
connect.open "dsn"
sql = "select actors from movies"
set rs = connect.execute(sql)
while not rs.eof
   actors = split(rs("actors"),",")
   for i = 0 to ubound(actors)
       lastSpace = instrRev(actors(i)," ")
       if lastSpace = 0 then
          lastName = actors(i)
          firstName = ""
       else
          lastName = mid(actors(i),lastSpace+1)
          firstName = trim(mid(actors(i),1,lastSpace))
       end if
'
' se om den finns innan
'
       set rq = conenct.execute("select 1 from actors where lastName = '" &_
	replace(lastName,"'","''") & "' and firstName = '" & _
        replace(firstName,"'","''") & "'")
       if rq.eof then
          connect.execute "insert into actors (lastName,firstName) values('" & _
          replace(lastName,"'","''") & "','"  & _
          replace(firstName,"'","''") & "')",,128
       end if
       rq.close
   next
   rs.movenext
wend
rs.close
connect.close
```

Permalänk: https://www.webforum.nu/p/359705

## #3 — timedia, 2001-11-20T17:14Z

Tackar :)
Lite fel dock:

> Feltyp:
> Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
> \[Microsoft\]\[Drivrutin för ODBC Microsoft Access\] Syntaxfel (operator saknas) i frågeuttrycket 'Bale'.'Christian')'.
> /moviemix/html/testact.asp, line 26

rad 26= connect.execute "insert into actors (lastName,firstName) values(" & \_

Permalänk: https://www.webforum.nu/p/359706

## #4 — LarsG, 2001-11-20T17:17Z

```
if rq.eof then
connect.execute "insert into actors (lastName,firstName) values(" & _
replace(lastName,"'","''") & "','" & _
replace(firstName,"'","''") & "')",,128
end if
```

Ett skrivfel, jag har bytt från punkt till komma.

Permalänk: https://www.webforum.nu/p/359707

## #5 — timedia, 2001-11-20T17:30Z

samma fel igen

> Feltyp:
> Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
> \[Microsoft\]\[Drivrutin för ODBC Microsoft Access\] Syntaxfel (operator saknas) i frågeuttrycket 'Bale','Christian')'.
> /moviemix/html/testact.asp, line 26

Stirrar mig blind på koden och inser hur mycket man måste lära :l

Permalänk: https://www.webforum.nu/p/359708

## #6 — LarsG, 2001-11-20T17:34Z

En liten miss till

```
if rq.eof then
connect.execute "insert into actors (lastName,firstName) values('" & _
replace(lastName,"'","''") & "','" & _
replace(firstName,"'","''") & "')",,128
end if
```

lade till en apostrof precis efter values, det blir lätt så när man inte har någon direkt mäjlighet att testa.

Permalänk: https://www.webforum.nu/p/359709

## #7 — timedia, 2001-11-20T17:40Z

HURRA!!!
Det funkar! Sparade mig för många hundra manuella inmatningar. TACK! :)

Permalänk: https://www.webforum.nu/p/359710

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/22580-nybörjarfråga-om-export-import-av-data-i-access
