Hvorfor opdaterer denne kode ikke
<%@ import namespace=system.Data %><%@ import namespace=MySql.Data.MySqlClient %>
<HTML>
<HEAD>
<script language="vbscript" runat="server">
Sub Page_Load(sender as Object, e as EventArgs)
If Not Page.IsPostBack
BindData()
Else
'BindData()
End If
End Sub
Sub BindData()
'1. Create a connection
Const strConnStr as String = "DATABASE=sport;SERVER=XXXXX;User Id=XXXXX;Password=XXXXXX;Allow Zero Datetime=True;"
Dim objConn as New MYSqlConnection(strConnStr)
objConn.Open()
'2. Create a command object for the query
Const strSQL as String = "SELECT * FROM resultater"
Dim objCmd as New MYSqlCommand(strSQL, objConn)
'3. Create/Populate the DataReader
Dim objDR as MYSqlDataReader
objDR = objCmd.ExecuteReader()
dgProducts.DataSource = objDR
dgProducts.DataBind()
End Sub
Sub dgProducts_Edit(sender As Object, e As DataGridCommandEventArgs)
dgProducts.EditItemIndex = e.Item.ItemIndex
BindData()
End Sub
Sub dgProducts_Cancel(sender As Object, e As DataGridCommandEventArgs)
dgProducts.EditItemIndex = -1
BindData()
End Sub
Sub dgProducts_Update(sender As Object, e As DataGridCommandEventArgs)
'Read in the values of the updated row
Dim ID as Integer = e.Item.Cells(1).Text
Dim hold1 as String = CType(e.Item.Cells(2).Controls(0), TextBox).Text
Dim hold2 as String = CType(e.Item.Cells(3).Controls(0), TextBox).Text
Dim stilling as String = CType(e.Item.Cells(4).Controls(0), TextBox).Text
'Construct the SQL statement using Parameters
Dim strSQL as String = _
"UPDATE resultater SET hold1 = @hold1, " & _
"hold2 = @hold2, stilling = @stilling " & _
"WHERE ID = @ID"
Const strConnString as String = _
"DATABASE=sport;SERVER=XXXXX;User Id=XXXXX;Password=XXXXX;Allow Zero Datetime=True;"
Dim objConn as New MYSqlConnection(strConnString)
objConn.Open()
Dim myCommand as MYSqlCommand = new MYSqlCommand(strSQL, objConn)
myCommand.CommandType = CommandType.Text
' Add Parameters to the SQL query
Dim parameterProdName as MYSqlParameter = _
new MYSqlParameter("@hold1", MySqlDbType.VarChar)
parameterProdName.Value = hold1
myCommand.Parameters.Add(parameterProdName)
Dim parameterUnitPrice as MYSqlParameter = _
new MYSqlParameter("@hold2", MySqlDbType.VarChar)
parameterUnitPrice.Value = hold2
myCommand.Parameters.Add(parameterUnitPrice)
Dim parameterProdDesc as MYSqlParameter = _
new MYSqlParameter("@stilling", MySqlDbType.VarChar)
parameterProdDesc.Value = stilling
myCommand.Parameters.Add(parameterProdDesc)
Dim parameterProdID as MYSqlParameter = _
new MYSqlParameter("@ID", MYSqlDbType.Int32)
parameterProdID.Value = ID
myCommand.Parameters.Add(parameterProdID)
myCommand.ExecuteNonQuery() 'Execute the UPDATE query
objConn.Close() 'Close the connection
'Finally, set the EditItemIndex to -1 and rebind the DataGrid
dgProducts.EditItemIndex = -1
BindData()
End Sub
</script>
</HEAD>
<body>
<form runat="server">
<asp:DataGrid id="dgProducts" runat="server" AutoGenerateColumns="False" CellPadding="4" HeaderStyle-BackColor="Black"
HeaderStyle-ForeColor="White" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Font-Bold="True"
OnEditCommand="dgProducts_Edit" EditItemStyle-BackColor="#eeeeee" OnUpdateCommand="dgProducts_Update"
OnCancelCommand="dgProducts_Cancel">
<EditItemStyle BackColor="#EEEEEE"></EditItemStyle>
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="White" BackColor="Black"></HeaderStyle>
<Columns>
<asp:EditCommandColumn ButtonType="PushButton" UpdateText="Update" CancelText="Cancel" EditText="Edit Info"></asp:EditCommandColumn>
<asp:BoundColumn DataField="ID" ReadOnly="True" HeaderText="ID"></asp:BoundColumn>
<asp:BoundColumn DataField="hold1" HeaderText="Hold 1">
<ItemStyle HorizontalAlign="Right"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="hold2" HeaderText="Hold 2"></asp:BoundColumn>
<asp:BoundColumn DataField="stilling" HeaderText="Stilling"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
</form>
</body>
</HTML>