Toon posts:

[Access] hoogste waarde opzoeken in veld

Pagina: 1
Acties:
  • 172 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik heb een simpele database in access maar zit toch met een probleempje waar ik zo niet uitkom. Heb al gezocht maar kan zo niks vinden, misschien niet goed gezocht maar weet zo ff niet waar ik op moet zoeken.

Ik heb een tabel waar in het eerste veld nummers in staan. Daarna heb ik een formulier met een tekstvak. Aan dit tekstvak hangt nu de volgende code:

code:
1
=Aantal([Nummer])+1
Deze code telt het aantal nummers en daar een bij op.

Dit is niet precies wat ik zoek, ik wil namelijk het hoogste nummer hebben en dat daar 1 bij op wordt geteld.
Het zal misschien erg simpel zijn, maar kan er gewoon niet opkomen. Bij dat formulier kan ik alleen "opbouwen" kiezen en geen SQL, anders was het me denk ik wel gelukt met " select max(nummer) from tabel "

Ik heb "=Max([Nummer])+1 " ook geprobeerd maar dan komt er telkens 1 te staan als ik een nieuw record toevoeg terwijl het hoogste getal 468 is

[ Voor 10% gewijzigd door Verwijderd op 02-12-2003 16:02 ]


  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

Hier werkt het wel gewoon. Je moet wel eerst de record opslaan, maar als je dan naar het volgende record gaat, staat er wel een opvolgend nummer. Als je zonder opslaan naar het volgende record gaat, slaat hij het record wel op, maar krijgt de volgende record als default 1.

Waarom geen Autonummering? Wil je per sé oplopende getallen hebben?

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


Verwijderd

Topicstarter
Ik zal eens kijken, het leek me ook al goed in principe. autonummering heeft als nadeel dat als je ergens een tussen uit haalt de nummering gewoon doorgaat en je deze handmatig niet aan kunt passen. Dat moet in dit geval wel.

  • ATS
  • Registratie: September 2001
  • Laatst online: 12-02 13:46

ATS

Je probeert een query uit te voeren in een tekstveld. Dat kan natuurlijk aleen met een functie die ook daadwerkelijk een query kan uitvoeren. Kijk eens naar DLookup.

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10-2025
select max(veld1) from tabel 1

en tel hier 1 bij op ??

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 15:26

Janoz

Moderator Devschuur®

!litemod

Waarom is autonummering niet goed? Behalve dat je met deze oplossing raceproblemen kunt krijgen is er helemaal geen verschil. Wat maken die gaten trouwens uit? Dat is alleen maar een 'mensen' iets.

Gebruik gewoon autonummering, ze hebben het er namelijk niet voor niks in gezet.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • ATS
  • Registratie: September 2001
  • Laatst online: 12-02 13:46

ATS

Autonummering is niet in alle gevallen een goede oplossing, dat ligt er nog maar aan waar het nummer voor gebruikt wordt. Als het alleen maar een interne unieke ID is dan heb je gelijk, maar als het nummer ook op andere plaatsen (eventueel buiten je database) relevant is dan kan het problemen opleveren. Daarnaast maakt een autonummer veld het heel lastig om data uit andere bronnen die al onderling relaties heeft te importeren, omdat je totaal geen controle over de waarde van het veld meer hebt. Race condities kan je afvangen (en Access is zowiezo een waardeloze omgeving voor concurrent users).

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 15:26

Janoz

Moderator Devschuur®

!litemod

Er zijn natuurlijk wel redenen om niet de ingebouwde autonummer functionaliteiten te gebruiken. In principe moet autonummering (oid) de standaard keuze zijn en een keuze voor iets anders goed worden onderbouwt. 'Anders komen er gaten in' vind ik absoluut geen geldige reden.

Daarnaast is de oplossing die de TS wil alleen maar slechter dan het autonummer veld. Het bied dezelfde functionaliteit, maar dan met extra problemen. Kortom, geen voordeel en alleen maar nadelen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • ATS
  • Registratie: September 2001
  • Laatst online: 12-02 13:46

ATS

Hij zegt dat in dit geval de gaten gevuld moeten kunnen worden. Hij zegt er niet bij waarom dat zo is, maar hij heeft daar waarschijnlijk een goede reden voor. Zomaar zondermeer aannemen dat dat niet het geval is lijkt me wat kortzichtig eerlijk gezegd.

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 15:26

Janoz

Moderator Devschuur®

!litemod

in 95% van de gevallen hier op GoT wordt ten onrechte geen gebruik gemaakt van autonummering. De aaname is niet kortzichtig, maar plausibel. Zoals ik eerder al aangaf zou het gebruik van autonummering het eerste uitgangspunt moeten zijn en zou het niet gebruiken duidelijk beargumenteerd moeten worden. In principe zeg ik nergens dat de TS autonummering moet gebruiken, maar vraag ik hem te onderbouwen waarom dit niet te gebruiken. In het nu aangeleverde eisen pakket wordt namelijk nergens afgedwongen een eigen implementatie te gebruiken.

[ Voor 26% gewijzigd door Janoz op 03-12-2003 12:28 ]

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1