Avatar billede pnr Nybegynder
23. januar 2003 - 10:28 Der er 6 kommentarer og
1 løsning

kan jeg "Gribe" en fejl der opstår når der skrives til databsen

Kan jeg reagere på en fejl fra en access database. dvs. jeg sætter nogle poster ind i databasen hvis en af posterne allerede findes skal den bare smides væk, og derefter skal programmet fortsætte. lige nu får jeg en fejl også stopper programmet.

alternativ var jeg jeg først skulle spørge databasen om posten fantes hvorefter jeg skulle ligge den i eller smide den væk. men det var da nemmere det andet, og ville det ikke også give en bedre performance?
Avatar billede Søren Bech Morsing Praktikant
23. januar 2003 - 10:33 #1
du skal lave nogle checks på det.
if sætninger

Hvis det er formfelter ville jeg gøre det både client side (m javascript) og serverside

Fx er input felter til tal ikke så glade hvis de ikke bliver udfyldt. Du kan så bare indsætte 0, medmindre en anden værdi er "required"

så inden du submitter din form ville jeg gøre brugeren opmærksom på fejlen
Avatar billede Søren Bech Morsing Praktikant
23. januar 2003 - 10:33 #2
ps, husk så også at tjecke inden du indsætter via asp, man kan jo rimelig nemt gemme din html side, og så fjerne client side scriptet og poste alligevel
Avatar billede pnr Nybegynder
23. januar 2003 - 10:44 #3
Jeg kan altså ikke "gribe" den fejl som vil komme fra databasen?
Avatar billede Søren Bech Morsing Praktikant
23. januar 2003 - 11:12 #4
jo men kun med
on Error resume next

Jscript har en federe fejlhåndtering med Try {} catch {}

Men det er din "pligt" at validere for fejl inden du indsætter.
Avatar billede pnr Nybegynder
23. januar 2003 - 11:18 #5
Dvs. jeg bør checke i databasen om posten eksistere inden jeg opretter den?
Avatar billede Søren Bech Morsing Praktikant
23. januar 2003 - 11:22 #6
klart...

fx sådan her:
set rs = Server.CreateObject("ADODB.RecordSet") ' tjeck selv om det er sådan man dimensionere et nyt recordset, bruger normalt ikke vbscript
SQLQuery = "SELECT ..... WHERE id = " + Request.Querystring("id")
rs.open SQLQuery, conn, 3, 2 'så får du et opdater bart recordset

if (rs.EOF) then
  rs.AddNew()
end if

og så opdatere du dine felter... men husk igen at validere...
Avatar billede pnr Nybegynder
26. januar 2003 - 13:46 #7
jeg takker
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