PARAMETROS MYSQL

ALTAIR148 04/05/2012 10:06:52
#401352
Bom dia,

Pessoal, é o seguinte, apos formatar meu PC estou com um problema com o MYSQL, exemplo o meu projeto esta assim em um INSERT

Dim command As New MySql.Data.MySqlClient.MySqlCommand([Ô]INSERT  INTO pagamento (Pagamento_Quantidade, Pagamento_Destino, Pagamento_NF, Pagamento_Referente, Pagamento_Outros, Pagamento_valor_bruto, Pagamento_sub_total, Pagamento_data_pagamento, Pagamento_irf, Pagamento_senat, Pagamento_adiantamento, Pagamento_sub_total_desconto, Pagamento_inss_empresa, Pagamento_inss, Pagamento_total, Pagamento_ID_Beneficiario, Pagamento_ID_Portador) VALUES (@Pagamento_Quantidade, @Pagamento_Destino, @Pagamento_NF, @Pagamento_Referente, @Pagamento_Outros, @Pagamento_valor_bruto, @Pagamento_sub_total, @Pagamento_data_pagamento, @Pagamento_irf, @Pagamento_senat, @Pagamento_adiantamento, @Pagamento_sub_total_desconto, @Pagamento_inss_empresa, @Pagamento_inss, @Pagamento_total, @Pagamento_ID_Beneficiario, @Pagamento_ID_Portador)[Ô], Conexao.GetConexao1)
command.Parameters.AddWithValue([Ô]@Pagamento_Quantidade[Ô], Pagamento.Pagamento_Quantidade)
command.Parameters.AddWithValue([Ô]@Pagamento_Destino[Ô], Pagamento.Pagamento_Destino)
command.Parameters.AddWithValue([Ô]@Pagamento_NF[Ô], Pagamento.Pagamento_NF)
command.Parameters.AddWithValue([Ô]@Pagamento_Referente[Ô], Pagamento.Pagamento_Referente)
command.Parameters.AddWithValue([Ô]@Pagamento_Outros[Ô], Replace(Pagamento.Pagamento_Outros, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_valor_bruto[Ô], Replace(Pagamento.Pagamento_valor_bruto, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_sub_total[Ô], Replace(Pagamento.Pagamento_sub_total, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_data_pagamento[Ô], Pagamento.Pagamento_data_pagamento)
command.Parameters.AddWithValue([Ô]@Pagamento_irf[Ô], Replace(Pagamento.Pagamento_irf, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_senat[Ô], Replace(Pagamento.Pagamento_senat, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_adiantamento[Ô], Replace(Pagamento.Pagamento_adiantamento, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_sub_total_desconto[Ô], Replace(Pagamento.Pagamento_sub_total_desconto, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_inss_empresa[Ô], Replace(Pagamento.Pagamento_inss_empresa, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_inss[Ô], Replace(Pagamento.Pagamento_inss, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_total[Ô], Replace(Pagamento.Pagamento_total, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]@Pagamento_ID_Beneficiario[Ô], Pagamento.Pagamento_ID_Beneficiario)
command.Parameters.AddWithValue([Ô]@Pagamento_ID_Portador[Ô], Pagamento.Pagamento_ID_Portador)
command.ExecuteNonQuery()
command.Dispose()
Conexao.Desconectar1()


Se ficar dessa forma ele não faz o insert, ele fala que os campos não podem ser nulos.... mas no debug todos os campos estão preenchidos.

Agora se eu fizer assim:

 Dim command As New MySql.Data.MySqlClient.MySqlCommand([Ô]INSERT  INTO pagamento (Pagamento_Quantidade, Pagamento_Destino, Pagamento_NF, Pagamento_Referente, Pagamento_Outros, Pagamento_valor_bruto, Pagamento_sub_total, Pagamento_data_pagamento, Pagamento_irf, Pagamento_senat, Pagamento_adiantamento, Pagamento_sub_total_desconto, Pagamento_inss_empresa, Pagamento_inss, Pagamento_total, Pagamento_ID_Beneficiario, Pagamento_ID_Portador) VALUES (?Pagamento_Quantidade, ?Pagamento_Destino, ?Pagamento_NF, ?Pagamento_Referente, ?Pagamento_Outros, ?Pagamento_valor_bruto, ?Pagamento_sub_total, ?Pagamento_data_pagamento, ?Pagamento_irf, ?Pagamento_senat, ?Pagamento_adiantamento, ?Pagamento_sub_total_desconto, ?Pagamento_inss_empresa, ?Pagamento_inss, ?Pagamento_total, ?Pagamento_ID_Beneficiario, ?Pagamento_ID_Portador)[Ô], Conexao.GetConexao1)
command.Parameters.AddWithValue([Ô]?Pagamento_Quantidade[Ô], Pagamento.Pagamento_Quantidade)
command.Parameters.AddWithValue([Ô]?Pagamento_Destino[Ô], Pagamento.Pagamento_Destino)
command.Parameters.AddWithValue([Ô]?Pagamento_NF[Ô], Pagamento.Pagamento_NF)
command.Parameters.AddWithValue([Ô]?Pagamento_Referente[Ô], Pagamento.Pagamento_Referente)
command.Parameters.AddWithValue([Ô]?Pagamento_Outros[Ô], Replace(Pagamento.Pagamento_Outros, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_valor_bruto[Ô], Replace(Pagamento.Pagamento_valor_bruto, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_sub_total[Ô], Replace(Pagamento.Pagamento_sub_total, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_data_pagamento[Ô], Pagamento.Pagamento_data_pagamento)
command.Parameters.AddWithValue([Ô]?Pagamento_irf[Ô], Replace(Pagamento.Pagamento_irf, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_senat[Ô], Replace(Pagamento.Pagamento_senat, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_adiantamento[Ô], Replace(Pagamento.Pagamento_adiantamento, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_sub_total_desconto[Ô], Replace(Pagamento.Pagamento_sub_total_desconto, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_inss_empresa[Ô], Replace(Pagamento.Pagamento_inss_empresa, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_inss[Ô], Replace(Pagamento.Pagamento_inss, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_total[Ô], Replace(Pagamento.Pagamento_total, [Ô],[Ô], [Ô].[Ô]))
command.Parameters.AddWithValue([Ô]?Pagamento_ID_Beneficiario[Ô], Pagamento.Pagamento_ID_Beneficiario)
command.Parameters.AddWithValue([Ô]?Pagamento_ID_Portador[Ô], Pagamento.Pagamento_ID_Portador)
command.ExecuteNonQuery()
command.Dispose()
Conexao.Desconectar1()


Dessa forma ele faz o INSERT normal, ou seja eu tenho que trocar o @ pelo ? nos parametros que funciona normal. Alguém sabe por qual motivo isso acontece?
PIOLHO 04/05/2012 10:27:24
#401358
O caracter padrão utilizado pelo MySqlCommand é esse mesmo ? (interrogação). Para SqlCommand é o @ (arroba).

MySqlCommand
ALTAIR148 04/05/2012 10:29:01
#401359
Então, todo o meu projeto foi utilizado o @, sempre utilizei nunca tive problemas, depois que formatei o pc que começou com esse problema. Ai se eu utilizo o [Ô]?[Ô] ai funciona, mas ai teria que mudar muita coisa no meu projeto.
ALTAIR148 04/05/2012 12:15:15
#401367
Problema simples galera, é que antes da formatação utilizava o conector V.6.5, e após a formatação eu instalei o conector V.5, desinstalei o antigo e referenciei o mais atual e funcionou.

Tópico encerrado , respostas não são mais permitidas