'Why does Application close after executing a SQL Server CE update command?
My application closes after I execute an update
command via oledb connection
I also use DataAdapter
but it closes without any error too, I can execute insert, delete and select command with out problem.
My DataAdapter
commands
dta = New OleDb.OleDbDataAdapter("select * from [information]", con)
dta.UpdateCommand = New OleDb.OleDbCommand("UPDATE [information] SET [needfile]=@needfile,[nofile]=@nofile," &
"[subscription]=@subscription,[id]=@id,[name]=@name,[address]=@address,[tel]=@tel,[phone]=@phone" &
" WHERE [idn]=@idn", con)
dta.InsertCommand = New OleDb.OleDbCommand("INSERT INTO [information]([needfile],[nofile],[subscription],[id],[name],[address],[tel],[phone]) " &
"VALUES (@id,@name ,@address ,@tel ,@phone)", con)
dta.DeleteCommand = New OleDb.OleDbCommand("DELETE FROM [information] WHERE [idn] = @idn", con)
i try this
If con.State = ConnectionState.Closed Then con.Open()
dts = DataGridView1.DataSource
dta.UpdateCommand.Parameters.Clear()
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@needfile", dts.Tables(0).Rows(e.RowIndex)(1)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@nofile", dts.Tables(0).Rows(e.RowIndex)(2)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@subscription", dts.Tables(0).Rows(e.RowIndex)(3)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@id", dts.Tables(0).Rows(e.RowIndex)(4)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@name", dts.Tables(0).Rows(e.RowIndex)(5)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@address", dts.Tables(0).Rows(e.RowIndex)(6)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@tel", dts.Tables(0).Rows(e.RowIndex)(7)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@phone", dts.Tables(0).Rows(e.RowIndex)(8)))
dta.UpdateCommand.Parameters.Add(New OleDb.OleDbParameter("@idn", dts.Tables(0).Rows(e.RowIndex)(0)))
dta.Update(dts)
dts.AcceptChanges()
or
...
dta.UpdateCommand.Prepare()
dta.UpdateCommand.ExecuteNonQuery()
or
...
UpdateCmd.ExecuteNonQuery()
I also tried dta.UpdateCommand.ExecuteNonQuery()
and it works the same, my program exits!
Even when I do this manually with OleDbCommand
, my program exits without any error.
Thanks.
Solution 1:[1]
Using .NET OleDb with SQL Compact from .NET is not supported, please use the ADO.NET provider instead (System.Data..SqlServerCe)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | ErikEJ |