Avatar billede zeth Nybegynder
27. februar 2001 - 18:48 Der er 6 kommentarer og
1 løsning

Unikke felter?

Hej.. Jeg har et unikt felt i min MySQL database, så hvis jeg prøver på at poste den samme besked får jeg jo klart nok bare noget med Duplicate Entry.. Jeg har så prøvet med følgende kode, men den viser fejl lige gyldigt hvad jeg skriver...:

If Len(Err.Number) > 0 Then
Response.Write \"Feltet findes allerede i databasen\"
Response.Write \"Tryk <a href=\'xxx.asp\'>her</a> for at komme tilbage.\"
Err.Clear
Response.End
End if
Avatar billede kornfreak Nybegynder
27. februar 2001 - 18:56 #1
Hvorfor ikke lave et check?

SQL = \"select * from tabel where uniq = \'\" & uniq & \"\'\"
set rs = conn.execute( SQL )
if rs.eof then
  \'indsæt rekorden
else
  Response.Write \"Feltet findes allerede i databasen\"
  Response.Write \"Tryk <a href=\'xxx.asp\'>her</a> for at komme tilbage.\"
  Response.end
End if
rs.close
set rs = nothing
set SQL = nothing
Avatar billede netsrac Praktikant
27. februar 2001 - 18:59 #2
Hvis du vil bruge err metoden, skal du have:

on error resume next

i toppen af din side.

og dette i bunden af siden:

If Err.Number > 0 Then
Response.Write \"Feltet findes allerede i databasen\"
Response.Write \"Tryk <a href=\'xxx.asp\'>her</a> for at komme tilbage.\"
Err.Clear
Response.End
End if
Avatar billede zeth Nybegynder
27. februar 2001 - 19:21 #3
Jeg søger et svar noget lignende af dit, netsrac.. men problemet er bare at den opretter godt nok, men skriver stadig at der er fejl selvom der ikke er!?
Avatar billede netsrac Praktikant
27. februar 2001 - 19:26 #4
Så må du have en fejl et andet sted, du kan også lave en rolback så hvis der opstår fejl så bliver indsættelsen af datane annulleret f.eks.

If Err.Number > 0 Then
Response.Write \"Feltet findes allerede i databasen\"
Response.Write \"Tryk <a href=\'xxx.asp\'>her</a> for at komme tilbage.\"
Conn.RollbackTrans
End if
Avatar billede netsrac Praktikant
27. februar 2001 - 19:28 #5
Så skal du selvfølgelig have Conn.BeginTrans efter at du har brugt conn.open

Du kan også prøve med:

If err <> 0 then
Response.Write \"Feltet findes allerede i databasen\"
Response.Write \"Tryk <a href=\'xxx.asp\'>her</a> for at komme tilbage.\"
Err.Clear
Response.End
End if
Avatar billede zeth Nybegynder
27. februar 2001 - 19:36 #6
Okay viele dank, den nederste virker perfekt! :)
Avatar billede netsrac Praktikant
27. februar 2001 - 19:39 #7
Så lidt :-)
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