Avatar billede hulla Novice
31. marts 2003 - 08:28 Der er 2 kommentarer og
1 løsning

on Error resume next

Jeg har en SQL kørsel som afvikles hver nat.

DELETE FROM BirthdayList
INSERT INTO BirthdayList
SELECT KundeAfdNr, KundeNr, KundeNavn, KundeTitel, KundeAdresse, KundePostNrBy, KontorstedsNavn, DayOfBirth
FROM FødselsdagsListe

Mit problem er at DayOfBirth i Fødselsdagsliste ikke er en datetime, men en varchar fordi den laves ud fra et cprnummer. I BirthdayList ER DayOfBirth en datetime, og skal være det pga datoudregninger.

Det betyder at hvis et cprnummer er indtastet forkert i FødselsdagsListe, passer DayOfBirth ikke ind i BirthdayList og så udføres der overhovedet ingenting.

jeg vil gerne have at den bare går videre når den støder på en værdi den ikke kan lave om til datetime. Altså så den bare springer over de rækker med en forkert dato.

Lidt ligesom Try Catch i ens kode.

Ved nogen af jer om det kan lade sig gøre ?
Avatar billede janus_007 Nybegynder
31. marts 2003 - 13:44 #1
Det kan ikke lade sig gøre medmindre du laver en cursorfetch og det vil jeg ikke anbefale.
Derimod burde du lave enten en constraint eller næsten bedre en where clause i din select der udvælger de rækker der opfylder dit kriterie. Når rækkerne så er overført til birthdaylist, kan du overføre resten til en alternativ tabel som så evt. kan gennemgåes manuelt!
Avatar billede hulla Novice
31. marts 2003 - 14:18 #2
lyder udmærket,.. findes der ikke en IsDate agtig ting i SQL ?
Avatar billede hulla Novice
31. marts 2003 - 15:58 #3
jeg har løst det med Select ISDATE(minDato)

tak for hjælpen :o)
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
Computerworld tilbyder specialiserede kurser i database-management

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