13. august 2001 - 11:54Der er
2 kommentarer og 2 løsninger
2 små spørgsmål
I en tabel har jeg 2 felter som jeg gerne vil opdatere med en værdi fra et 3. felt fldWeekYear skal indehold ugenummer + årstal fldMonthYear skal indeholde måned + årstal Date hentes fra fldDate
I en tabel gemmer jeg kalibreringsresultater med bl.a. datostempel. Denne dato vil jeg gerne tage den nyeste af og opdatere i min tabel med stamkort. max værdi i fldCalDate i tblCaldata skal overføres til fldLastCal i tblStamkort Fællesnævneren er fldRegNbr
Jeg vil gerne gøre det med et par stored procedures
Ang. spg 1: Er det en update du skal have lavet eller skal du bare have lavet så fldWeekYear, fldMonthYear og Date automatisk udfyldes når der kommer en ny række i tabellen? Hvis det sidste er tilfældet kan det laves ved at sætte Default på kolonnerne, hvilket er betydeligt mere performance optimalt i forhold til en trigger. Du kan endda evt. lave fldWeekYear og fldMonthYear om til såkaldte udregnede kolonner. Herved fylder de ikke i databasen, men du kan stadig SELECT\'e dem ud.
Ang. spg 2: Jeg tror følgende kan gøre det: UPDATE tblStamkort SET fldLastCal = MAX(fldCalDate) FROM tblStamkort INNER JOIN tblCaldata ON tblStamkort.fldRegNbr = tblCaldata.fldRegNbr
1. Det ville være smart om det var som default, men \'problemet\' er at værdien er afhængig af data i et andet felt og det kan ændre sig løbende.
Jeg har lavet en stored procedure der kan klare det efter flere sværdslag.
2. Ligner det selv kom frem til efter næsten lige så mange sværdslag.
I må deles om pointene.
Synes godt om
Ny brugerNybegynder
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.