Halloj. Vill plocka ut ett nummer ur en SQL-server 2005 databas ochFel i datareader
sen lägga på 1 och knuffa tillbaks det nya numret i databasen.
Har försökt med nedan:
Private Sub frmNewNum_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Conn As SqlConnection = New SqlConnection("Data source=111.111.111.111;Initial Catalog=testDB;UID=sa;PWD=sa")
Conn.Open()
Dim SQLs2 As SqlCommand
Dim SQLs As SqlCommand
SQLs = New SqlCommand("SELECT * FROM tblCounter ORDER BY ID ASC", Conn)
Dim rs As SqlDataReader = SQLs.ExecuteReader()
rs.Read()
If rs.HasRows Then
Dim nLNo As Long
Me.lblLastIndic.Text = rs("LastNum")
nLNo = rs("LastNum") + 1
SQLs2 = New SqlCommand("UPDATE tblCounter SET LastNum=" & nLNo, Conn)
SQLs2.ExecuteNonQuery()
Else
MessageBox.Show("Systemet ej laddat med nuffror")
End If
Conn.Close()
End Sub
Men får felet:
Det finns redan en öppen DataReader som har associerats med detta kommando. Det objektet måste stängas först.
Vad menas? ExecuteNonQuery är väl ingen DataReader?