You need to have write permission for the database file/folder.
--
Alphonse Giambrone
Email: a-giam at customdatasolutions dot us
"Pravin A. Sable" <pravin@dotnet.itags.org.ccs.neu.edu> wrote in message
news:%23tUTTnULEHA.556@dotnet.itags.org.TK2MSFTNGP10.phx.gbl...
> Dear All,
>
> Please find the source code for this error in attachment.
> I am trying to execute following code
> Sub SubmitBtn_Click(ByVal Sender As Object, ByVal E As EventArgs)
> Dim DBConn As OleDbConnection
> Dim DBInsert As New OleDbCommand
> DBConn = New OleDbConnection("PROVIDER=" _
> & "Microsoft.Jet.OLEDB.4.0;" _
> & "DATA SOURCE=" _
> & Server.MapPath("Emps.mdb;"))
> DBInsert.CommandText = "Insert Into Employees " _
> & "(LastName, FirstName, PhoneNumber, EmailAddress, " _
> & "Notes, DepartmentID) values (" _
> & "'" & Replace(txtLastName.Text, "'", "''") & "', " _
> & "'" & Replace(txtFirstName.Text, "'", "''") & "', " _
> & "'" & Replace(txtPhoneNumber.Text, "'", "''") & "', " _
> & "'" & Replace(txtEmailAddress.Text, "'", "''") _
> & "', " _
> & "'" & Replace(txtNotes.Text, "'", "''") & "', " _
> & ddlDepartments.SelectedItem.Value & ")"
> DBInsert.Connection = DBConn
> DBInsert.Connection.Open()
> DBInsert.ExecuteNonQuery()
> Response.Redirect("./index.aspx")
> End Sub
> while executing following
> DBInsert.ExecuteNonQuery()
> query is
> Insert Into Employees (LastName, FirstName, PhoneNumber, EmailAddress,
> Notes, DepartmentID) values ('asdfas', 'asdf', 'asdfasfdasdf', 'asf',
> 'asdfasdf', 3)
>
> I get an error saying as follows, Whats happening... it's new to me..
> more to that its an example striaght copy paste from one book.
>
> Operation must use an updateable query.
> Description: An unhandled exception occurred during the execution of the
> current web request. Please review the stack trace for more information
> about the error and where it originated in the code.
> Exception Details: System.Data.OleDb.OleDbException: Operation must use
> an updateable query.
> Source Error:
>
> Line 58: DBInsert.Connection = DBConn
> Line 59: DBInsert.Connection.Open()
> Line 60: DBInsert.ExecuteNonQuery()
> Line 61: Response.Redirect("./index.aspx")
> Line 62: End Sub
>
> Source File: c:\inetpub\wwwroot\WebApplication1\add1.aspx.vb Line: 60
> Stack Trace:
>
> [OleDbException (0x80004005): Operation must use an updateable query.]
> System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(Int32
hr)
>
System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS
> dbParams, Object& executeResult)
> System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object&
executeResult)
> System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior
> behavior, Object& executeResult)
> System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior
> behavior, String method)
> System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
> WebApplication1.add1.SubmitBtn_Click(Object Sender, EventArgs E) in
> c:\inetpub\wwwroot\WebApplication1\add1.aspx.vb:60
> System.Web.UI.WebControls.Button.OnClick(EventArgs e)
>
System.Web.UI.WebControls.Button.System.Web.UI.IPo stBackEventHandler.RaisePo
stBackEvent(String
> eventArgument)
> System.Web.UI.Page.RaisePostBackEvent(IPostBackEve ntHandler
> sourceControl, String eventArgument)
> System.Web.UI.Page.RaisePostBackEvent(NameValueCol lection postData)
> System.Web.UI.Page.ProcessRequestMain()
>I gave administrative privileges for ASP.net user, the folder is in
Inetpub/wwwroot/web application1. Folder remains read only. but database
has permission to change. The problem comes between these lines
DBInsert.Connection.Open()
'Above statement makes the database read only.
DBInsert.ExecuteNonQuery()
'Above statemet gives an error
Alphonse Giambrone wrote:
> I just ran into this one a few days ago.
> You need to have write permission for the database file/folder.
>Please find the source code for this error in attachment.
>>
>> I am trying to execute following code
>>
>> Sub SubmitBtn_Click(ByVal Sender As Object, ByVal E As EventArgs)
>> Dim DBConn As OleDbConnection
>> Dim DBInsert As New OleDbCommand
>> DBConn = New OleDbConnection("PROVIDER=" _
>> & "Microsoft.Jet.OLEDB.4.0;" _
>> & "DATA SOURCE=" _
>> & Server.MapPath("Emps.mdb;"))
>> DBInsert.CommandText = "Insert Into Employees " _
>> & "(LastName, FirstName, PhoneNumber, EmailAddress, " _
>> & "Notes, DepartmentID) values (" _
>> & "'" & Replace(txtLastName.Text, "'", "''") & "', " _
>> & "'" & Replace(txtFirstName.Text, "'", "''") & "', " _
>> & "'" & Replace(txtPhoneNumber.Text, "'", "''") & "', " _
>> & "'" & Replace(txtEmailAddress.Text, "'", "''") _
>> & "', " _
>> & "'" & Replace(txtNotes.Text, "'", "''") & "', " _
>> & ddlDepartments.SelectedItem.Value & ")"
>> DBInsert.Connection = DBConn
>> DBInsert.Connection.Open()
>> DBInsert.ExecuteNonQuery()
>> Response.Redirect("./index.aspx")
>> End Sub
>>
>> while executing following
>> DBInsert.ExecuteNonQuery()
>>
>> query is
>> Insert Into Employees (LastName, FirstName, PhoneNumber, EmailAddress,
>> Notes, DepartmentID) values ('asdfas', 'asdf', 'asdfasfdasdf', 'asf',
>> 'asdfasdf', 3)
>>
>>
>> I get an error saying as follows, Whats happening... it's new to me..
>> more to that its an example striaght copy paste from one book.
>>
>>
>>
>> Operation must use an updateable query.
>> Description: An unhandled exception occurred during the execution of the
>> current web request. Please review the stack trace for more information
>> about the error and where it originated in the code.
>>
>> Exception Details: System.Data.OleDb.OleDbException: Operation must use
>> an updateable query.
>>
>> Source Error:
>>
>>
>> Line 58: DBInsert.Connection = DBConn
>> Line 59: DBInsert.Connection.Open()
>> Line 60: DBInsert.ExecuteNonQuery()
>> Line 61: Response.Redirect("./index.aspx")
>> Line 62: End Sub
>>
>>
>> Source File: c:\inetpub\wwwroot\WebApplication1\add1.aspx.vb Line: 60
>>
>> Stack Trace:
>>
>>
>> [OleDbException (0x80004005): Operation must use an updateable query.]
>> System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(Int32
hr)
>>
>
System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS
>> dbParams, Object& executeResult)
>> System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object&
executeResult)
>> System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior
>> behavior, Object& executeResult)
>> System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior
>> behavior, String method)
>> System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
>> WebApplication1.add1.SubmitBtn_Click(Object Sender, EventArgs E) in
>> c:\inetpub\wwwroot\WebApplication1\add1.aspx.vb:60
>> System.Web.UI.WebControls.Button.OnClick(EventArgs e)
>>
>
System.Web.UI.WebControls.Button.System.Web.UI.IPo stBackEventHandler.RaisePo
stBackEvent(String
>> eventArgument)
>> System.Web.UI.Page.RaisePostBackEvent(IPostBackEve ntHandler
>> sourceControl, String eventArgument)
>> System.Web.UI.Page.RaisePostBackEvent(NameValueCol lection postData)
>> System.Web.UI.Page.ProcessRequestMain()
>>
>>
>>
>>
You also need to set the permission via Windows Explorer not just IIS.
--
Alphonse Giambrone
Email: a-giam at customdatasolutions dot us
"Pravin A. Sable" <pravin@.ccs.neu.edu> wrote in message
news:%237qL6FVLEHA.4052@.TK2MSFTNGP11.phx.gbl...
> I gave administrative privileges for ASP.net user, the folder is in
> Inetpub/wwwroot/web application1. Folder remains read only. but database
> has permission to change. The problem comes between these lines
> DBInsert.Connection.Open()
> 'Above statement makes the database read only.
> DBInsert.ExecuteNonQuery()
> 'Above statemet gives an error
> Alphonse Giambrone wrote:
> > I just ran into this one a few days ago.
> > You need to have write permission for the database file/folder.
> >Please find the source code for this error in attachment.
> >>
> >> I am trying to execute following code
> >>
> >> Sub SubmitBtn_Click(ByVal Sender As Object, ByVal E As EventArgs)
> >> Dim DBConn As OleDbConnection
> >> Dim DBInsert As New OleDbCommand
> >> DBConn = New OleDbConnection("PROVIDER=" _
> >> & "Microsoft.Jet.OLEDB.4.0;" _
> >> & "DATA SOURCE=" _
> >> & Server.MapPath("Emps.mdb;"))
> >> DBInsert.CommandText = "Insert Into Employees " _
> >> & "(LastName, FirstName, PhoneNumber, EmailAddress, " _
> >> & "Notes, DepartmentID) values (" _
> >> & "'" & Replace(txtLastName.Text, "'", "''") & "', " _
> >> & "'" & Replace(txtFirstName.Text, "'", "''") & "', " _
> >> & "'" & Replace(txtPhoneNumber.Text, "'", "''") & "', " _
> >> & "'" & Replace(txtEmailAddress.Text, "'", "''") _
> >> & "', " _
> >> & "'" & Replace(txtNotes.Text, "'", "''") & "', " _
> >> & ddlDepartments.SelectedItem.Value & ")"
> >> DBInsert.Connection = DBConn
> >> DBInsert.Connection.Open()
> >> DBInsert.ExecuteNonQuery()
> >> Response.Redirect("./index.aspx")
> >> End Sub
> >>
> >> while executing following
> >> DBInsert.ExecuteNonQuery()
> >>
> >> query is
> >> Insert Into Employees (LastName, FirstName, PhoneNumber, EmailAddress,
> >> Notes, DepartmentID) values ('asdfas', 'asdf', 'asdfasfdasdf', 'asf',
> >> 'asdfasdf', 3)
> >>
> >>
> >> I get an error saying as follows, Whats happening... it's new to me..
> >> more to that its an example striaght copy paste from one book.
> >>
> >>
> >>
> >> Operation must use an updateable query.
> >> Description: An unhandled exception occurred during the execution of
the
> >> current web request. Please review the stack trace for more
information
> >> about the error and where it originated in the code.
> >>
> >> Exception Details: System.Data.OleDb.OleDbException: Operation must
use
> >> an updateable query.
> >>
> >> Source Error:
> >>
> >>
> >> Line 58: DBInsert.Connection = DBConn
> >> Line 59: DBInsert.Connection.Open()
> >> Line 60: DBInsert.ExecuteNonQuery()
> >> Line 61: Response.Redirect("./index.aspx")
> >> Line 62: End Sub
> >>
> >>
> >> Source File: c:\inetpub\wwwroot\WebApplication1\add1.aspx.vb Line:
60
> >>
> >> Stack Trace:
> >>
> >>
> >> [OleDbException (0x80004005): Operation must use an updateable query.]
> >>
System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(Int32
> hr)
> >>
> >>
>
System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS
> >> dbParams, Object& executeResult)
> >> System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object&
> executeResult)
> >> System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior
> >> behavior, Object& executeResult)
> >>
System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior
> >> behavior, String method)
> >> System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
> >> WebApplication1.add1.SubmitBtn_Click(Object Sender, EventArgs E)
in
> >> c:\inetpub\wwwroot\WebApplication1\add1.aspx.vb:60
> >> System.Web.UI.WebControls.Button.OnClick(EventArgs e)
> >>
> >>
>
System.Web.UI.WebControls.Button.System.Web.UI.IPo stBackEventHandler.RaisePo
> stBackEvent(String
> >> eventArgument)
> >> System.Web.UI.Page.RaisePostBackEvent(IPostBackEve ntHandler
> >> sourceControl, String eventArgument)
> >> System.Web.UI.Page.RaisePostBackEvent(NameValueCol lection
postData)
> >> System.Web.UI.Page.ProcessRequestMain()
> >>
> >>
> >>
> >
I tried seeting up permission through windows explorer for folder. it
reverts back to read only. but I am not sure that is the issue, when
connection is open, the database becomes read-only. May be database is
opened in read-only mode and it is locked hence no query can be
executed. Still I am stuck any help is appreciated.
Alphonse Giambrone wrote:
> You also need to set the permission via Windows Explorer not just IIS.
0 comments:
Post a Comment