Avatar billede flashit Nybegynder
25. november 2003 - 22:10 Der er 15 kommentarer og
1 løsning

Delete from datadase

Hej E.

Jeg er i gang med at lære hvordan man arbejder med databaser, og er støst på et problem.

Jeg har følgende kode:
Dim testvar As String
        testvar = txtByNavn.Text
        Dim myAdapter As OleDbDataAdapter = New OleDbDataAdapter( _
        "DELETE * FROM PostnrTable WHERE ByNavn =  "" & testvar & """, MyConnection)
        MyConnection.Open()
        myAdapter.DeleteCommand.ExecuteNonQuery()
        MyConnection.Close()
        StatusBar1.Text = "Record Deleted"
        'MessageBox.Show("" & testvar & "")


Den fejl som kommer er:
Additional information: Object reference not set to an instance of an object.

Er her en som kan hjælpe mig viderer :-)
Avatar billede htm Nybegynder
25. november 2003 - 22:11 #1
den hedder bare

DELETE FROM tabel WHERE felt=kriterie
Avatar billede flashit Nybegynder
25. november 2003 - 22:17 #2
"DELETE FROM Postnrtabel WHERE ByNavn =  "" & TempVarByNavn & "" AND Postnr = "" & TempVarPostNR & """, MyConnection)

og

"DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn =  "" & TempVarByNavn & "" AND Postnr = "" & TempVarPostNR & """, MyConnection)

Giver stadig samme problem
Avatar billede flashit Nybegynder
25. november 2003 - 22:18 #3
Det er denne linie som fejler??
myAdapter.DeleteCommand.ExecuteNonQuery()
Avatar billede htm Nybegynder
25. november 2003 - 22:20 #4
ok jeg kender ikke noget til visual basic.NET men kunne bare se der var problem der.
Avatar billede arne_v Ekspert
25. november 2003 - 22:22 #5
Prøv med:

MyConnection.Open()

Dim OleDbCommand myCommand = new OleDbCommand("DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn =  "" & TempVarByNavn & "" AND Postnr = "" & TempVarPostNR & """, MyConnection)

myCommand.ExecuteNoNQuery()
Avatar billede flashit Nybegynder
25. november 2003 - 22:55 #6
Hvad betyder myCommand?
og skal skal den ikke oprettes inden, vb kender nemlig ikke til den
Avatar billede arne_v Ekspert
25. november 2003 - 23:02 #7
Det gør den midterste linie
Avatar billede flashit Nybegynder
25. november 2003 - 23:10 #8
den siger "End of statement expected" på denne linie:
Dim OleDbCommand myCommand = new OleDbCommand("DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn =  "" & TempVarByNavn & "" AND Postnr = "" & TempVarPostNR & """, MyConnection)
Avatar billede arne_v Ekspert
25. november 2003 - 23:12 #9
Den er vist gal med "erne.

Dim OleDbCommand myCommand = new OleDbCommand("DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn = '" & TempVarByNavn & "' AND Postnr = '" & TempVarPostNR & "'", MyConnection)

skulle løse det.
Avatar billede flashit Nybegynder
25. november 2003 - 23:15 #10
:-(
Samme fejl
Avatar billede arne_v Ekspert
25. november 2003 - 23:17 #11
Vi glemte lige htm's lilel note:

Dim OleDbCommand myCommand = new OleDbCommand("DELETE FROM Postnrtabel WHERE ByNavn = '" & TempVarByNavn & "' AND Postnr = '" & TempVarPostNR & "'", MyConnection)
Avatar billede flashit Nybegynder
25. november 2003 - 23:41 #12
Jeg har prøvet at skrive det på en anden måde:
Men det er samme fejl:
Dim objcommand As OleDbCommand = New OleDbCommand()
        objcommand.Connection = MyConnection
        objcommand.CommandText = "DELETE FROM PostnrTabel WHERE Postnr = " & TempVarPostNR & " AND ByNavn = " & TempVarByNavn & ""
        MessageBox.Show(objcommand.CommandText)
        MyConnection.Open()
        objcommand.ExecuteNonQuery()
        MyConnection.Close()

Når min sql bliver vist så ser det helt rigtigt ud.

Men så kommer denne fejl
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in system.data.dll

Jeg ved ikke om det er tættere på men det er da et forsøg
Avatar billede arne_v Ekspert
25. november 2003 - 23:45 #13
Hvad med:

Dim myCommand As OleDbCommand = new OleDbCommand("DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn = '" & TempVarByNavn & "' AND Postnr = '" & TempVarPostNR & "'", MyConnection)

eller:

Dim myCommand As OleDbCommand = new OleDbCommand("DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn = '" & TempVarByNavn & "' AND Postnr = " & TempVarPostNR, MyConnection)

?
Avatar billede flashit Nybegynder
25. november 2003 - 23:51 #14
HELT VILDT FEDT, DENNE VIRKEDE:

        MyConnection.Open()
        Dim myCommand As OleDbCommand = New OleDbCommand("DELETE ByNavn, Postnr FROM Postnrtabel WHERE ByNavn = '" & TempVarByNavn & "' AND Postnr = " & TempVarPostNR, MyConnection)
        myCommand.ExecuteNonQuery()
        MyConnection.Close()
        FillDataSetAndView()
        BindFields()
        ShowPosition()
        StatusBar1.Text = "Record Deleted"

Tak IGEN IGEN IGEN :-)

Giver du ikke et svar
Avatar billede arne_v Ekspert
25. november 2003 - 23:53 #15
OK
Avatar billede arne_v Ekspert
25. november 2003 - 23:54 #16
Jeg skal beklage den meget fumlen.
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