ERRO AO GRAVAR DADOS
Boa tarde,
Quando tento salvar os dados digitados em meu banco de dados me retorna a seguinte mensagem:
DATA TOO LONG FOR COLUMN AT ROW 1
Abaixo está a estrutura do banco de dados e a instrução de salvamento em emu programa.
Id -> int 11
Marca_Rel -> VarChar 40
Mode_Rel -> VarChar 40
instrução no programa para salvamento de dados:
Private Sub Button7_Click(sender As System.Object, e As System.EventArgs) Handles Button7.Click
[ô]
Try
Dim Conn As New MySqlConnection(StrServCli01)
Conn.Open()
[ô]
Dim Campos As String
Dim Valores As String
[ô]
Campos = [Ô](Marca_Rel,Mode_Rel)[Ô]
Valores = [Ô](@Marca_Rel,@Mode_Rel)[Ô]
Dim rSQL As String = [Ô]INSERT INTO relogios[Ô] & Campos & [Ô] VALUES [Ô] & Valores
Dim Cmd As New MySqlCommand(rSQL, Conn)
Cmd.Parameters.AddWithValue([Ô]@Marca_Rel[Ô], IIf(Me.Txt_MarRel.Text <> [Ô][Ô], Me.Txt_MarRel, vbNullString))
Cmd.Parameters.AddWithValue([Ô]@Mode_Rel[Ô], IIf(Me.Txt_ModRel.Text <> [Ô][Ô], Me.Txt_ModRel.Text, vbNullString))
Cmd.ExecuteNonQuery() [ô] -. o erro se dá ao passar por esta instrução
Conn.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Se alguém souber como acertar este erro, ficarei grato.
Quando tento salvar os dados digitados em meu banco de dados me retorna a seguinte mensagem:
DATA TOO LONG FOR COLUMN AT ROW 1
Abaixo está a estrutura do banco de dados e a instrução de salvamento em emu programa.
Id -> int 11
Marca_Rel -> VarChar 40
Mode_Rel -> VarChar 40
instrução no programa para salvamento de dados:
Private Sub Button7_Click(sender As System.Object, e As System.EventArgs) Handles Button7.Click
[ô]
Try
Dim Conn As New MySqlConnection(StrServCli01)
Conn.Open()
[ô]
Dim Campos As String
Dim Valores As String
[ô]
Campos = [Ô](Marca_Rel,Mode_Rel)[Ô]
Valores = [Ô](@Marca_Rel,@Mode_Rel)[Ô]
Dim rSQL As String = [Ô]INSERT INTO relogios[Ô] & Campos & [Ô] VALUES [Ô] & Valores
Dim Cmd As New MySqlCommand(rSQL, Conn)
Cmd.Parameters.AddWithValue([Ô]@Marca_Rel[Ô], IIf(Me.Txt_MarRel.Text <> [Ô][Ô], Me.Txt_MarRel, vbNullString))
Cmd.Parameters.AddWithValue([Ô]@Mode_Rel[Ô], IIf(Me.Txt_ModRel.Text <> [Ô][Ô], Me.Txt_ModRel.Text, vbNullString))
Cmd.ExecuteNonQuery() [ô] -. o erro se dá ao passar por esta instrução
Conn.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Se alguém souber como acertar este erro, ficarei grato.
Colega,
Um dos seus conteúdos para campos tem mais de 40 caracteres, e os campos tem tamanho fixo em 40.
Experimente trocar...
por
Um dos seus conteúdos para campos tem mais de 40 caracteres, e os campos tem tamanho fixo em 40.
Experimente trocar...
Cmd.Parameters.AddWithValue([Ô]@Marca_Rel[Ô], IIf(Me.Txt_MarRel.Text <> [Ô][Ô], Me.Txt_MarRel, vbNullString))
Cmd.Parameters.AddWithValue([Ô]@Mode_Rel[Ô], IIf(Me.Txt_ModRel.Text <> [Ô][Ô], Me.Txt_ModRel.Text, vbNullString))
por
Cmd.Parameters.AddWithValue([Ô]@Marca_Rel[Ô], IIf(Me.Txt_MarRel.Text <> [Ô][Ô], left(Me.Txt_MarRel.Text,40), vbNullString))
Cmd.Parameters.AddWithValue([Ô]@Mode_Rel[Ô], IIf(Me.Txt_ModRel.Text <> [Ô][Ô], left(Me.Txt_ModRel.Text,40), vbNullString))
ZEUZEBIO3, o LEFT que voce me indicou não deu certo, mas coloque o TRIM e ai deu certo.
Agradeço a dica.
Agradeço a dica.
Tópico encerrado , respostas não são mais permitidas