Ask a Question related to ASP.NET General, Design and Development.
-
Russ Green #1
Update from datagrid
I am currently learning asp.net (vb) with Web Matrix. I am building an
intranet page that will have an editable datagrid on it. I have got the
datagrid to populate OK but I cannot get the Update method to work
correctly.
I click on edit and and the non-readonly field become editable as in
[url]http://www.russgreen.net/software/newsgroupimages/screenshot1.gif[/url]
The update button does nothing. See
[url]http://www.russgreen.net/software/newsgroupimages/screenshot2.gif[/url]
Error page
[url]http://www.russgreen.net/software/newsgroupimages/SyntaxerrorinUPDATEstateme[/url]
nt_.htm
..aspx page
[url]http://www.russgreen.net/software/newsgroupimages/db_project_list_new.aspx[/url]
Can someone please help explain this please?
Sub DataGrid_Update(s As Object, e As DataGridCommandEventArgs )
'create edit text boxes
Dim txtName As textbox = E.Item.cells(2).Controls(0)
Dim txtStatus As textbox = E.Item.cells(3).Controls(0)
Dim txtAction As textbox = E.Item.cells(4).Controls(0)
Dim txtStaff As textbox = E.Item.cells(5).Controls(0)
'update SQL
Dim strUpdateSql As String ="UPDATE Projects SET" & _
" Name =@Name, Status =@Status, Action = @Action, Staff = @Staff" &
_
" WHERE ProjectID = @ProjectID"
'connection stuff
Dim conn As OleDbConnection = New OleDbConnection(strConn)
conn.Open()
'command Object to Execute the SQL
Dim cmd As OleDbCommand = New OleDbCommand(strUpdateSql, conn)
cmd.Parameters.Add(New OleDbParameter("@Name", txtName.text))
cmd.Parameters.Add(New OleDbParameter("@Status", txtStatus.text))
cmd.Parameters.Add(New OleDbParameter("@Action", txtAction.text))
cmd.Parameters.Add(New OleDbParameter("@Staff", txtStaff.text))
cmd.Parameters.Add(New OleDbParameter("@ProjectID",
CType(e.Item.Cells(0).Text, Long)))
cmd.ExecuteNonQuery()
'do housekeeping
DataGrid1.EditItemIndex = -1
conn.close
'rebind
BindData()
End Sub
Russ Green Guest
-
How to add a Dropdown list to a datagrid at runtime (dynamic) without using template columns in ASP.NET and still have the ability to us the datagrid Update event.
How to add a Dropdown list to a datagrid at runtime (dynamic) without using template columns in ASP.NET and still have the ability to us the... -
DataGrid ItemStyle is a textbox and doesn't update the datagrid datasource
I have a datagrid with two columns, the first a normal bound column, the second is a template column created from a bound column. For the... -
DataGrid easy Edit-Update using ADO.NET/DataGrid functionality C#?
Hi, so I am using built in Edit, Delete, Update i.e. OnEditCommand="DataGrid1_Edit" OnUpdateCommand="DataGrid1_Update" with handler question below... -
Can't update in DataGrid
I have looked at all the examples and written a datagrid page with update features, but the update doesn't work. Basically, it never executes the... -
To all Gurus: How can I edit/update a DataGrid in a DataGrid (nested DataGrid)? Possible?
Hello, I am searching the whole Internet for a good example how to edit/update a DataGrid in a DataGrid (nested DataGrid). I know how to... -
John Toop #2
Re: Update from datagrid
Hi Russ,
You need to use the last parameter @product ID
cmd.Parameters.Add(New OleDbParameter("@ProjectID",
DataGrid1.DataKeys(e.Item.ItemIndex))
It's interesting your sub is
DataGrid_Update but the ID of the object seems to be DataGrid1. I would have
expected DataGrid1_UpdateCommand but I suppose that could just be the way
that datamatrix wires it up. Then again... perhaps I'm wrong.
"Russ Green" <russgreen249@hotmail.com> wrote in message
news:ew3e7tuTDHA.1740@TK2MSFTNGP12.phx.gbl...[url]http://www.russgreen.net/software/newsgroupimages/SyntaxerrorinUPDATEstateme[/url]> I am currently learning asp.net (vb) with Web Matrix. I am building an
> intranet page that will have an editable datagrid on it. I have got the
> datagrid to populate OK but I cannot get the Update method to work
> correctly.
>
> I click on edit and and the non-readonly field become editable as in
> [url]http://www.russgreen.net/software/newsgroupimages/screenshot1.gif[/url]
> The update button does nothing. See
> [url]http://www.russgreen.net/software/newsgroupimages/screenshot2.gif[/url]
>
> Error page
>&> nt_.htm
> .aspx page
> [url]http://www.russgreen.net/software/newsgroupimages/db_project_list_new.aspx[/url]
>
> Can someone please help explain this please?
>
> Sub DataGrid_Update(s As Object, e As DataGridCommandEventArgs )
> 'create edit text boxes
> Dim txtName As textbox = E.Item.cells(2).Controls(0)
> Dim txtStatus As textbox = E.Item.cells(3).Controls(0)
> Dim txtAction As textbox = E.Item.cells(4).Controls(0)
> Dim txtStaff As textbox = E.Item.cells(5).Controls(0)
>
> 'update SQL
> Dim strUpdateSql As String ="UPDATE Projects SET" & _
> " Name =@Name, Status =@Status, Action = @Action, Staff = @Staff"> _
> " WHERE ProjectID = @ProjectID"
>
> 'connection stuff
> Dim conn As OleDbConnection = New OleDbConnection(strConn)
> conn.Open()
>
> 'command Object to Execute the SQL
> Dim cmd As OleDbCommand = New OleDbCommand(strUpdateSql, conn)
> cmd.Parameters.Add(New OleDbParameter("@Name", txtName.text))
> cmd.Parameters.Add(New OleDbParameter("@Status", txtStatus.text))
> cmd.Parameters.Add(New OleDbParameter("@Action", txtAction.text))
> cmd.Parameters.Add(New OleDbParameter("@Staff", txtStaff.text))
> cmd.Parameters.Add(New OleDbParameter("@ProjectID",
> CType(e.Item.Cells(0).Text, Long)))
> cmd.ExecuteNonQuery()
>
> 'do housekeeping
> DataGrid1.EditItemIndex = -1
> conn.close
>
> 'rebind
> BindData()
> End Sub
>
>
John Toop Guest
-
Russ Green #3
Re: Update from datagrid
OK
I sorted it. Well almost. The attached page works on the Webmatrix testing
server but not on IIS. Under IIS the page render OK but UPDATE generate the
following exception: -
System.Data.OleDb.OleDbException: Operation must use an updateable query. at
System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(Int32 hr) at
System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS
dbParams, Object& executeResult) at
System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object& executeResult) at
System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior behavior,
Object& executeResult) at
System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior
behavior, String method) at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
at ASP.db_project_list_aspx.DataGrid_Update(Object s,
DataGridCommandEventArgs e) in D:\Web Design
Work\SALT_INTRANET\asp_net\db_project_list.aspx:li ne 68
Any Ideas?
Russ
"John Toop" <jtoop@rogers.com> wrote in message
news:e$vpnGzTDHA.1724@TK2MSFTNGP10.phx.gbl...have> Hi Russ,
>
> You need to use the last parameter @product ID
>
> cmd.Parameters.Add(New OleDbParameter("@ProjectID",
> DataGrid1.DataKeys(e.Item.ItemIndex))
>
> It's interesting your sub is
>
> DataGrid_Update but the ID of the object seems to be DataGrid1. I would[url]http://www.russgreen.net/software/newsgroupimages/SyntaxerrorinUPDATEstateme[/url]> expected DataGrid1_UpdateCommand but I suppose that could just be the way
> that datamatrix wires it up. Then again... perhaps I'm wrong.
>
> "Russ Green" <russgreen249@hotmail.com> wrote in message
> news:ew3e7tuTDHA.1740@TK2MSFTNGP12.phx.gbl...>> > I am currently learning asp.net (vb) with Web Matrix. I am building an
> > intranet page that will have an editable datagrid on it. I have got the
> > datagrid to populate OK but I cannot get the Update method to work
> > correctly.
> >
> > I click on edit and and the non-readonly field become editable as in
> > [url]http://www.russgreen.net/software/newsgroupimages/screenshot1.gif[/url]
> > The update button does nothing. See
> > [url]http://www.russgreen.net/software/newsgroupimages/screenshot2.gif[/url]
> >
> > Error page
> >[url]http://www.russgreen.net/software/newsgroupimages/db_project_list_new.aspx[/url]> > nt_.htm
> > .aspx page
> >@Staff"> >
> > Can someone please help explain this please?
> >
> > Sub DataGrid_Update(s As Object, e As DataGridCommandEventArgs )
> > 'create edit text boxes
> > Dim txtName As textbox = E.Item.cells(2).Controls(0)
> > Dim txtStatus As textbox = E.Item.cells(3).Controls(0)
> > Dim txtAction As textbox = E.Item.cells(4).Controls(0)
> > Dim txtStaff As textbox = E.Item.cells(5).Controls(0)
> >
> > 'update SQL
> > Dim strUpdateSql As String ="UPDATE Projects SET" & _
> > " Name =@Name, Status =@Status, Action = @Action, Staff => &>> > _
> > " WHERE ProjectID = @ProjectID"
> >
> > 'connection stuff
> > Dim conn As OleDbConnection = New OleDbConnection(strConn)
> > conn.Open()
> >
> > 'command Object to Execute the SQL
> > Dim cmd As OleDbCommand = New OleDbCommand(strUpdateSql, conn)
> > cmd.Parameters.Add(New OleDbParameter("@Name", txtName.text))
> > cmd.Parameters.Add(New OleDbParameter("@Status", txtStatus.text))
> > cmd.Parameters.Add(New OleDbParameter("@Action", txtAction.text))
> > cmd.Parameters.Add(New OleDbParameter("@Staff", txtStaff.text))
> > cmd.Parameters.Add(New OleDbParameter("@ProjectID",
> > CType(e.Item.Cells(0).Text, Long)))
> > cmd.ExecuteNonQuery()
> >
> > 'do housekeeping
> > DataGrid1.EditItemIndex = -1
> > conn.close
> >
> > 'rebind
> > BindData()
> > End Sub
> >
> >
>
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system ([url]http://www.grisoft.com[/url]).
Version: 6.0.500 / Virus Database: 298 - Release Date: 10/07/2003
Russ Green Guest
-
Rajeev Soni #4
Re: Update from datagrid
Hi Russ,
you are getting this error "Operation must use an updateable query" may for two reasons...
1. Folder where you are having MDB file doesnot have permission for your asp.net applications.
2. Give the permission for MDB file.
Rajeev
"Russ Green" <russgreen249@hotmail.com> wrote in message news:ul4buYIUDHA.2308@TK2MSFTNGP12.phx.gbl...> OK
>
> I sorted it. Well almost. The attached page works on the Webmatrix testing
> server but not on IIS. Under IIS the page render OK but UPDATE generate the
> following exception: -
>
> System.Data.OleDb.OleDbException: Operation must use an updateable query. at
> System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(Int32 hr) at
> System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS
> dbParams, Object& executeResult) at
> System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object& executeResult) at
> System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior behavior,
> Object& executeResult) at
> System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior
> behavior, String method) at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
> at ASP.db_project_list_aspx.DataGrid_Update(Object s,
> DataGridCommandEventArgs e) in D:\Web Design
> Work\SALT_INTRANET\asp_net\db_project_list.aspx:li ne 68
>
> Any Ideas?
>
> Russ
>
> "John Toop" <jtoop@rogers.com> wrote in message
> news:e$vpnGzTDHA.1724@TK2MSFTNGP10.phx.gbl...> have> > Hi Russ,
> >
> > You need to use the last parameter @product ID
> >
> > cmd.Parameters.Add(New OleDbParameter("@ProjectID",
> > DataGrid1.DataKeys(e.Item.ItemIndex))
> >
> > It's interesting your sub is
> >
> > DataGrid_Update but the ID of the object seems to be DataGrid1. I would> [url]http://www.russgreen.net/software/newsgroupimages/SyntaxerrorinUPDATEstateme[/url]> > expected DataGrid1_UpdateCommand but I suppose that could just be the way
> > that datamatrix wires it up. Then again... perhaps I'm wrong.
> >
> > "Russ Green" <russgreen249@hotmail.com> wrote in message
> > news:ew3e7tuTDHA.1740@TK2MSFTNGP12.phx.gbl...> >> > > I am currently learning asp.net (vb) with Web Matrix. I am building an
> > > intranet page that will have an editable datagrid on it. I have got the
> > > datagrid to populate OK but I cannot get the Update method to work
> > > correctly.
> > >
> > > I click on edit and and the non-readonly field become editable as in
> > > [url]http://www.russgreen.net/software/newsgroupimages/screenshot1.gif[/url]
> > > The update button does nothing. See
> > > [url]http://www.russgreen.net/software/newsgroupimages/screenshot2.gif[/url]
> > >
> > > Error page
> > >> [url]http://www.russgreen.net/software/newsgroupimages/db_project_list_new.aspx[/url]> > > nt_.htm
> > > .aspx page
> > >> @Staff"> > >
> > > Can someone please help explain this please?
> > >
> > > Sub DataGrid_Update(s As Object, e As DataGridCommandEventArgs )
> > > 'create edit text boxes
> > > Dim txtName As textbox = E.Item.cells(2).Controls(0)
> > > Dim txtStatus As textbox = E.Item.cells(3).Controls(0)
> > > Dim txtAction As textbox = E.Item.cells(4).Controls(0)
> > > Dim txtStaff As textbox = E.Item.cells(5).Controls(0)
> > >
> > > 'update SQL
> > > Dim strUpdateSql As String ="UPDATE Projects SET" & _
> > > " Name =@Name, Status =@Status, Action = @Action, Staff =>> > &> >> > > _
> > > " WHERE ProjectID = @ProjectID"
> > >
> > > 'connection stuff
> > > Dim conn As OleDbConnection = New OleDbConnection(strConn)
> > > conn.Open()
> > >
> > > 'command Object to Execute the SQL
> > > Dim cmd As OleDbCommand = New OleDbCommand(strUpdateSql, conn)
> > > cmd.Parameters.Add(New OleDbParameter("@Name", txtName.text))
> > > cmd.Parameters.Add(New OleDbParameter("@Status", txtStatus.text))
> > > cmd.Parameters.Add(New OleDbParameter("@Action", txtAction.text))
> > > cmd.Parameters.Add(New OleDbParameter("@Staff", txtStaff.text))
> > > cmd.Parameters.Add(New OleDbParameter("@ProjectID",
> > > CType(e.Item.Cells(0).Text, Long)))
> > > cmd.ExecuteNonQuery()
> > >
> > > 'do housekeeping
> > > DataGrid1.EditItemIndex = -1
> > > conn.close
> > >
> > > 'rebind
> > > BindData()
> > > End Sub
> > >
> > >
> >
>
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system ([url]http://www.grisoft.com[/url]).
> Version: 6.0.500 / Virus Database: 298 - Release Date: 10/07/2003
>
>
>Rajeev Soni Guest



Reply With Quote

