---
title: "flytta data"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/11254-flytta-data"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "OveRRidE"
published: "2001-08-23T07:46:00.000Z"
updated: "2001-08-23T12:05:00.000Z"
replies: 29
views: 444
page: 1
pages: 2
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/asp/11254-flytta-data"
---

# flytta data

_Sida 1 av 2._

## #1 — OveRRidE, 2001-08-23T07:46Z

Jag har försökt att fixa detta men inte lyckats ordentligt...
 Jag skall ur en tabell hämta artikelnummer och katid, och sedan i en annan tabell lägga in detta kategori-id på den rad som har det artikelnummer som jag hämtade ut första. 
 Sen skall detta loopas igenom så att detta görs till dess att det inte finns några rader som inte gåtts igenom i första tabellen. 

nån som förstår? :q

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

## #2 — LarsG, 2001-08-23T07:59Z

Något slikt detta kanske

```
update annantabell 
   set katid = (select katid 
  from forstatabell
 where artikelnummer = annantabell.artikelnummer)
```

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

## #3 — OveRRidE, 2001-08-23T08:17Z

Hrm..

kan man "nesta" sql-satser på det sättet? :)

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

## #4 — OveRRidE, 2001-08-23T08:18Z

fråga 2: kommer den gå igenom **alla** poster som matchar kriteriet nu då?

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

## #5 — LarsG, 2001-08-23T08:24Z

Alla poster i annantabell blir uppdaterade. Om den innehåller ett artikelnummer som inte finns i forsttabell så blir katid null i den posten.

Svar på fråga 1:

Beror på dbms.

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

## #6 — OveRRidE, 2001-08-23T08:41Z

vad menar du med

> Beror på dbms.

Hur man öppnat db:n eller?

jag kör med vanlig

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/priser.mdb"))

'o sen en fin SQL-fråga
```

det borde väl funka

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

## #7 — icaaq, 2001-08-23T08:46Z

vad han menar är om man kör access, mySQL , MS SQL eller någon annan databasmotor :)

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

## #8 — LarsG, 2001-08-23T08:46Z

Jag menar att det är SQL-standard att skriva så men att alla DBMS (t.ex. Mysql) inte har stöd för det.

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

## #9 — OveRRidE, 2001-08-23T08:48Z

EKO Eko eko

:e

ok ;)

jaja så här ser min kod ut nu iaf.. men jag får inget på raderna efter att den körts...

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/priser.mdb"))
Set SQLstr = Connect.Execute("UPDATE priswebsverige SET katid = (SELECT katid FROM kat_join WHERE artnr = priswebsverige.art")
Connect.Close
```

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

## #10 — LarsG, 2001-08-23T09:00Z

Det ser ju ok ut. 

Vad får du ut om du kör denna select direkt i Access

```
SELECT katid 
FROM kat_join,priswebsverige
 WHERE kat_join.artnr = priswebsverige.art
```

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

## #11 — OveRRidE, 2001-08-23T09:00Z

Felmeddelande:

```
Microsoft JET Database Engine error '80004005' 

Operation must use an updateable query. 

/add_kol.asp, line 26
```

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

## #12 — LarsG, 2001-08-23T09:02Z

Sök på updateable query. 

(Det är något med rättigheter på databasfilerna som inte är korrekt inställt.)

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

## #13 — OveRRidE, 2001-08-23T09:05Z

Efter körning direkt i Access:

```
The specefied field 'katid' could refer to more than one table listed in the FROM clause of your SQL statement.
```

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

## #14 — OveRRidE, 2001-08-23T09:07Z

sök efter updatable query var nånstans? msdn kanske..

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

## #15 — OveRRidE, 2001-08-23T09:12Z

Hittat på msdn efter sökning:

> You attempted to run a query that tried to update a field that cannot be updated. For example, you may have created the query in such a way that you tried to update a field on the one side of a one-to-many relationship.

humma? :q

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

## #16 — LarsG, 2001-08-23T09:14Z

Jag tänkte på sökfunktionen här på Webforum.

Jag vet att det finns tidigare trådar där problem med updateable query har diskuteras.

```
SELECT kat_join.katid 
FROM kat_join,priswebsverige
WHERE kat_join.artnr = priswebsverige.art
```

Jag tänkte bara att det är bäst att testa ut att joinen fungerar och att det finns matchande poster, men det kan ju anstå tills dess att du har löst problemet med updateable query.

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

## #17 — OveRRidE, 2001-08-23T09:36Z

MSDN sökning gav:

**GREJ 1**

> Another very common cause is when the join includes linked ODBC tables that do not have unique indexes. In this case, there is no way for SQL to guarantee that records are unique in a table that has fields whose value will change with the query.

Detta enligt vad jag förstår innebär att en av tabellerna inte har någon primärnyckel (vilket jag faktiskt kommer ihåg att en av dem inte har) och då kan inte SQL garantera unika id i tabellen, vilket resulterar i fel.. eller?

**GREJ 2**

> A second cause of this error is that the database was not opened with the correct MODE for writing. If you perform the Open on the Connection object, you use the Mode property to indicate the permissions on the connection as shown here.. bla habla bla exempel kod..

Och detta då? Jag har för mig (tänker så långt näsan räcker) att det inte går att uppdatera med Execute-metoden.. eller har jag fel?

jag skall testa lite till, tacksam för svar.

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

## #18 — LarsG, 2001-08-23T09:48Z

Att använda execute för att göra update skall inte vara något problem.

Jag hittade detta inlägg från @nders som svar på frågan om updateable query

> rättigheter. IUSR_datornamn måste ha tillräckliga rättigheter i mappen databasen ligger, rxwd.

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

## #19 — OveRRidE, 2001-08-23T09:50Z

ok.. många inlägg i rad här nu.. hoppas nån har förståelse med mig.. :e

det är den andra delen av sql frågan som är fel för

```
Set SQLstr = Connect.Execute("UPDATE priswebsverige SET katid = 1")
```

fungerade nämligen utmärkt..

såhär ser hela sql-frågan ut, för er som inte sett den:

```
Set SQLstr = Connect.Execute("UPDATE priswebsverige SET katid = (SELECT katid FROM kat_join WHERE artnr = priswebsverige.art)")
```

:) hjälp?
\[kod\]

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

## #20 — OveRRidE, 2001-08-23T09:51Z

mappen har rätt rättigheter, det har jag kollat en två och tre gånger.. :(

som sagt se ovan

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/11254-flytta-data  
Nästa sida: https://www.webforum.nu/amne/asp/11254-flytta-data/page2.md
