Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
此方法按钮C#中的语法错误?_C#_Ms Access_Syntax Error - Fatal编程技术网

此方法按钮C#中的语法错误?

此方法按钮C#中的语法错误?,c#,ms-access,syntax-error,C#,Ms Access,Syntax Error,我需要你的帮助,我找不到错误,这是紧急情况,这是我的方法 还有一个错误的图像,错误是“syntax error INSERT INTO statement”,这是一个图像,我如何修复它,无论它的结构如何 错误消息很清楚:INSERT INTO语句中出现错误 我没有看到任何SQL语法问题,所以我猜这是关于保留字的,请尝试使用[]转义它们: string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real])

我需要你的帮助,我找不到错误,这是紧急情况,这是我的方法 还有一个错误的图像,错误是“syntax error INSERT INTO statement”,这是一个图像,我如何修复它,无论它的结构如何


错误消息很清楚:INSERT INTO语句中出现错误

我没有看到任何SQL语法问题,所以我猜这是关于保留字的,请尝试使用
[]
转义它们:

string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real]) 
             VALUES(@idProyecto , @idMes , @meta, @real)";
结合Remou对命名参数的观察,它变成:

string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real]) 
             VALUES(?, ?, ?, ?)";

在以正确的顺序添加参数时必须非常小心

错误消息很清楚:INSERT INTO语句出错

我没有看到任何SQL语法问题,所以我猜这是关于保留字的,请尝试使用
[]
转义它们:

string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real]) 
             VALUES(@idProyecto , @idMes , @meta, @real)";
结合Remou对命名参数的观察,它变成:

string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real]) 
             VALUES(?, ?, ?, ?)";

在以正确的顺序添加参数时必须非常小心

由于您使用的是OLEDB provider,因此可能必须为参数使用“?”符号。您可以尝试以下查询:

string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real]) 
         VALUES(?, ? , ?, ?)";

由于您使用的是OLEDB提供程序,因此可能必须使用“?”符号作为参数。您可以尝试以下查询:

string sql = "INSERT INTO IndicadorProyecto (idProyecto, idMes, [meta], [real]) 
         VALUES(?, ? , ?, ?)";

我很确定这些值应该是
值(?,,,?)
您如何进一步解释?您的意思是将部分值更改为值(?,,?,?)我认为remou意味着Access不支持命名参数(如@meta)不是ODBC不支持命名参数吗?上面使用的@David-W-Fenton OLEDB不支持MS Access()的命名参数,但据我所知,它支持SQL Server(),也就是说“Access不支持命名参数”可能不是全部内容,但在这篇文章中发表评论似乎足够合理。我相当确定这些值应该是
values(?,?,?)
您如何进一步解释?您的意思是为values(?,,?,?)更改部分值。我认为remou意味着Access不支持命名参数(像@meta)不是ODBC不支持命名参数吗?@David-W-Fenton OLEDB,上面使用的,不支持MS Access()的命名参数,但据我所知,它支持SQL Server(),也就是说“Access不支持命名参数”"可能不是完整的故事,但对这篇文章的评论来说似乎足够合理。非常感谢它的工作!!,我仍然怀疑如何控制异常?它会显示一条消息:System.NullReferenceException:Object reference未设置为对象的实例。最好将其设为一个新问题。并尝试只发布相关的parts.非常感谢它能工作!!,我仍然怀疑如何控制异常?它会显示一条消息,上面写着:System.NullReferenceException:Object reference未设置为对象的实例。最好将其作为一个新问题。并尝试只发布相关部分。