Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


If IsNULL

Postades av 2002-04-10 16:11:51 - Joakim Ålstig, i forum asp - allmänt, Tråden har 11 Kommentarer och lästs av 506 personer

If IsNULL(Sidnamn) Then

Set Delete = Server.CreateObject("ADODB.Connection")
Set Rad = Server.CreateObject("ADODB.Recordset")
Delete.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("../../Databas/databas.mdb")&";"

D = "DELETE Sidnamn From guestbook WHERE ID = "&Request.Querystring("ID")
Rad.Open D, Delete, 1, 2

Delete.Close
Rad.Close

Else

RecSet("Sidnamn") = Sidnamn

End If

Sidnamn är plockat från en form, och om den är tom så ska 'Sidnamn' raderas från 'guestbook', problemet är att If satsen aldrig är sann. Dvs. att den alltid går till Else!


Svara

Sv: If IsNULL

Postades av 2002-04-10 16:18:06 - Johan Djupmarker

Eftersom du inte skriver Null-tecken i formen kan du göra såhär istället:

If Len(Sidnamn) > 0 Then

/Johan


Svara

Sv: If IsNULL

Postades av 2002-04-10 16:28:22 - Joakim Ålstig

Funkar ändå inte =/


Svara

Sv: If IsNULL

Postades av 2002-04-10 16:31:00 - Johan Djupmarker

Oj, ursäkta, såhär ska det givetvis vara!

If Len(Sidnamn) = 0 Then

Om detta inte fungerar, innehåller Sidnamn verkligen det du har tänkt?

/Johan


Svara

Sv: If IsNULL

Postades av 2002-04-10 16:40:37 - Joakim Ålstig

OK det funkar, men nu så är felet att istället för att bara "tömma" sidnamn så tas allt bort där ID = Request.Querystring("ID") =/
Som att skriva * isället för 'Sidnamn'

D = "DELETE Sidnamn From guestbook WHERE ID = "&Request.Querystring("ID")

Rad.Open D, Delete, 1, 2

Så ser det ut!


Svara

Sv: If IsNULL

Postades av 2002-04-10 18:15:12 - Johan Djupmarker

DELETE raderar aktuell post, så det är helt riktigt. Du kan använda UPDATE istället:

D = "UPDATE guestbook SET Sidnamn = NULL WHERE ID = "&Request.Querystring("ID")

eller såhär om du vill ha en tom sträng istället:
D = "UPDATE guestbook SET Sidnamn = '' WHERE ID = "&Request.Querystring("ID")

/Johan


Svara

Sv: If IsNULL

Postades av 2002-04-10 18:38:48 - Andreas Hillqvist

Jag föreslår som JohanD. Att du använder "If Len(Sidnamn) > 0 Then" Eftersom detta även hanterar nullvärden. Du får byta plats på utrycken i ifsatsen:
<code>
If Len(Sidnamn) > 0 Then
RecSet("Sidnamn") = Sidnamn
Else
Set Delete = Server.CreateObject("ADODB.Connection")
Delete.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("../../Databas/databas.mdb")&";"

Delete.Execute "DELETE Sidnamn From guestbook WHERE ID = "&Request.Querystring("ID")

Delete.Close
End If
</code>
Eftersom frågan inte retunerar något recordset är det dumt att använda ett. Du får ett fel eftersom recordset'et redan är stängt. ADO kan ju inte stänga ett stängt recordset. Använd istället execute på connection objektet.


Svara

Sv: If IsNULL

Postades av 2002-04-10 18:49:20 - Joakim Ålstig

Testade ditt sätt Anders. Får samma fel, alltså att allt där ID överenstämmer tas bort och inte bara i kolumnen 'Sidnamn'! Fattar inte detta!


Svara

Sv: If IsNULL

Postades av 2002-04-10 21:01:17 - Johan Djupmarker

Joakim: Kolla på mitt inlägg ovan från 18:15:12, din SQL-sats gör inte det du menar.

/Johan


Svara

Sv: If IsNULL

Postades av 2002-04-10 22:16:16 - Joakim Ålstig

Tackar, tackar! Nu funkar det, men ja förstår fortfarande inte varför 'Delete WHERE Sidnamn' inte funkade!! Tacka iaf

//Jocke


Svara

Sv: If IsNULL

Postades av 2002-04-11 00:05:56 - Johan Djupmarker

DELETE innebär att du raderar posten, att du sedan tar med ett fältnamn är fel, men det bryr den sig inte Access om (tror att SQL-server gör det, eller så var det någon annan databas...). Korrekt syntax för delete är:
"DELETE FROM guestbook WHERE ID = " & Request.Querystring("ID")

/Johan


Svara

Sv: If IsNULL

Postades av 2002-04-11 02:45:40 - Joakim Ålstig

Ahh faan va dum ja é, tack för en bra förklaring!!


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 838
27 960
271 761
5 593
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies