Avatar billede nuab Nybegynder
15. oktober 2002 - 12:59 Der er 13 kommentarer og
1 løsning

Delete i recordset - uden at delete i db

Hvordan sletter jeg en record i et recordset uden at slette i databasen??

Udførlig forklaring udbedes!
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:08 #1
Jeg før følgende fejl:

Error Type:
ADODB.Recordset (0x800A0C93)
Operation is not allowed in this context.

Og jeg forsøger at slette i recordset'et på følgende måde:

bol.Delete(2) '2 skulle gerne være konstanten for adAffectCurrent... Med andre ord forsøger jeg at slette den record, jeg står på, og ønsker efterfølgende at kunne arbejde videre med recordset'et - uden den nuværende record.
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 13:13 #2
Lytter lige med
Avatar billede daduck Nybegynder
15. oktober 2002 - 13:20 #3
Bør du ikke bare springe denne record over, eller lægge dit recordset over i en ny variabel..hvor du undlader at tage denne (dumme/onde/ikke brugbare/ikke ønskede) record med?
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:22 #4
Måske... er det en bedre løsning, eller kan man ikke slette i et recordset??
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:24 #5
Går delete-metoden ud på at slette i datasen - eller bruges den til at slette i recordset'et (og dermed undlader at slette i databasen)?
Avatar billede daduck Nybegynder
15. oktober 2002 - 13:25 #6
Ikke umiddelbart. Hvis der er nogle værdier i det, du ikke vil ha', kan du lægge de værdier du gerne vil bruge...en et andet recordset..og når de alle er rykket..kan du overskrive det oprindelige med det nye du har.

Og det burde da vel heller ikke være nødvendigt at slette noget fra et record-set.
1. Du kan lave en bedre sql-sætning.
2. Du kan skippe nogle af dine records, i selve koden, baseret på nogle kriterier.
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:26 #7
Hvordan kan jeg lægge mit recordset over i en ny variabel (altså et nyt recordset) og undlade den ikke ønskede record?? Jeg har brug for at kunne si nogle records fra og ikke bare en enkelt...
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:29 #8
Det er lidt for besværligt at lave en bedre sql sætning, da det pågældende felt bliver beregnet ud fra en masse kriterier... Og det er heller ikke så fed en løsning at skippe nogle records i selve koden, da recordsettet bliver brugt 100 steder... så vil jeg skulle lave lokale "skipninger" 100 steder!

Ergo har jeg brug for et recordset!
Avatar billede daduck Nybegynder
15. oktober 2002 - 13:29 #9
Dem du skal si fra, må have noget til fælles..hvad er det?
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:35 #10
Problemet med at si records fra er, at det drejer sig om et BEREGNET felt, som bliver smidt ind i et recordset (som bliver brugt 100 steder, hvorfor jeg skal have en løsning leveret som recordset).

Det beregnede felt (og de records, der sidder sammen hermed) skal derefter sorteres, og jeg skal have klippe den nederste del fra - den resterende del har jeg brug for at få i et "helt" recordset!
Avatar billede daduck Nybegynder
15. oktober 2002 - 13:35 #11
En knap så ressource-mæssig god ide, er at lave to eller flere (dog ikke 100 :-) forespørgsler. Husk at du sagtens kan lave dine beregninger direkte i sql.

Select etstortal as tempTAL From minFineDatabase Where (tempTAL * 100) > 123
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:43 #12
hvis du tager udgangspunkt i, at det ikke kan løses via sql (beregningen fylder ca. 2 sider på skærmen med en masse tests og beregninger) - hvordan laver jeg så mit nye recordset?!?!?!
Avatar billede nuab Nybegynder
15. oktober 2002 - 13:44 #13
Det drejer sig om 80 liniers asp-logik, som jeg ikke har den fjerneste lyst til at presse ned i en sgl-sætning...
Avatar billede daduck Nybegynder
15. oktober 2002 - 13:54 #14
Set RS = dbConn.Execute(sql)
Set RS2 = RS
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
Kurser inden for grundlæggende programmering

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