Ir para conteúdo
Fórum Script Brasil
  • 0

Update Datagrid


hpires24

Pergunta

Boas tardes amigos poderiam ajudar-me no seguinte? vou esclarecer minha duvida:

Eu estou tentando fazer a actualizados de dados de uma Datagrid os dados são exibidos no browser mas quando eu faço actualizar os dados da o seguinte erro:

System.InvalidCastException: Object must implement IConvertible. at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at gaapi.unidades.DataGridUnidades_Actualizar(Object Source, DataGridCommandEventArgs E) in c:\inetpub\wwwroot\gaapi\unidades.aspx.vb:line 245

o codigo que eu estou a utilizar para fazer o update da datagrid é:

Public Sub DataGridUnidades_Actualizar(ByVal Source As Object, ByVal E As DataGridCommandEventArgs)

Dim conn As New SqlConnection(ConfigurationSettings.AppSettings("connstring"))

Dim sqlString As String

Dim cmd As SqlCommand

'Dim txtUidade As TextBox = E.Item.Cells(1).Controls(0)

Dim idunidade As Integer

idunidade = DataGridUnidades.DataKeys(E.Item.ItemIndex)

Dim txtdescricao As TextBox = E.Item.Cells(2).Controls(0)

Dim txttelefone As TextBox = E.Item.Cells(3).Controls(0)

Dim txtmail As TextBox = E.Item.Cells(4).Controls(0)

Dim txtmissao As TextBox = E.Item.Cells(5).Controls(0)

Dim txtobjectivo As TextBox = E.Item.Cells(6).Controls(0)

sqlString = "usp_UpdateUnidades"

Try

conn.Open()

cmd = New SqlCommand(sqlString, conn)

cmd.CommandType = CommandType.StoredProcedure

cmd.CommandType = CommandType.Text

cmd.Parameters.Add("@idunid", SqlDbType.Int)

cmd.Parameters("@idunid").Value = idunidade

cmd.Parameters.Add("@descr", SqlDbType.Char)

cmd.Parameters("@descr").Value = txtdescricao

cmd.Parameters.Add("@tele", SqlDbType.Int)

cmd.Parameters("@tele").Value = txttelefone

cmd.Parameters.Add("@mail", SqlDbType.Char)

cmd.Parameters("@mail").Value = txtmail

cmd.Parameters.Add("@miss", SqlDbType.Char)

cmd.Parameters("@miss").Value = txtmissao

cmd.Parameters.Add("@obj", SqlDbType.Char)

cmd.Parameters("@obj").Value = txtobjectivo

'myCommand.Parameters.Add("@param", SqlDbType.Int)

'myCommand.Parameters("@param").Value = E.Item.Cells(1).Text

cmd.ExecuteNonQuery()

'Response.Write(cmd.Parameters.Item(1).Value)

Catch ex As Exception

Response.Write(ex.ToString)

Finally

conn.Close()

End Try

DataGridUnidades.EditItemIndex = -1

If Not IsPostBack Then

Else

BinData()

End If

End Sub

utilizo a seguinte stored procedure:

ALTER procedure dbo.usp_UpdateUnidades

@idunid int,

@descr varchar(255),

@tele int,

@mail varchar(255),

@miss varchar (255),

@obj varchar(255)

as

update gaapi.Unidades set

DESCRICAO_UNIDADE = @descr,

TELEFONE_UNIDADE = @tele,

EMAIL_UNIDADE = @mail,

MISSAO_UNIDADE = @miss,

OBJECTIVO_UNIDADE = @obj

where ID_UNIDADE = @idunid

poderiam ajudar-me se fazem favor?obrigado desde já a todos

O ERRO DA NESTA LINHA cmd.ExecuteNonQuery()

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...