-1
这是我的代码的一部分,当我运行它它给了我一个错误“Comando.ExecuteNonQuery()”。 对不起,这是出现错误“标准表达式中的数据类型不匹配”的文本。 我将“Direccion as char”更改为String,这就是假定的,我把(')放在values部分。在MI表“标准表达式中的数据类型不匹配”。 VS.NET 2010
Function Agregar_Registro(ByVal Id As String, ByVal Nombre As String, ByVal Direccion As String, ByVal Edad As String) As Boolean
'CONVETIR
Dim COD As Integer = Convert.ToInt32(Id)
'CONEXION (CREA UN TIPO PUENTE DE CONNECCION ENTRE LA BBDD Y LA APLICCION)
Dim Conexion As New OleDbConnection
Conexion.ConnectionString = "provider=Microsoft.ACE.OLEDB.12.0;Data Source = F:\Proyecto Empresa\Proyecto Empresa BBDD\BBDD Maestra.accdb; Persist Security info = false"
Dim CadenaSql As String = "Insert into Personal(id, Nombre, Direccion, Edad) "
CadenaSql = CadenaSql + "VALUES(" & COD & " , "
CadenaSql = CadenaSql + " '" & Nombre & "' , "
CadenaSql = CadenaSql + " '" & Direccion & "' , "
CadenaSql = CadenaSql + " '" & Edad & "') "
Dim Comando As OleDbCommand = Conexion.CreateCommand()
Comando.CommandText = CadenaSql
Conexion.Open()
Comando.ExecuteNonQuery()
Conexion.Close()
Return True
End Function
和MI数据类型有:
ID - Number
Nombre - Text
Direccion - Text
Edad - Number
请[编辑](http://stackoverflow.com/posts/27072910/edit)你的问题补充完整的错误消息;不要简单地说“它给了我一个错误”。此外,请告诉我们您的“个人”表格列的数据类型。 – 2014-11-22 01:14:22
“它给了我一个错误”不是一个问题描述,除非你包含关于你收到什么“错误”的信息。我们没有其他代码或数据库进行测试,所以如果您不提供这些信息,我们无法为您提供帮助。什么是**具体错误**你会得到,包括**确切的错误信息**? – 2014-11-22 01:20:21
好吧,如果Edad是一个数字,传递一个字符串(使用ticks和padding)将导致该错误。使用SQL参数,**不** **打勾 – Plutonix 2014-11-22 01:30:06