Avatar billede as400master Nybegynder
05. marts 2002 - 21:07 Der er 3 kommentarer og
1 løsning

Update problem

Jeg har forsøgt at køre denne update handling :

UPDATE PRIKUNDE A
SET OMSKUNDE =
(select sum(ORDL_BELQB)                                       
from ordlregs B                                     
where ORDL_ORDREART = '0' and ORDL_ORDREKLASSE = '0' and ORDL_LEV_TERMIN_DT
between 20000720 and 20010720 AND ORDL_ORDRESTATUS = 90
AND B.ORDL_KUNDE = A.KUNDENUMMER);

Men den kommer med følgende fejl :

"Handlingen skal bruge en opdaterbar forspørgsel"

Hvad fanden betyder det - og hvad er fejlen ????? fungere normalt under andre databaser.

På forhånd tak !
Avatar billede mugs Novice
05. marts 2002 - 21:25 #1
Jeg er ikke den store SQL-haj. Men din between-sætning tyder på, at du har datoer indblandet. Datoer skalo være omsluttet af #.

Altså:

Between #07-20-2000# And #07-20-2001#

Der kommer så noget med datoformatet, som oftest skal være amerikansk format i SQL.

Men jeg er langt fra sikker - derfor kun kommentar.
Avatar billede proaccess Nybegynder
06. marts 2002 - 08:22 #2
Du kan ikke bruge sum-funktionen i forbindelse med opdateringsforesp.

Prøv i stedet at lave en midlertidig tabel, og opdatér fra denne...

Disse 3 forespørgsler, skulle kunne løse dit problem...
SELECT ORDL_KUNDE, Sum(ORDL_BELØB) AS SBELØB INTO TEMP_PRIKUNDE FROM ordlregs WHERE ORDL_ORDREART='0' AND ORDL_ORDREKLASSE='0' AND ORDL_LEV_TERMIN_DT Between 20000720 And 20010720 AND ORDL_ORDRESTATUS=90 GROUP BY ORDL_KUNDE;
UPDATE PRIKUNDE INNER JOIN TEMP_PRIKUNDE ON PRIKUNDE.KUNDENUMMER = TEMP_PRIKUNDE.ORDL_KUNDE SET PRIKUNDE.OMSKUNDE=TEMP_PRIKUNDE.SBELØB;
DROP TABLE TEMP_PRIKUNDE;
Avatar billede keysersoze Ekspert
06. marts 2002 - 11:41 #3
normalt betyder fejlen, at databasen ligger et sted hvor der ikke er skriverettigheder

http://activedeveloper.dk/aspdigital/kapitel2/updateable_query.asp
Avatar billede as400master Nybegynder
06. marts 2002 - 14:36 #4
Udmærket !! Det ser ud til at de tre SQL'er fra proaccess har løst min lille udfordring. Men det er sgu lidt trist at skulle lave tre SQL'er istedet for én...

Tak til dig - proaccess, og tak til de andre udmærkede indlæg.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester